Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(175)

Side by Side Diff: chrome/android/javatests/src/org/chromium/chrome/browser/webapps/WebappDeferredStartupTest.java

Issue 2863583002: Convert WebappActivityTestBase and direct children to JUnit4. (Closed)
Patch Set: Updates after feedback Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2017 The Chromium Authors. All rights reserved. 1 // Copyright 2017 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 package org.chromium.chrome.browser.webapps; 5 package org.chromium.chrome.browser.webapps;
6 6
7 import android.support.test.filters.SmallTest; 7 import android.support.test.filters.SmallTest;
8 8
9 import org.junit.Assert;
10 import org.junit.Rule;
11 import org.junit.Test;
12 import org.junit.runner.RunWith;
13
9 import org.chromium.base.test.util.CallbackHelper; 14 import org.chromium.base.test.util.CallbackHelper;
15 import org.chromium.base.test.util.CommandLineFlags;
10 import org.chromium.base.test.util.Feature; 16 import org.chromium.base.test.util.Feature;
17 import org.chromium.chrome.browser.ChromeSwitches;
11 import org.chromium.chrome.browser.DeferredStartupHandler; 18 import org.chromium.chrome.browser.DeferredStartupHandler;
12 import org.chromium.chrome.browser.tab.EmptyTabObserver; 19 import org.chromium.chrome.browser.tab.EmptyTabObserver;
13 import org.chromium.chrome.browser.tab.Tab; 20 import org.chromium.chrome.browser.tab.Tab;
14 import org.chromium.chrome.browser.tabmodel.EmptyTabModelSelectorObserver; 21 import org.chromium.chrome.browser.tabmodel.EmptyTabModelSelectorObserver;
15 import org.chromium.chrome.browser.tabmodel.TabModelSelectorBase; 22 import org.chromium.chrome.browser.tabmodel.TabModelSelectorBase;
23 import org.chromium.chrome.test.ChromeActivityTestRule;
24 import org.chromium.chrome.test.ChromeJUnit4ClassRunner;
16 25
17 /** 26 /**
18 * Tests that when WebappActivity#onDeferredStartup() is run, the activity tab h as finished loading. 27 * Tests that when WebappActivity#onDeferredStartup() is run, the activity tab h as finished loading.
19 */ 28 */
20 public class WebappDeferredStartupTest extends WebappActivityTestBase { 29 @RunWith(ChromeJUnit4ClassRunner.class)
30 @CommandLineFlags.Add({ChromeSwitches.DISABLE_FIRST_RUN_EXPERIENCE,
31 ChromeActivityTestRule.DISABLE_NETWORK_PREDICTION_FLAG})
dominickn 2017/05/05 02:42:49 Question: will these tests run without these flags
32 public class WebappDeferredStartupTest {
21 static class PageLoadFinishedTabObserver extends EmptyTabObserver { 33 static class PageLoadFinishedTabObserver extends EmptyTabObserver {
22 private boolean mIsPageLoadFinished; 34 private boolean mIsPageLoadFinished;
23 35
24 @Override 36 @Override
25 public void onPageLoadFinished(Tab tab) { 37 public void onPageLoadFinished(Tab tab) {
26 mIsPageLoadFinished = true; 38 mIsPageLoadFinished = true;
27 } 39 }
28 40
29 public boolean isPageLoadFinished() { 41 public boolean isPageLoadFinished() {
30 return mIsPageLoadFinished; 42 return mIsPageLoadFinished;
(...skipping 15 matching lines...) Expand all
46 58
47 static class PageIsLoadedDeferredStartupHandler extends DeferredStartupHandl er { 59 static class PageIsLoadedDeferredStartupHandler extends DeferredStartupHandl er {
48 public PageIsLoadedDeferredStartupHandler(PageLoadFinishedTabObserver ob server, 60 public PageIsLoadedDeferredStartupHandler(PageLoadFinishedTabObserver ob server,
49 CallbackHelper helper) { 61 CallbackHelper helper) {
50 mObserver = observer; 62 mObserver = observer;
51 mHelper = helper; 63 mHelper = helper;
52 } 64 }
53 65
54 @Override 66 @Override
55 public void queueDeferredTasksOnIdleHandler() { 67 public void queueDeferredTasksOnIdleHandler() {
56 assertTrue("Page is yet to finish loading.", mObserver.isPageLoadFin ished()); 68 Assert.assertTrue("Page is yet to finish loading.", mObserver.isPage LoadFinished());
57 69
58 mHelper.notifyCalled(); 70 mHelper.notifyCalled();
59 } 71 }
60 72
61 private CallbackHelper mHelper; 73 private CallbackHelper mHelper;
62 private PageLoadFinishedTabObserver mObserver; 74 private PageLoadFinishedTabObserver mObserver;
63 } 75 }
64 76
77 @Rule
78 public final WebappActivityTestRule mActivityTestRule = new WebappActivityTe stRule();
79
80 @Test
65 @SmallTest 81 @SmallTest
66 @Feature({"Webapps"}) 82 @Feature({"Webapps"})
67 public void testPageIsLoadedOnDeferredStartup() throws Exception { 83 public void testPageIsLoadedOnDeferredStartup() throws Exception {
68 PageLoadFinishedTabObserver tabObserver = new PageLoadFinishedTabObserve r(); 84 PageLoadFinishedTabObserver tabObserver = new PageLoadFinishedTabObserve r();
69 TabModelSelectorBase 85 TabModelSelectorBase
70 .setObserverForTests(new NewTabCreatedTabModelSelectorObserver(t abObserver)); 86 .setObserverForTests(new NewTabCreatedTabModelSelectorObserver(t abObserver));
71 CallbackHelper helper = new CallbackHelper(); 87 CallbackHelper helper = new CallbackHelper();
72 PageIsLoadedDeferredStartupHandler handler = new PageIsLoadedDeferredSta rtupHandler( 88 PageIsLoadedDeferredStartupHandler handler = new PageIsLoadedDeferredSta rtupHandler(
73 tabObserver, helper); 89 tabObserver, helper);
74 DeferredStartupHandler.setInstanceForTests(handler); 90 DeferredStartupHandler.setInstanceForTests(handler);
75 startWebappActivity(); 91 mActivityTestRule.startWebappActivity();
76 helper.waitForCallback(0); 92 helper.waitForCallback(0);
77 } 93 }
78 } 94 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698