diff options
-rw-r--r-- | apct-tests/perftests/multiuser/Android.mk | 3 | ||||
-rw-r--r-- | apct-tests/perftests/multiuser/src/android/multiuser/BenchmarkRunner.java | 13 |
2 files changed, 12 insertions, 4 deletions
diff --git a/apct-tests/perftests/multiuser/Android.mk b/apct-tests/perftests/multiuser/Android.mk index e3f7775383bd..2db0dd65b05f 100644 --- a/apct-tests/perftests/multiuser/Android.mk +++ b/apct-tests/perftests/multiuser/Android.mk @@ -20,7 +20,8 @@ LOCAL_MODULE_TAGS := tests LOCAL_SRC_FILES := $(call all-java-files-under, src) LOCAL_STATIC_JAVA_LIBRARIES := \ - android-support-test + android-support-test \ + ub-uiautomator LOCAL_PACKAGE_NAME := MultiUserPerfTests diff --git a/apct-tests/perftests/multiuser/src/android/multiuser/BenchmarkRunner.java b/apct-tests/perftests/multiuser/src/android/multiuser/BenchmarkRunner.java index c7bebf3847fe..629e6f453824 100644 --- a/apct-tests/perftests/multiuser/src/android/multiuser/BenchmarkRunner.java +++ b/apct-tests/perftests/multiuser/src/android/multiuser/BenchmarkRunner.java @@ -17,13 +17,16 @@ package android.multiuser; import android.os.Bundle; import android.os.SystemClock; +import android.support.test.InstrumentationRegistry; +import android.support.test.uiautomator.UiDevice; +import java.io.IOException; import java.util.ArrayList; // Based on //platform/frameworks/base/apct-tests/perftests/utils/BenchmarkState.java public class BenchmarkRunner { - private static long COOL_OFF_PERIOD_MS = 2000; + private static final long COOL_OFF_PERIOD_MS = 1000; private static final int NUM_ITERATIONS = 4; @@ -70,9 +73,13 @@ public class BenchmarkRunner { } private void prepareForNextRun() { - // TODO: Once http://b/63115387 is fixed, look into using "am wait-for-broadcast-idle" - // command instead of waiting for a fixed amount of time. SystemClock.sleep(COOL_OFF_PERIOD_MS); + try { + UiDevice.getInstance(InstrumentationRegistry.getInstrumentation()) + .executeShellCommand("am wait-for-broadcast-idle"); + } catch (IOException e) { + throw new IllegalStateException("Cannot execute shell command", e); + } mStartTimeNs = System.nanoTime(); mPausedDurationNs = 0; } |