Add new version of startUser performance test
Similar to what was done for switchUser, this commit adds a new version of the startUser test. In this variation, a wait for cool down was added in between iterations. Bug: 261621873 Test: atest UserLifecycleTests#startUser_realistic Change-Id: Ia4ff7ed2df7b209175185794eac0cb17630ddc9e
This commit is contained in:
@@ -224,6 +224,32 @@ public class UserLifecycleTests {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Tests starting an uninitialized user, with wait times in between iterations.
|
||||
* Measures the time until ACTION_USER_STARTED is received.
|
||||
*/
|
||||
@Test(timeout = TIMEOUT_MAX_TEST_TIME_MS)
|
||||
public void startUser_realistic() throws RemoteException {
|
||||
while (mRunner.keepRunning()) {
|
||||
mRunner.pauseTiming();
|
||||
final int userId = createUserNoFlags();
|
||||
|
||||
waitForBroadcastIdle();
|
||||
runThenWaitForBroadcasts(userId, () -> {
|
||||
mRunner.resumeTiming();
|
||||
Log.i(TAG, "Starting timer");
|
||||
|
||||
mIam.startUserInBackground(userId);
|
||||
}, Intent.ACTION_USER_STARTED);
|
||||
|
||||
mRunner.pauseTiming();
|
||||
Log.i(TAG, "Stopping timer");
|
||||
removeUser(userId);
|
||||
waitCoolDownPeriod();
|
||||
mRunner.resumeTimingForNextIteration();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Tests starting & unlocking an uninitialized user.
|
||||
* Measures the time until unlock listener is triggered and user is unlocked.
|
||||
|
||||
Reference in New Issue
Block a user