| Index: chrome/android/javatests/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchManagerTest.java
|
| diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchManagerTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchManagerTest.java
|
| index 9259b745fea7bf8f743fde9e125af81f75c42769..6c200881291b75cc0f6e1e609d7e208c821c1983 100644
|
| --- a/chrome/android/javatests/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchManagerTest.java
|
| +++ b/chrome/android/javatests/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchManagerTest.java
|
| @@ -48,6 +48,7 @@ import org.chromium.chrome.browser.tabmodel.TabModelUtils;
|
| import org.chromium.chrome.browser.util.FeatureUtilities;
|
| import org.chromium.chrome.test.ChromeActivityTestCaseBase;
|
| import org.chromium.chrome.test.util.ChromeTabUtils;
|
| +import org.chromium.chrome.test.util.FullscreenTestUtils;
|
| import org.chromium.chrome.test.util.OmniboxTestUtils;
|
| import org.chromium.chrome.test.util.TestHttpServerClient;
|
| import org.chromium.components.navigation_interception.NavigationParams;
|
| @@ -2544,4 +2545,58 @@ public class ContextualSearchManagerTest extends ChromeActivityTestCaseBase<Chro
|
| // Make sure we did not try to trigger translate.
|
| assertFalse(mManager.getRequest().isTranslationForced());
|
| }
|
| +
|
| + /**
|
| + * Tests that Contextual Search works in fullscreen. Specifically, tests that tapping a word
|
| + * peeks the panel, expanding the bar results in the bar ending at the correct spot in the page
|
| + * and tapping the base page closes the panel.
|
| + */
|
| + @SmallTest
|
| + @Feature({"ContextualSearch"})
|
| + @Restriction({RESTRICTION_TYPE_PHONE, RESTRICTION_TYPE_NON_LOW_END_DEVICE})
|
| + public void testTapContentAndExpandPanelInFullscreen()
|
| + throws InterruptedException, TimeoutException {
|
| + // Toggle tab to fulllscreen.
|
| + FullscreenTestUtils.togglePersistentFullscreenAndAssert(getActivity().getActivityTab(),
|
| + true, getActivity());
|
| +
|
| + // Simulate a tap and assert that the panel peeks.
|
| + simulateTapSearch("search");
|
| +
|
| + // Expand the panel and assert that it ends up in the right place.
|
| + tapPeekingBarToExpandAndAssert();
|
| + assertEquals(mManager.getContextualSearchPanel().getHeight(),
|
| + mManager.getContextualSearchPanel().getPanelHeightFromState(PanelState.EXPANDED));
|
| +
|
| + // Tap the base page and assert that the panel is closed.
|
| + tapBasePageToClosePanel();
|
| + }
|
| +
|
| + /**
|
| + * Tests that the Contextual Search panel is dismissed when entering or exiting fullscreen.
|
| + */
|
| + @SmallTest
|
| + @Feature({"ContextualSearch"})
|
| + @Restriction({RESTRICTION_TYPE_NON_LOW_END_DEVICE})
|
| + public void testPanelDismissedOnToggleFullscreen()
|
| + throws InterruptedException, TimeoutException {
|
| + // Simulate a tap and assert that the panel peeks.
|
| + simulateTapSearch("search");
|
| +
|
| + // Toggle tab to fullscreen.
|
| + Tab tab = getActivity().getActivityTab();
|
| + FullscreenTestUtils.togglePersistentFullscreenAndAssert(tab, true, getActivity());
|
| +
|
| + // Assert that the panel is closed.
|
| + waitForPanelToClose();
|
| +
|
| + // Simulate a tap and assert that the panel peeks.
|
| + simulateTapSearch("search");
|
| +
|
| + // Toggle tab to non-fullscreen.
|
| + FullscreenTestUtils.togglePersistentFullscreenAndAssert(tab, false, getActivity());
|
| +
|
| + // Assert that the panel is closed.
|
| + waitForPanelToClose();
|
| + }
|
| }
|
|
|