diff options
-rw-r--r-- | apct-tests/perftests/multiuser/src/android/multiuser/UserLifecycleTests.java | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/apct-tests/perftests/multiuser/src/android/multiuser/UserLifecycleTests.java b/apct-tests/perftests/multiuser/src/android/multiuser/UserLifecycleTests.java index ee4e1e43c8e6..e2ef7a11b3a0 100644 --- a/apct-tests/perftests/multiuser/src/android/multiuser/UserLifecycleTests.java +++ b/apct-tests/perftests/multiuser/src/android/multiuser/UserLifecycleTests.java @@ -326,6 +326,34 @@ public class UserLifecycleTests { } } + /** + * Tests starting (unlocking) and launching a previously-launched app + * in an already-created, but no-longer-running, profile. + * A sort of combination of {@link #managedProfileUnlockAndLaunchApp} and + * {@link #managedProfileUnlock_stopped}}. + */ + @Test + public void managedProfileUnlockAndLaunchApp_stopped() throws Exception { + while (mRunner.keepRunning()) { + mRunner.pauseTiming(); + final int userId = createManagedProfile(); + WindowManagerGlobal.getWindowManagerService().dismissKeyguard(null, null); + installPreexistingApp(userId, DUMMY_PACKAGE_NAME); + startUserInBackground(userId); + startApp(userId, DUMMY_PACKAGE_NAME); + stopUser(userId, true); + TimeUnit.SECONDS.sleep(1); // Brief cool-down before re-starting profile. + mRunner.resumeTiming(); + + startUserInBackground(userId); + startApp(userId, DUMMY_PACKAGE_NAME); + + mRunner.pauseTiming(); + removeUser(userId); + mRunner.resumeTiming(); + } + } + /** Tests installing a pre-existing app in a newly-created profile. */ @Test public void managedProfileInstall() throws Exception { |