@SmallTest
public void testFinishAndRemoveTask() throws InterruptedException {
MockActivity activity = new MockActivity();
ApiCompatibilityUtils.finishAndRemoveTask(activity);
if (Build.VERSION.SDK_INT > Build.VERSION_CODES.LOLLIPOP) {
assertEquals(1, activity.mFinishAndRemoveTaskCallbackCount);
assertEquals(0, activity.mFinishCallbackCount);
} else if (Build.VERSION.SDK_INT == Build.VERSION_CODES.LOLLIPOP) {
long startTime = SystemClock.uptimeMillis();
while (activity.mFinishCallbackCount == 0
&& SystemClock.uptimeMillis() - startTime < WAIT_TIMEOUT_IN_MS) {
Thread.sleep(SLEEP_INTERVAL_IN_MS);
}
// MockActivity#finishAndRemoveTask() never sets isFinishing() to true for LOLLIPOP to
// simulate an exceptional case. In that case, MockActivity#finish() should be called
// after 3 tries.
assertEquals(3, activity.mFinishAndRemoveTaskCallbackCount);
assertEquals(1, activity.mFinishCallbackCount);
} else {
assertEquals(0, activity.mFinishAndRemoveTaskCallbackCount);
assertEquals(1, activity.mFinishCallbackCount);
}
assertTrue(activity.mIsFinishing);
}
ApiCompatibilityUtilsTest.java 文件源码
java
阅读 20
收藏 0
点赞 0
评论 0
项目:chromium-net-for-android
作者:
评论列表
文章目录