Index: chrome/android/javatests/src/org/chromium/chrome/browser/webapps/WebApkUpdateDataFetcherTest.java |
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/webapps/WebApkUpdateDataFetcherTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/webapps/WebApkUpdateDataFetcherTest.java |
index a55517a86e2ddf68dd3dc2c6697dc59f74bf95b0..0dac49310907d0540ec084220f35a0b27bdd1ed8 100644 |
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/webapps/WebApkUpdateDataFetcherTest.java |
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/webapps/WebApkUpdateDataFetcherTest.java |
@@ -5,14 +5,26 @@ |
package org.chromium.chrome.browser.webapps; |
import android.content.Context; |
+import android.support.test.InstrumentationRegistry; |
import android.support.test.filters.MediumTest; |
+import org.junit.After; |
+import org.junit.Assert; |
+import org.junit.Before; |
+import org.junit.Rule; |
+import org.junit.Test; |
+import org.junit.runner.RunWith; |
+ |
import org.chromium.base.ThreadUtils; |
import org.chromium.base.test.util.CallbackHelper; |
+import org.chromium.base.test.util.CommandLineFlags; |
import org.chromium.base.test.util.Feature; |
import org.chromium.base.test.util.RetryOnFailure; |
+import org.chromium.chrome.browser.ChromeSwitches; |
import org.chromium.chrome.browser.tab.Tab; |
-import org.chromium.chrome.test.ChromeTabbedActivityTestBase; |
+import org.chromium.chrome.test.ChromeActivityTestRule; |
+import org.chromium.chrome.test.ChromeJUnit4ClassRunner; |
+import org.chromium.chrome.test.ChromeTabbedActivityTestRule; |
import org.chromium.chrome.test.util.browser.TabLoadObserver; |
import org.chromium.chrome.test.util.browser.WebappTestPage; |
import org.chromium.net.test.EmbeddedTestServer; |
@@ -22,7 +34,14 @@ import java.util.HashMap; |
/** |
* Tests the WebApkUpdateDataFetcher. |
*/ |
-public class WebApkUpdateDataFetcherTest extends ChromeTabbedActivityTestBase { |
+@RunWith(ChromeJUnit4ClassRunner.class) |
+@CommandLineFlags.Add({ |
+ ChromeSwitches.DISABLE_FIRST_RUN_EXPERIENCE, |
+ ChromeActivityTestRule.DISABLE_NETWORK_PREDICTION_FLAG, |
+}) |
+public class WebApkUpdateDataFetcherTest { |
+ @Rule |
+ public ChromeTabbedActivityTestRule mActivityTestRule = new ChromeTabbedActivityTestRule(); |
private static final String WEB_MANIFEST_URL1 = "/chrome/test/data/banners/manifest.json"; |
// Name for Web Manifest at {@link WEB_MANIFEST_URL1}. |
@@ -62,7 +81,7 @@ public class WebApkUpdateDataFetcherTest extends ChromeTabbedActivityTestBase { |
@Override |
public void onGotManifestData(WebApkInfo fetchedInfo, String bestIconUrl) { |
- assertNull(mName); |
+ Assert.assertNull(mName); |
mWebApkCompatible = true; |
mName = fetchedInfo.name(); |
mBestIconMurmur2Hash = fetchedInfo.iconUrlToMurmur2HashMap().get(bestIconUrl); |
@@ -82,23 +101,17 @@ public class WebApkUpdateDataFetcherTest extends ChromeTabbedActivityTestBase { |
} |
} |
- @Override |
- protected void setUp() throws Exception { |
- super.setUp(); |
- Context context = getInstrumentation().getTargetContext(); |
+ @Before |
+ public void setUp() throws Exception { |
+ mActivityTestRule.startMainActivityOnBlankPage(); |
+ Context context = InstrumentationRegistry.getInstrumentation().getTargetContext(); |
mTestServer = EmbeddedTestServer.createAndStartServer(context); |
- mTab = getActivity().getActivityTab(); |
+ mTab = mActivityTestRule.getActivity().getActivityTab(); |
} |
- @Override |
- protected void tearDown() throws Exception { |
+ @After |
+ public void tearDown() throws Exception { |
mTestServer.stopAndDestroyServer(); |
- super.tearDown(); |
- } |
- |
- @Override |
- public void startMainActivity() throws InterruptedException { |
- startMainActivityOnBlankPage(); |
} |
/** Creates and starts a WebApkUpdateDataFetcher. */ |
@@ -119,6 +132,7 @@ public class WebApkUpdateDataFetcherTest extends ChromeTabbedActivityTestBase { |
/** |
* Test starting WebApkUpdateDataFetcher while a page with the desired manifest URL is loading. |
*/ |
+ @Test |
@MediumTest |
@Feature({"WebApk"}) |
public void testLaunchWithDesiredManifestUrl() throws Exception { |
@@ -130,8 +144,8 @@ public class WebApkUpdateDataFetcherTest extends ChromeTabbedActivityTestBase { |
mTestServer.getURL(WEB_MANIFEST_URL1), waiter); |
waiter.waitForCallback(0); |
- assertTrue(waiter.isWebApkCompatible()); |
- assertEquals(WEB_MANIFEST_NAME1, waiter.name()); |
+ Assert.assertTrue(waiter.isWebApkCompatible()); |
+ Assert.assertEquals(WEB_MANIFEST_NAME1, waiter.name()); |
} |
/** |
@@ -139,6 +153,7 @@ public class WebApkUpdateDataFetcherTest extends ChromeTabbedActivityTestBase { |
* ManifestUpgradeDetectorFetcher is looking for. Check that the callback is only called once |
* the user navigates to a page which uses the desired manifest URL. |
*/ |
+ @Test |
@MediumTest |
@Feature({"Webapps"}) |
@RetryOnFailure |
@@ -150,19 +165,20 @@ public class WebApkUpdateDataFetcherTest extends ChromeTabbedActivityTestBase { |
startWebApkUpdateDataFetcher(mTestServer.getURL(WEB_MANIFEST_SCOPE), |
mTestServer.getURL(WEB_MANIFEST_URL2), waiter); |
waiter.waitForCallback(0); |
- assertFalse(waiter.isWebApkCompatible()); |
+ Assert.assertFalse(waiter.isWebApkCompatible()); |
WebappTestPage.navigateToPageWithServiceWorkerAndManifest( |
mTestServer, mTab, WEB_MANIFEST_URL2); |
waiter.waitForCallback(1); |
- assertTrue(waiter.isWebApkCompatible()); |
- assertEquals(WEB_MANIFEST_NAME2, waiter.name()); |
+ Assert.assertTrue(waiter.isWebApkCompatible()); |
+ Assert.assertEquals(WEB_MANIFEST_NAME2, waiter.name()); |
} |
/** |
* Test that {@link onWebManifestForInitialUrlNotWebApkCompatible()} is called after attempting |
* to fetch Web Manifest for page with no Web Manifest. |
*/ |
+ @Test |
@MediumTest |
@Feature({"Webapps"}) |
public void testNoWebManifest() throws Exception { |
@@ -173,13 +189,14 @@ public class WebApkUpdateDataFetcherTest extends ChromeTabbedActivityTestBase { |
startWebApkUpdateDataFetcher(mTestServer.getURL(WEB_MANIFEST_SCOPE), |
mTestServer.getURL(WEB_MANIFEST_URL2), waiter); |
waiter.waitForCallback(0); |
- assertFalse(waiter.isWebApkCompatible()); |
+ Assert.assertFalse(waiter.isWebApkCompatible()); |
} |
/** |
* Test that large icon murmur2 hashes are correctly plumbed to Java. The hash can take on |
* values up to 2^64 - 1 which is greater than {@link Long#MAX_VALUE}. |
*/ |
+ @Test |
@MediumTest |
@Feature({"Webapps"}) |
public void testLargeIconMurmur2Hash() throws Exception { |
@@ -191,6 +208,6 @@ public class WebApkUpdateDataFetcherTest extends ChromeTabbedActivityTestBase { |
mTestServer.getURL(WEB_MANIFEST_WITH_LONG_ICON_MURMUR2_HASH), waiter); |
waiter.waitForCallback(0); |
- assertEquals(LONG_ICON_MURMUR2_HASH, waiter.bestIconMurmur2Hash()); |
+ Assert.assertEquals(LONG_ICON_MURMUR2_HASH, waiter.bestIconMurmur2Hash()); |
} |
} |