From 57561e7e7e5e92f818db6eaea5819441e09d91f0 Mon Sep 17 00:00:00 2001 From: Andy Yu Date: Thu, 22 Jun 2023 13:03:49 -0700 Subject: [PATCH] Add sleep time to start TestActivity To eliminate flakiness in GameSessionTrampolineActivityTest, we add sleep time to wait the actvity to be fully launched. Bug: 245615459 Test: abtd result https://android-build.googleplex.com/builds/abtd/run/L15600000961510101 Change-Id: I33016f439b7d4d48a4a050ecfdff68a8b7e5800e --- .../games/GameSessionTrampolineActivityTest.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/services/tests/mockingservicestests/src/android/service/games/GameSessionTrampolineActivityTest.java b/services/tests/mockingservicestests/src/android/service/games/GameSessionTrampolineActivityTest.java index 353341ed29857..82e02ca12296a 100644 --- a/services/tests/mockingservicestests/src/android/service/games/GameSessionTrampolineActivityTest.java +++ b/services/tests/mockingservicestests/src/android/service/games/GameSessionTrampolineActivityTest.java @@ -47,11 +47,14 @@ import androidx.test.filters.SmallTest; import com.android.internal.infra.AndroidFuture; +import com.google.common.util.concurrent.Uninterruptibles; + import org.junit.After; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; +import java.time.Duration; import java.util.concurrent.TimeUnit; /** @@ -62,6 +65,8 @@ import java.util.concurrent.TimeUnit; @Presubmit public class GameSessionTrampolineActivityTest { + private static final Duration TEST_ACTIVITY_OPEN_DURATION = Duration.ofSeconds(5); + @Before public void setUp() { setAlwaysFinishActivities(false); @@ -145,10 +150,15 @@ public class GameSessionTrampolineActivityTest { startTestActivityViaGameSessionTrampolineActivity() { Intent testActivityIntent = new Intent(); testActivityIntent.setClass(getInstrumentation().getTargetContext(), TestActivity.class); + sleep(TEST_ACTIVITY_OPEN_DURATION); return startGameSessionTrampolineActivity(testActivityIntent); } + private static void sleep(Duration sleepDuration) { + Uninterruptibles.sleepUninterruptibly(sleepDuration.toMillis(), TimeUnit.MILLISECONDS); + } + private static AndroidFuture startGameSessionTrampolineActivity( Intent targetIntent) { AndroidFuture resultFuture = new AndroidFuture<>();