ApiCompatibilityUtilsTest.java 文件源码

java
阅读 20 收藏 0 点赞 0 评论 0

项目:chromium-net-for-android 作者:
@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);
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号