| Index: chrome/android/javatests/src/org/chromium/chrome/browser/offlinepages/OfflinePageSavePageLaterEvaluationTest.java
|
| diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/offlinepages/OfflinePageSavePageLaterEvaluationTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/offlinepages/OfflinePageSavePageLaterEvaluationTest.java
|
| index 80d445034d13ab082904f2f09b91ca3881c1af05..0a9240f53024700f882453e9e680854a3d2d604c 100644
|
| --- a/chrome/android/javatests/src/org/chromium/chrome/browser/offlinepages/OfflinePageSavePageLaterEvaluationTest.java
|
| +++ b/chrome/android/javatests/src/org/chromium/chrome/browser/offlinepages/OfflinePageSavePageLaterEvaluationTest.java
|
| @@ -9,13 +9,6 @@
|
| import android.os.Environment;
|
| import android.text.TextUtils;
|
| import android.util.LongSparseArray;
|
| -
|
| -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.Callback;
|
| import org.chromium.base.ContextUtils;
|
| @@ -25,12 +18,10 @@
|
| import org.chromium.base.test.util.Manual;
|
| import org.chromium.base.test.util.TimeoutScale;
|
| import org.chromium.chrome.browser.ChromeActivity;
|
| -import org.chromium.chrome.browser.ChromeSwitches;
|
| import org.chromium.chrome.browser.offlinepages.evaluation.OfflinePageEvaluationBridge;
|
| import org.chromium.chrome.browser.offlinepages.evaluation.OfflinePageEvaluationBridge.OfflinePageEvaluationObserver;
|
| import org.chromium.chrome.browser.profiles.Profile;
|
| -import org.chromium.chrome.test.ChromeActivityTestRule;
|
| -import org.chromium.chrome.test.ChromeJUnit4ClassRunner;
|
| +import org.chromium.chrome.test.ChromeActivityTestCaseBase;
|
| import org.chromium.components.offlinepages.BackgroundSavePageResult;
|
|
|
| import java.io.BufferedReader;
|
| @@ -42,6 +33,7 @@
|
| import java.io.IOException;
|
| import java.io.InputStream;
|
| import java.io.OutputStreamWriter;
|
| +
|
| import java.util.ArrayList;
|
| import java.util.List;
|
| import java.util.Properties;
|
| @@ -55,19 +47,12 @@
|
| * record metrics (failure rate, time elapsed etc.) by writing metrics to a file on external
|
| * storage. This will always use prerenderer.
|
| */
|
| -@RunWith(ChromeJUnit4ClassRunner.class)
|
| -@CommandLineFlags.Add({"disable-features=BackgroundLoader",
|
| - ChromeSwitches.DISABLE_FIRST_RUN_EXPERIENCE,
|
| - ChromeActivityTestRule.DISABLE_NETWORK_PREDICTION_FLAG})
|
| -public class OfflinePageSavePageLaterEvaluationTest {
|
| +@CommandLineFlags.Add({"disable-features=BackgroundLoader"})
|
| +public class OfflinePageSavePageLaterEvaluationTest
|
| + extends ChromeActivityTestCaseBase<ChromeActivity> {
|
| /**
|
| * Class which is used to calculate time difference.
|
| */
|
| -
|
| - @Rule
|
| - public ChromeActivityTestRule<ChromeActivity> mActivityTestRule =
|
| - new ChromeActivityTestRule<>(ChromeActivity.class);
|
| -
|
| static class TimeDelta {
|
| public void setStartTime(Long startTime) {
|
| mStartTime = startTime;
|
| @@ -118,15 +103,19 @@
|
|
|
| private LongSparseArray<RequestMetadata> mRequestMetadata;
|
|
|
| - @Before
|
| - public void setUp() throws Exception {
|
| - mActivityTestRule.startMainActivityOnBlankPage();
|
| + public OfflinePageSavePageLaterEvaluationTest() {
|
| + super(ChromeActivity.class);
|
| + }
|
| +
|
| + @Override
|
| + protected void setUp() throws Exception {
|
| + super.setUp();
|
| mRequestMetadata = new LongSparseArray<RequestMetadata>();
|
| mCount = 0;
|
| }
|
|
|
| - @After
|
| - public void tearDown() throws Exception {
|
| + @Override
|
| + protected void tearDown() throws Exception {
|
| NotificationManager notificationManager =
|
| (NotificationManager) ContextUtils.getApplicationContext().getSystemService(
|
| Context.NOTIFICATION_SERVICE);
|
| @@ -157,6 +146,12 @@
|
| "Timed out when clearing remaining requests!");
|
| mBridge.closeLog();
|
| mBridge.destroy();
|
| + super.tearDown();
|
| + }
|
| +
|
| + @Override
|
| + public void startMainActivity() throws InterruptedException {
|
| + startMainActivityOnBlankPage();
|
| }
|
|
|
| /**
|
| @@ -217,7 +212,7 @@
|
| private void checkTrue(boolean condition, String message) {
|
| if (!condition) {
|
| log(TAG, message);
|
| - Assert.fail();
|
| + fail();
|
| }
|
| }
|
|
|
| @@ -237,7 +232,7 @@
|
| mBridge = new OfflinePageEvaluationBridge(
|
| profile, useTestingScheduler, useBackgroundLoader);
|
| if (mBridge == null) {
|
| - Assert.fail("OfflinePageEvaluationBridge initialization failed!");
|
| + fail("OfflinePageEvaluationBridge initialization failed!");
|
| return;
|
| }
|
| if (mBridge.isOfflinePageModelLoaded()) {
|
| @@ -337,7 +332,7 @@
|
|
|
| private void processUrls(List<String> urls) throws InterruptedException, IOException {
|
| if (mBridge == null) {
|
| - Assert.fail("Test initialization error, aborting. No results would be written.");
|
| + fail("Test initialization error, aborting. No results would be written.");
|
| return;
|
| }
|
| int count = 0;
|
| @@ -374,7 +369,7 @@
|
| }
|
| } catch (FileNotFoundException e) {
|
| Log.e(TAG, e.getMessage(), e);
|
| - Assert.fail(String.format("URL file %s is not found.", inputFilePath));
|
| + fail(String.format("URL file %s is not found.", inputFilePath));
|
| }
|
| }
|
|
|
| @@ -502,11 +497,11 @@
|
| Boolean.parseBoolean(properties.getProperty("UseBackgroundLoader"));
|
| } catch (FileNotFoundException e) {
|
| Log.e(TAG, e.getMessage(), e);
|
| - Assert.fail(String.format(
|
| + fail(String.format(
|
| "Config file %s is not found, aborting the test.", CONFIG_FILE_PATH));
|
| } catch (NumberFormatException e) {
|
| Log.e(TAG, e.getMessage(), e);
|
| - Assert.fail("Error parsing config file, aborting test.");
|
| + fail("Error parsing config file, aborting test.");
|
| } finally {
|
| if (inputStream != null) {
|
| inputStream.close();
|
| @@ -523,10 +518,10 @@
|
| * immediate processing also works on svelte devices. This flag will *not* affect normal
|
| * devices.
|
| */
|
| - @Test
|
| @Manual
|
| @TimeoutScale(4)
|
| - @CommandLineFlags.Add({"enable-features=OfflinePagesSvelteConcurrentLoading"})
|
| + @CommandLineFlags
|
| + .Add({"enable-features=OfflinePagesSvelteConcurrentLoading"})
|
| @CommandLineFlags.Remove({"disable-features=OfflinePagesSvelteConcurrentLoading"})
|
| public void testFailureRate() throws IOException, InterruptedException {
|
| parseConfigFile();
|
| @@ -540,12 +535,12 @@
|
| * immediate processing also works on svelte devices. This flag will *not* affect normal
|
| * devices.
|
| */
|
| - @Test
|
| @Manual
|
| @TimeoutScale(4)
|
| - @CommandLineFlags.Add({"enable-features=BackgroundLoaderOfflinePagesSvelteConcurrentLoading"})
|
| - @CommandLineFlags.Remove({
|
| - "disable-features=BackgroundLoaderOfflinePagesSvelteConcurrentLoading"})
|
| + @CommandLineFlags
|
| + .Add({"enable-features=BackgroundLoader,OfflinePagesSvelteConcurrentLoading"})
|
| + @CommandLineFlags
|
| + .Remove({"disable-features=BackgroundLoader,OfflinePagesSvelteConcurrentLoading"})
|
| public void testBackgroundLoaderFailureRate() throws IOException, InterruptedException {
|
| testFailureRate();
|
| }
|
|
|