| Index: chrome/android/javatests/src/org/chromium/chrome/browser/dom_distiller/DistillabilityServiceTest.java
|
| diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/dom_distiller/DistillabilityServiceTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/dom_distiller/DistillabilityServiceTest.java
|
| index 8a780b43b9239574c31ae5a61b8ad806d50b6d3a..e3495269ee60779ee6f8136df8e5dce0eda121db 100644
|
| --- a/chrome/android/javatests/src/org/chromium/chrome/browser/dom_distiller/DistillabilityServiceTest.java
|
| +++ b/chrome/android/javatests/src/org/chromium/chrome/browser/dom_distiller/DistillabilityServiceTest.java
|
| @@ -6,12 +6,16 @@ package org.chromium.chrome.browser.dom_distiller;
|
|
|
| import android.support.test.filters.MediumTest;
|
|
|
| +import org.chromium.base.test.util.CallbackHelper;
|
| import org.chromium.base.test.util.CommandLineFlags;
|
| -import org.chromium.base.test.util.DisabledTest;
|
| import org.chromium.base.test.util.Feature;
|
| import org.chromium.base.test.util.Restriction;
|
| import org.chromium.chrome.browser.ChromeActivity;
|
| -import org.chromium.chrome.browser.compositor.bottombar.readermode.ReaderModePanel;
|
| +import org.chromium.chrome.browser.infobar.InfoBar;
|
| +import org.chromium.chrome.browser.infobar.InfoBarContainer;
|
| +import org.chromium.chrome.browser.infobar.InfoBarContainer.InfoBarContainerObserver;
|
| +import org.chromium.chrome.browser.infobar.ReaderModeInfoBar;
|
| +import org.chromium.chrome.browser.tab.Tab;
|
| import org.chromium.chrome.test.ChromeActivityTestCaseBase;
|
| import org.chromium.chrome.test.util.ChromeRestriction;
|
| import org.chromium.content.browser.test.util.TestCallbackHelperContainer.OnPageFinishedHelper;
|
| @@ -43,14 +47,28 @@ public class DistillabilityServiceTest extends ChromeActivityTestCaseBase<Chrome
|
| @Feature({"Distillability-Service"})
|
| @MediumTest
|
| @Restriction(ChromeRestriction.RESTRICTION_TYPE_PHONE)
|
| - @DisabledTest
|
| public void testServiceAliveAfterNativePage()
|
| throws InterruptedException, TimeoutException {
|
|
|
| EmbeddedTestServer testServer = EmbeddedTestServer.createAndStartServer(
|
| getInstrumentation().getContext());
|
|
|
| - final ReaderModePanel panel = getActivity().getReaderModeManager().getPanelForTesting();
|
| + final CallbackHelper readerShownCallbackHelper = new CallbackHelper();
|
| +
|
| + Tab tab = getActivity().getActivityTab();
|
| + tab.getInfoBarContainer().addObserver(new InfoBarContainerObserver() {
|
| + @Override
|
| + public void onAddInfoBar(InfoBarContainer container, InfoBar infoBar, boolean isFirst) {
|
| + if (infoBar instanceof ReaderModeInfoBar) readerShownCallbackHelper.notifyCalled();
|
| + }
|
| +
|
| + @Override
|
| + public void onRemoveInfoBar(
|
| + InfoBarContainer container, InfoBar infoBar, boolean isLast) {}
|
| +
|
| + @Override
|
| + public void onInfoBarContainerAttachedToWindow(boolean hasInfobars) {}
|
| + });
|
|
|
| TestWebContentsObserver observer =
|
| new TestWebContentsObserver(getActivity().getActivityTab().getWebContents());
|
| @@ -60,12 +78,12 @@ public class DistillabilityServiceTest extends ChromeActivityTestCaseBase<Chrome
|
| int curCallCount = finishHelper.getCallCount();
|
| loadUrl("chrome://history");
|
| finishHelper.waitForCallback(curCallCount, 1);
|
| - assertFalse(panel.isShowing());
|
| + assertEquals(0, readerShownCallbackHelper.getCallCount());
|
|
|
| // Navigate to a normal page.
|
| - curCallCount = finishHelper.getCallCount();
|
| + curCallCount = readerShownCallbackHelper.getCallCount();
|
| loadUrl(testServer.getURL(TEST_PAGE));
|
| - finishHelper.waitForCallback(curCallCount, 1);
|
| - assertTrue(panel.isShowing());
|
| + readerShownCallbackHelper.waitForCallback(curCallCount, 1);
|
| + assertEquals(1, readerShownCallbackHelper.getCallCount());
|
| }
|
| }
|
|
|