diff options
author | TreeHugger Robot <treehugger-gerrit@google.com> | 2019-04-03 22:03:51 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2019-04-03 22:03:51 +0000 |
commit | 117d17b96f8102076564f369b6d8c55ab2d0cdb2 (patch) | |
tree | d0f21f887c6bcf88e71725863784e3e25f22b7d5 | |
parent | 1a07f6411b2e7fd0a17737aea5d963c4022a05fe (diff) | |
parent | 57908d9f2eff5b1e86d65d6bc556c90e7757c84a (diff) | |
download | android_frameworks_base-117d17b96f8102076564f369b6d8c55ab2d0cdb2.tar.gz android_frameworks_base-117d17b96f8102076564f369b6d8c55ab2d0cdb2.tar.bz2 android_frameworks_base-117d17b96f8102076564f369b6d8c55ab2d0cdb2.zip |
Merge "MultiUserPerfTest - test restart profile"
-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 7e7b87137ff..c121bd9caa5 100644 --- a/apct-tests/perftests/multiuser/src/android/multiuser/UserLifecycleTests.java +++ b/apct-tests/perftests/multiuser/src/android/multiuser/UserLifecycleTests.java @@ -230,6 +230,34 @@ public class UserLifecycleTests { } } + /** Tests starting an already-created, but no-longer-running, profile. */ + @Test + public void managedProfileUnlock_stopped() throws Exception { + while (mRunner.keepRunning()) { + mRunner.pauseTiming(); + final UserInfo userInfo = mUm.createProfileForUser("TestUser", + UserInfo.FLAG_MANAGED_PROFILE, mAm.getCurrentUser()); + // Start the profile initially, then stop it. Similar to setQuietModeEnabled. + final CountDownLatch latch1 = new CountDownLatch(1); + registerBroadcastReceiver(Intent.ACTION_USER_UNLOCKED, latch1, userInfo.id); + mIam.startUserInBackground(userInfo.id); + latch1.await(TIMEOUT_IN_SECOND, TimeUnit.SECONDS); + stopUser(userInfo.id, true); + + // Now we restart the profile. + final CountDownLatch latch2 = new CountDownLatch(1); + registerBroadcastReceiver(Intent.ACTION_USER_UNLOCKED, latch2, userInfo.id); + mRunner.resumeTiming(); + + mIam.startUserInBackground(userInfo.id); + latch2.await(TIMEOUT_IN_SECOND, TimeUnit.SECONDS); + + mRunner.pauseTiming(); + removeUser(userInfo.id); + mRunner.resumeTiming(); + } + } + @Test public void ephemeralUserStopped() throws Exception { while (mRunner.keepRunning()) { |