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

Side by Side Diff: chrome/android/javatests/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchManagerTest.java

Issue 2211353002: [TTS] Gather surrounding text on Tap before any UX. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Removed unused code and consolidated two functions, updated comments. Created 4 years, 3 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
« no previous file with comments | « chrome/android/java_sources.gni ('k') | chrome/browser/BUILD.gn » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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.contextualsearch; 5 package org.chromium.chrome.browser.contextualsearch;
6 6
7 import static org.chromium.base.test.util.Restriction.RESTRICTION_TYPE_NON_LOW_E ND_DEVICE; 7 import static org.chromium.base.test.util.Restriction.RESTRICTION_TYPE_NON_LOW_E ND_DEVICE;
8 import static org.chromium.content.browser.test.util.CriteriaHelper.DEFAULT_POLL ING_INTERVAL; 8 import static org.chromium.content.browser.test.util.CriteriaHelper.DEFAULT_POLL ING_INTERVAL;
9 9
10 import android.app.Activity; 10 import android.app.Activity;
(...skipping 788 matching lines...) Expand 10 before | Expand all | Expand 10 after
799 799
800 /** 800 /**
801 * Scrolls the base page. 801 * Scrolls the base page.
802 */ 802 */
803 private void scrollBasePage() { 803 private void scrollBasePage() {
804 // TODO(pedrosimonetti): Consider using a swipe method instead. 804 // TODO(pedrosimonetti): Consider using a swipe method instead.
805 fling(0.f, 0.75f, 0.f, 0.7f, 100); 805 fling(0.f, 0.75f, 0.f, 0.7f, 100);
806 } 806 }
807 807
808 /** 808 /**
809 * Taps the base page near the top. 809 * Click to cause the panel to show, tap the Bar to expand, then close.
810 */
811 private void tapBasePageToClosePanel() throws InterruptedException {
812 // TODO(pedrosimonetti): This is not reliable. Find a better approach.
813 // We use the far right side (x == 0.9f) to prevent simulating a tap on top of an
814 // existing long-press selection (the pins are a tap target). This might not work on RTL.
815 // We are using y == 0.35f because otherwise it will fail for long press cases.
816 // It might be better to get the position of the Panel and tap just abou t outside
817 // the Panel. I suspect some Flaky tests are caused by this problem (one s involving
818 // long press and trying to close with the bar peeking, with a long pres s selection
819 // established).
820 tapBasePage(0.9f, 0.35f);
821 waitForPanelToClose();
822 }
823
824 /**
825 * Taps the base page at the given x, y position.
826 */
827 private void tapBasePage(float x, float y) {
828 View root = getActivity().getWindow().getDecorView().getRootView();
829 x *= root.getWidth();
830 y *= root.getHeight();
831 TouchCommon.singleClickView(root, (int) x, (int) y);
832 }
833
834 /**
835 * Click various places to cause the panel to show, expand, then close.
836 */ 810 */
837 private void clickToExpandAndClosePanel() throws InterruptedException, Timeo utException { 811 private void clickToExpandAndClosePanel() throws InterruptedException, Timeo utException {
838 clickWordNode("states"); 812 clickWordNode("states");
839 tapBarToExpandAndClosePanel(); 813 tapPeekingBarToExpandAndAssert();
814 closePanel();
840 waitForSelectionDissolved(); 815 waitForSelectionDissolved();
841 } 816 }
842 817
843 /** 818 /**
844 * Tap on the peeking Bar to expand the panel, then taps on the base page to close it.
845 */
846 private void tapBarToExpandAndClosePanel() throws InterruptedException {
847 tapPeekingBarToExpandAndAssert();
848 tapBasePageToClosePanel();
849 }
850
851 /**
852 * Generate a click in the panel's bar. 819 * Generate a click in the panel's bar.
853 * TODO(donnd): Replace this method with panelBarClick since this appears to be unreliable. 820 * TODO(donnd): Replace this method with panelBarClick since this appears to be unreliable.
854 * @barHeight The vertical position where the click should take place as a p ercentage 821 * @barHeight The vertical position where the click should take place as a p ercentage
855 * of the screen size. 822 * of the screen size.
856 */ 823 */
857 private void clickPanelBar(float barPositionVertical) { 824 private void clickPanelBar(float barPositionVertical) {
858 View root = getActivity().getWindow().getDecorView().getRootView(); 825 View root = getActivity().getWindow().getDecorView().getRootView();
859 float w = root.getWidth(); 826 float w = root.getWidth();
860 float h = root.getHeight(); 827 float h = root.getHeight();
861 float tapX = w / 2f; 828 float tapX = w / 2f;
(...skipping 241 matching lines...) Expand 10 before | Expand all | Expand 10 after
1103 1070
1104 waitForPanelToPeek(); 1071 waitForPanelToPeek();
1105 assertLoadedNoUrl(); 1072 assertLoadedNoUrl();
1106 assertNoContentViewCore(); 1073 assertNoContentViewCore();
1107 flingPanelUp(); 1074 flingPanelUp();
1108 waitForPanelToExpand(); 1075 waitForPanelToExpand();
1109 assertContentViewCoreCreated(); 1076 assertContentViewCoreCreated();
1110 assertLoadedNormalPriorityUrl(); 1077 assertLoadedNormalPriorityUrl();
1111 assertEquals(1, mFakeServer.getLoadedUrlCount()); 1078 assertEquals(1, mFakeServer.getLoadedUrlCount());
1112 1079
1113 // tap the base page to close. 1080 // close the panel.
1114 tapBasePageToClosePanel(); 1081 closePanel();
1115 assertEquals(1, mFakeServer.getLoadedUrlCount()); 1082 assertEquals(1, mFakeServer.getLoadedUrlCount());
1116 assertNoContentViewCore(); 1083 assertNoContentViewCore();
1117 } 1084 }
1118 1085
1119 /** 1086 /**
1120 * Tests that only a single low-priority request is issued for a Tap/Open se quence. 1087 * Tests that only a single low-priority request is issued for a Tap/Open se quence.
1121 */ 1088 */
1122 @SmallTest 1089 @SmallTest
1123 @Feature({"ContextualSearch"}) 1090 @Feature({"ContextualSearch"})
1124 @Restriction({RESTRICTION_TYPE_NON_LOW_END_DEVICE}) 1091 @Restriction({RESTRICTION_TYPE_NON_LOW_END_DEVICE})
(...skipping 604 matching lines...) Expand 10 before | Expand all | Expand 10 after
1729 @Feature({"ContextualSearch"}) 1696 @Feature({"ContextualSearch"})
1730 @Restriction({ChromeRestriction.RESTRICTION_TYPE_PHONE, RESTRICTION_TYPE_NON _LOW_END_DEVICE}) 1697 @Restriction({ChromeRestriction.RESTRICTION_TYPE_PHONE, RESTRICTION_TYPE_NON _LOW_END_DEVICE})
1731 @DisableIf.Build(supported_abis_includes = "arm64-v8a", message = "crbug.com /596533") 1698 @DisableIf.Build(supported_abis_includes = "arm64-v8a", message = "crbug.com /596533")
1732 public void testAppMenuSuppressedWhenExpanded() throws InterruptedException, TimeoutException { 1699 public void testAppMenuSuppressedWhenExpanded() throws InterruptedException, TimeoutException {
1733 clickWordNode("states"); 1700 clickWordNode("states");
1734 tapPeekingBarToExpandAndAssert(); 1701 tapPeekingBarToExpandAndAssert();
1735 1702
1736 pressAppMenuKey(); 1703 pressAppMenuKey();
1737 assertAppMenuVisibility(false); 1704 assertAppMenuVisibility(false);
1738 1705
1739 tapBasePageToClosePanel(); 1706 closePanel();
1740 1707
1741 pressAppMenuKey(); 1708 pressAppMenuKey();
1742 assertAppMenuVisibility(true); 1709 assertAppMenuVisibility(true);
1743 } 1710 }
1744 1711
1745 /** 1712 /**
1746 * Tests that the App Menu gets suppressed when Search Panel is maximized. 1713 * Tests that the App Menu gets suppressed when Search Panel is maximized.
1747 */ 1714 */
1748 @SmallTest 1715 @SmallTest
1749 @Feature({"ContextualSearch"}) 1716 @Feature({"ContextualSearch"})
(...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after
1895 public void onShowContextualSearch(GSAContextDisplaySelection selectionC ontext) {} 1862 public void onShowContextualSearch(GSAContextDisplaySelection selectionC ontext) {}
1896 1863
1897 @Override 1864 @Override
1898 public void onHideContextualSearch() { 1865 public void onHideContextualSearch() {
1899 hideCount++; 1866 hideCount++;
1900 } 1867 }
1901 } 1868 }
1902 1869
1903 /** 1870 /**
1904 * Tests that ContextualSearchObserver gets notified when user brings up con textual search 1871 * Tests that ContextualSearchObserver gets notified when user brings up con textual search
1905 * panel via long press and then dismisses the panel by tapping on the base page. 1872 * panel via long press and when the panel is dismissed.
1906 */ 1873 */
1907 @SmallTest 1874 @SmallTest
1908 @Feature({"ContextualSearch"}) 1875 @Feature({"ContextualSearch"})
1909 @Restriction({ChromeRestriction.RESTRICTION_TYPE_PHONE, RESTRICTION_TYPE_NON _LOW_END_DEVICE}) 1876 @Restriction({ChromeRestriction.RESTRICTION_TYPE_PHONE, RESTRICTION_TYPE_NON _LOW_END_DEVICE})
1910 @RetryOnFailure 1877 @RetryOnFailure
1911 public void testNotifyObserverHideAfterLongPress() 1878 public void testNotifyObserverHideAfterLongPress()
1912 throws InterruptedException, TimeoutException { 1879 throws InterruptedException, TimeoutException {
1913 TestContextualSearchObserver observer = new TestContextualSearchObserver (); 1880 TestContextualSearchObserver observer = new TestContextualSearchObserver ();
1914 mManager.addObserver(observer); 1881 mManager.addObserver(observer);
1915 longPressNode("states"); 1882 longPressNode("states");
1916 assertEquals(0, observer.hideCount); 1883 assertEquals(0, observer.hideCount);
1917 1884
1918 tapBasePageToClosePanel(); 1885 closePanel();
1919 assertEquals(1, observer.hideCount); 1886 assertEquals(1, observer.hideCount);
1920 } 1887 }
1921 1888
1922 /** 1889 /**
1923 * Tests that ContextualSearchObserver gets notified when user brings up con textual search 1890 * Tests that ContextualSearchObserver gets notified when user brings up con textual search
1924 * panel via tap and then dismisses the panel by tapping on the base page. 1891 * panel via tap and when the panel is dismissed.
1925 */ 1892 */
1926 @SmallTest 1893 @SmallTest
1927 @Feature({"ContextualSearch"}) 1894 @Feature({"ContextualSearch"})
1928 @Restriction({ChromeRestriction.RESTRICTION_TYPE_PHONE, RESTRICTION_TYPE_NON _LOW_END_DEVICE}) 1895 @Restriction({ChromeRestriction.RESTRICTION_TYPE_PHONE, RESTRICTION_TYPE_NON _LOW_END_DEVICE})
1929 public void testNotifyObserverHideAfterTap() throws InterruptedException, Ti meoutException { 1896 public void testNotifyObserverHideAfterTap() throws InterruptedException, Ti meoutException {
1930 TestContextualSearchObserver observer = new TestContextualSearchObserver (); 1897 TestContextualSearchObserver observer = new TestContextualSearchObserver ();
1931 mManager.addObserver(observer); 1898 mManager.addObserver(observer);
1932 clickWordNode("states"); 1899 clickWordNode("states");
1933 assertEquals(0, observer.hideCount); 1900 assertEquals(0, observer.hideCount);
1934 1901
1935 tapBasePageToClosePanel(); 1902 closePanel();
1936 assertEquals(1, observer.hideCount); 1903 assertEquals(1, observer.hideCount);
1937 } 1904 }
1938 1905
1939 private void assertWaitForSelectActionBarVisible(final boolean visible) 1906 private void assertWaitForSelectActionBarVisible(final boolean visible)
1940 throws InterruptedException { 1907 throws InterruptedException {
1941 CriteriaHelper.pollUiThread(Criteria.equals(visible, new Callable<Boolea n>() { 1908 CriteriaHelper.pollUiThread(Criteria.equals(visible, new Callable<Boolea n>() {
1942 @Override 1909 @Override
1943 public Boolean call() { 1910 public Boolean call() {
1944 return getActivity().getActivityTab().getContentViewCore() 1911 return getActivity().getActivityTab().getContentViewCore()
1945 .isSelectActionBarShowing(); 1912 .isSelectActionBarShowing();
(...skipping 202 matching lines...) Expand 10 before | Expand all | Expand 10 after
2148 longPressNode("intelligence"); 2115 longPressNode("intelligence");
2149 waitForPanelToPeek(); 2116 waitForPanelToPeek();
2150 assertTrue(mPanel.isPeekPromoVisible()); 2117 assertTrue(mPanel.isPeekPromoVisible());
2151 2118
2152 // After expanding the Panel the Promo should be invisible. 2119 // After expanding the Panel the Promo should be invisible.
2153 flingPanelUp(); 2120 flingPanelUp();
2154 waitForPanelToExpand(); 2121 waitForPanelToExpand();
2155 assertFalse(mPanel.isPeekPromoVisible()); 2122 assertFalse(mPanel.isPeekPromoVisible());
2156 2123
2157 // After closing the Panel the Promo should still be invisible. 2124 // After closing the Panel the Promo should still be invisible.
2158 tapBasePageToClosePanel(); 2125 closePanel();
2159 assertFalse(mPanel.isPeekPromoVisible()); 2126 assertFalse(mPanel.isPeekPromoVisible());
2160 2127
2161 // Click elsewhere to clear the selection. 2128 // Click elsewhere to clear the selection.
2162 clickNode("question-mark"); 2129 clickNode("question-mark");
2163 waitForSelectionToBe(null); 2130 waitForSelectionToBe(null);
2164 2131
2165 // Now that the Panel was opened at least once, the Promo should not sho w again. 2132 // Now that the Panel was opened at least once, the Promo should not sho w again.
2166 longPressNode("intelligence"); 2133 longPressNode("intelligence");
2167 waitForPanelToPeek(); 2134 waitForPanelToPeek();
2168 assertFalse(mPanel.isPeekPromoVisible()); 2135 assertFalse(mPanel.isPeekPromoVisible());
(...skipping 13 matching lines...) Expand all
2182 public void testTapContentVisibility() throws InterruptedException, TimeoutE xception { 2149 public void testTapContentVisibility() throws InterruptedException, TimeoutE xception {
2183 // Simulate a tap and make sure Content is not visible. 2150 // Simulate a tap and make sure Content is not visible.
2184 simulateTapSearch("search"); 2151 simulateTapSearch("search");
2185 assertContentViewCoreCreatedButNeverMadeVisible(); 2152 assertContentViewCoreCreatedButNeverMadeVisible();
2186 2153
2187 // Expanding the Panel should make the Content visible. 2154 // Expanding the Panel should make the Content visible.
2188 tapPeekingBarToExpandAndAssert(); 2155 tapPeekingBarToExpandAndAssert();
2189 assertContentViewCoreVisible(); 2156 assertContentViewCoreVisible();
2190 2157
2191 // Closing the Panel should destroy the Content. 2158 // Closing the Panel should destroy the Content.
2192 tapBasePageToClosePanel(); 2159 closePanel();
2193 assertNoContentViewCore(); 2160 assertNoContentViewCore();
2194 } 2161 }
2195 2162
2196 /** 2163 /**
2197 * Tests that long press followed by expand creates Content and makes it vis ible. 2164 * Tests that long press followed by expand creates Content and makes it vis ible.
2198 * 2165 *
2199 */ 2166 */
2200 @SmallTest 2167 @SmallTest
2201 @Feature({"ContextualSearch"}) 2168 @Feature({"ContextualSearch"})
2202 @Restriction({ChromeRestriction.RESTRICTION_TYPE_PHONE, RESTRICTION_TYPE_NON _LOW_END_DEVICE}) 2169 @Restriction({ChromeRestriction.RESTRICTION_TYPE_PHONE, RESTRICTION_TYPE_NON _LOW_END_DEVICE})
2203 public void testLongPressContentVisibility() throws InterruptedException, Ti meoutException { 2170 public void testLongPressContentVisibility() throws InterruptedException, Ti meoutException {
2204 // Simulate a long press and make sure no Content is created. 2171 // Simulate a long press and make sure no Content is created.
2205 simulateLongPressSearch("search"); 2172 simulateLongPressSearch("search");
2206 assertNoContentViewCore(); 2173 assertNoContentViewCore();
2207 assertNoSearchesLoaded(); 2174 assertNoSearchesLoaded();
2208 2175
2209 // Expanding the Panel should make the Content visible. 2176 // Expanding the Panel should make the Content visible.
2210 tapPeekingBarToExpandAndAssert(); 2177 tapPeekingBarToExpandAndAssert();
2211 assertContentViewCoreCreated(); 2178 assertContentViewCoreCreated();
2212 assertContentViewCoreVisible(); 2179 assertContentViewCoreVisible();
2213 2180
2214 // Closing the Panel should destroy the Content. 2181 // Closing the Panel should destroy the Content.
2215 tapBasePageToClosePanel(); 2182 closePanel();
2216 assertNoContentViewCore(); 2183 assertNoContentViewCore();
2217 } 2184 }
2218 2185
2219 /** 2186 /**
2220 * Tests swiping panel up and down after a tap search will only load the Con tent once. 2187 * Tests swiping panel up and down after a tap search will only load the Con tent once.
2221 */ 2188 */
2222 @SmallTest 2189 @SmallTest
2223 @Feature({"ContextualSearch"}) 2190 @Feature({"ContextualSearch"})
2224 @Restriction({ChromeRestriction.RESTRICTION_TYPE_PHONE, RESTRICTION_TYPE_NON _LOW_END_DEVICE}) 2191 @Restriction({ChromeRestriction.RESTRICTION_TYPE_PHONE, RESTRICTION_TYPE_NON _LOW_END_DEVICE})
2225 public void testTapMultipleSwipeOnlyLoadsContentOnce() 2192 public void testTapMultipleSwipeOnlyLoadsContentOnce()
(...skipping 13 matching lines...) Expand all
2239 waitForPanelToPeek(); 2206 waitForPanelToPeek();
2240 assertContentViewCoreVisible(); 2207 assertContentViewCoreVisible();
2241 assertEquals(1, mFakeServer.getLoadedUrlCount()); 2208 assertEquals(1, mFakeServer.getLoadedUrlCount());
2242 2209
2243 // Expanding the Panel should not change the visibility or load content again. 2210 // Expanding the Panel should not change the visibility or load content again.
2244 tapPeekingBarToExpandAndAssert(); 2211 tapPeekingBarToExpandAndAssert();
2245 assertContentViewCoreVisible(); 2212 assertContentViewCoreVisible();
2246 assertEquals(1, mFakeServer.getLoadedUrlCount()); 2213 assertEquals(1, mFakeServer.getLoadedUrlCount());
2247 2214
2248 // Closing the Panel should destroy the Content. 2215 // Closing the Panel should destroy the Content.
2249 tapBasePageToClosePanel(); 2216 closePanel();
2250 assertNoContentViewCore(); 2217 assertNoContentViewCore();
2251 assertEquals(1, mFakeServer.getLoadedUrlCount()); 2218 assertEquals(1, mFakeServer.getLoadedUrlCount());
2252 } 2219 }
2253 2220
2254 /** 2221 /**
2255 * Tests swiping panel up and down after a long press search will only load the Content once. 2222 * Tests swiping panel up and down after a long press search will only load the Content once.
2256 */ 2223 */
2257 @SmallTest 2224 @SmallTest
2258 @Feature({"ContextualSearch"}) 2225 @Feature({"ContextualSearch"})
2259 @Restriction({ChromeRestriction.RESTRICTION_TYPE_PHONE, RESTRICTION_TYPE_NON _LOW_END_DEVICE}) 2226 @Restriction({ChromeRestriction.RESTRICTION_TYPE_PHONE, RESTRICTION_TYPE_NON _LOW_END_DEVICE})
(...skipping 15 matching lines...) Expand all
2275 waitForPanelToPeek(); 2242 waitForPanelToPeek();
2276 assertContentViewCoreVisible(); 2243 assertContentViewCoreVisible();
2277 assertEquals(1, mFakeServer.getLoadedUrlCount()); 2244 assertEquals(1, mFakeServer.getLoadedUrlCount());
2278 2245
2279 // Expanding the Panel should not change the visibility or load content again. 2246 // Expanding the Panel should not change the visibility or load content again.
2280 tapPeekingBarToExpandAndAssert(); 2247 tapPeekingBarToExpandAndAssert();
2281 assertContentViewCoreVisible(); 2248 assertContentViewCoreVisible();
2282 assertEquals(1, mFakeServer.getLoadedUrlCount()); 2249 assertEquals(1, mFakeServer.getLoadedUrlCount());
2283 2250
2284 // Closing the Panel should destroy the Content. 2251 // Closing the Panel should destroy the Content.
2285 tapBasePageToClosePanel(); 2252 closePanel();
2286 assertNoContentViewCore(); 2253 assertNoContentViewCore();
2287 assertEquals(1, mFakeServer.getLoadedUrlCount()); 2254 assertEquals(1, mFakeServer.getLoadedUrlCount());
2288 } 2255 }
2289 2256
2290 /** 2257 /**
2291 * Tests that chained tap searches create new Content. 2258 * Tests that chained tap searches create new Content.
2292 */ 2259 */
2293 @SmallTest 2260 @SmallTest
2294 @Feature({"ContextualSearch"}) 2261 @Feature({"ContextualSearch"})
2295 @Restriction(RESTRICTION_TYPE_NON_LOW_END_DEVICE) 2262 @Restriction(RESTRICTION_TYPE_NON_LOW_END_DEVICE)
(...skipping 18 matching lines...) Expand all
2314 waitToPreventDoubleTapRecognition(); 2281 waitToPreventDoubleTapRecognition();
2315 2282
2316 // Simulate a new tap and make sure a new Content is created. 2283 // Simulate a new tap and make sure a new Content is created.
2317 simulateTapSearch("resolution"); 2284 simulateTapSearch("resolution");
2318 assertContentViewCoreCreatedButNeverMadeVisible(); 2285 assertContentViewCoreCreatedButNeverMadeVisible();
2319 assertEquals(3, mFakeServer.getLoadedUrlCount()); 2286 assertEquals(3, mFakeServer.getLoadedUrlCount());
2320 ContentViewCore cvc3 = getPanelContentViewCore(); 2287 ContentViewCore cvc3 = getPanelContentViewCore();
2321 assertNotSame(cvc2, cvc3); 2288 assertNotSame(cvc2, cvc3);
2322 2289
2323 // Closing the Panel should destroy the Content. 2290 // Closing the Panel should destroy the Content.
2324 tapBasePageToClosePanel(); 2291 closePanel();
2325 assertNoContentViewCore(); 2292 assertNoContentViewCore();
2326 assertEquals(3, mFakeServer.getLoadedUrlCount()); 2293 assertEquals(3, mFakeServer.getLoadedUrlCount());
2327 } 2294 }
2328 2295
2329 /** 2296 /**
2330 * Tests that chained searches load correctly. 2297 * Tests that chained searches load correctly.
2331 */ 2298 */
2332 @DisabledTest(message = "crbug.com/551711") 2299 @DisabledTest(message = "crbug.com/551711")
2333 @SmallTest 2300 @SmallTest
2334 @Feature({"ContextualSearch"}) 2301 @Feature({"ContextualSearch"})
(...skipping 25 matching lines...) Expand all
2360 // Expanding the Panel should load and display the new search. 2327 // Expanding the Panel should load and display the new search.
2361 tapPeekingBarToExpandAndAssert(); 2328 tapPeekingBarToExpandAndAssert();
2362 assertContentViewCoreCreated(); 2329 assertContentViewCoreCreated();
2363 assertContentViewCoreVisible(); 2330 assertContentViewCoreVisible();
2364 assertEquals(2, mFakeServer.getLoadedUrlCount()); 2331 assertEquals(2, mFakeServer.getLoadedUrlCount());
2365 assertLoadedSearchTermMatches("Resolution"); 2332 assertLoadedSearchTermMatches("Resolution");
2366 ContentViewCore cvc2 = getPanelContentViewCore(); 2333 ContentViewCore cvc2 = getPanelContentViewCore();
2367 assertNotSame(cvc1, cvc2); 2334 assertNotSame(cvc1, cvc2);
2368 2335
2369 // Closing the Panel should destroy the Content. 2336 // Closing the Panel should destroy the Content.
2370 tapBasePageToClosePanel(); 2337 closePanel();
2371 assertNoContentViewCore(); 2338 assertNoContentViewCore();
2372 assertEquals(2, mFakeServer.getLoadedUrlCount()); 2339 assertEquals(2, mFakeServer.getLoadedUrlCount());
2373 } 2340 }
2374 2341
2375 /** 2342 /**
2376 * Tests that chained searches make Content visible when opening the Panel. 2343 * Tests that chained searches make Content visible when opening the Panel.
2377 */ 2344 */
2378 @SmallTest 2345 @SmallTest
2379 @Feature({"ContextualSearch"}) 2346 @Feature({"ContextualSearch"})
2380 @Restriction({RESTRICTION_TYPE_NON_LOW_END_DEVICE}) 2347 @Restriction({RESTRICTION_TYPE_NON_LOW_END_DEVICE})
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
2415 @Restriction(RESTRICTION_TYPE_NON_LOW_END_DEVICE) 2382 @Restriction(RESTRICTION_TYPE_NON_LOW_END_DEVICE)
2416 @RetryOnFailure 2383 @RetryOnFailure
2417 public void testTapCloseRemovedFromHistory() 2384 public void testTapCloseRemovedFromHistory()
2418 throws InterruptedException, TimeoutException { 2385 throws InterruptedException, TimeoutException {
2419 // Simulate a tap and make sure a URL was loaded. 2386 // Simulate a tap and make sure a URL was loaded.
2420 simulateTapSearch("search"); 2387 simulateTapSearch("search");
2421 assertEquals(1, mFakeServer.getLoadedUrlCount()); 2388 assertEquals(1, mFakeServer.getLoadedUrlCount());
2422 String url = mFakeServer.getLoadedUrl(); 2389 String url = mFakeServer.getLoadedUrl();
2423 2390
2424 // Close the Panel without seeing the Content. 2391 // Close the Panel without seeing the Content.
2425 tapBasePageToClosePanel(); 2392 closePanel();
2426 2393
2427 // Now check that the URL has been removed from history. 2394 // Now check that the URL has been removed from history.
2428 assertTrue(mFakeServer.hasRemovedUrl(url)); 2395 assertTrue(mFakeServer.hasRemovedUrl(url));
2429 } 2396 }
2430 2397
2431 /** 2398 /**
2432 * Tests that a tap followed by opening the Panel does not remove the loaded URL from history. 2399 * Tests that a tap followed by opening the Panel does not remove the loaded URL from history.
2433 */ 2400 */
2434 @SmallTest 2401 @SmallTest
2435 @Feature({"ContextualSearch"}) 2402 @Feature({"ContextualSearch"})
2436 @Restriction({ChromeRestriction.RESTRICTION_TYPE_PHONE, RESTRICTION_TYPE_NON _LOW_END_DEVICE}) 2403 @Restriction({ChromeRestriction.RESTRICTION_TYPE_PHONE, RESTRICTION_TYPE_NON _LOW_END_DEVICE})
2437 public void testTapExpandNotRemovedFromHistory() 2404 public void testTapExpandNotRemovedFromHistory()
2438 throws InterruptedException, TimeoutException { 2405 throws InterruptedException, TimeoutException {
2439 // Simulate a tap and make sure a URL was loaded. 2406 // Simulate a tap and make sure a URL was loaded.
2440 simulateTapSearch("search"); 2407 simulateTapSearch("search");
2441 assertEquals(1, mFakeServer.getLoadedUrlCount()); 2408 assertEquals(1, mFakeServer.getLoadedUrlCount());
2442 String url = mFakeServer.getLoadedUrl(); 2409 String url = mFakeServer.getLoadedUrl();
2443 2410
2444 // Expand Panel so that the Content becomes visible. 2411 // Expand Panel so that the Content becomes visible.
2445 tapPeekingBarToExpandAndAssert(); 2412 tapPeekingBarToExpandAndAssert();
2446 2413
2447 // Close the Panel. 2414 // Close the Panel.
2448 tapBasePageToClosePanel(); 2415 closePanel();
2449 2416
2450 // Now check that the URL has not been removed from history, since the C ontent was seen. 2417 // Now check that the URL has not been removed from history, since the C ontent was seen.
2451 assertFalse(mFakeServer.hasRemovedUrl(url)); 2418 assertFalse(mFakeServer.hasRemovedUrl(url));
2452 } 2419 }
2453 2420
2454 /** 2421 /**
2455 * Tests that chained searches without opening the Panel removes all loaded URLs from history. 2422 * Tests that chained searches without opening the Panel removes all loaded URLs from history.
2456 */ 2423 */
2457 @SmallTest 2424 @SmallTest
2458 @Feature({"ContextualSearch"}) 2425 @Feature({"ContextualSearch"})
(...skipping 14 matching lines...) Expand all
2473 assertNotSame(url1, url2); 2440 assertNotSame(url1, url2);
2474 2441
2475 waitToPreventDoubleTapRecognition(); 2442 waitToPreventDoubleTapRecognition();
2476 2443
2477 // Simulate another tap and make sure another URL was loaded. 2444 // Simulate another tap and make sure another URL was loaded.
2478 simulateTapSearch("resolution"); 2445 simulateTapSearch("resolution");
2479 String url3 = mFakeServer.getLoadedUrl(); 2446 String url3 = mFakeServer.getLoadedUrl();
2480 assertNotSame(url2, url3); 2447 assertNotSame(url2, url3);
2481 2448
2482 // Close the Panel without seeing any Content. 2449 // Close the Panel without seeing any Content.
2483 tapBasePageToClosePanel(); 2450 closePanel();
2484 2451
2485 // Now check that all three URLs have been removed from history. 2452 // Now check that all three URLs have been removed from history.
2486 assertEquals(3, mFakeServer.getLoadedUrlCount()); 2453 assertEquals(3, mFakeServer.getLoadedUrlCount());
2487 assertTrue(mFakeServer.hasRemovedUrl(url1)); 2454 assertTrue(mFakeServer.hasRemovedUrl(url1));
2488 assertTrue(mFakeServer.hasRemovedUrl(url2)); 2455 assertTrue(mFakeServer.hasRemovedUrl(url2));
2489 assertTrue(mFakeServer.hasRemovedUrl(url3)); 2456 assertTrue(mFakeServer.hasRemovedUrl(url3));
2490 } 2457 }
2491 2458
2492 //========================================================================== ================== 2459 //========================================================================== ==================
2493 // Translate Tests 2460 // Translate Tests
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after
2591 throws InterruptedException, TimeoutException { 2558 throws InterruptedException, TimeoutException {
2592 // Unless disabled, LongPress on any word should trigger translation. 2559 // Unless disabled, LongPress on any word should trigger translation.
2593 simulateLongPressSearch("search"); 2560 simulateLongPressSearch("search");
2594 2561
2595 // Make sure we did not try to trigger translate. 2562 // Make sure we did not try to trigger translate.
2596 assertFalse(mManager.getRequest().isTranslationForced()); 2563 assertFalse(mManager.getRequest().isTranslationForced());
2597 } 2564 }
2598 2565
2599 /** 2566 /**
2600 * Tests that Contextual Search works in fullscreen. Specifically, tests tha t tapping a word 2567 * Tests that Contextual Search works in fullscreen. Specifically, tests tha t tapping a word
2601 * peeks the panel, expanding the bar results in the bar ending at the corre ct spot in the page 2568 * peeks the panel, expanding the bar results in the bar ending at the corre ct spot in the page.
2602 * and tapping the base page closes the panel.
2603 */ 2569 */
2604 @SmallTest 2570 @SmallTest
2605 @Feature({"ContextualSearch"}) 2571 @Feature({"ContextualSearch"})
2606 @Restriction({ChromeRestriction.RESTRICTION_TYPE_PHONE, RESTRICTION_TYPE_NON _LOW_END_DEVICE}) 2572 @Restriction({ChromeRestriction.RESTRICTION_TYPE_PHONE, RESTRICTION_TYPE_NON _LOW_END_DEVICE})
2607 public void testTapContentAndExpandPanelInFullscreen() 2573 public void testTapContentAndExpandPanelInFullscreen()
2608 throws InterruptedException, TimeoutException { 2574 throws InterruptedException, TimeoutException {
2609 // Toggle tab to fulllscreen. 2575 // Toggle tab to fullscreen.
2610 FullscreenTestUtils.togglePersistentFullscreenAndAssert(getActivity().ge tActivityTab(), 2576 FullscreenTestUtils.togglePersistentFullscreenAndAssert(getActivity().ge tActivityTab(),
2611 true, getActivity()); 2577 true, getActivity());
2612 2578
2613 // Simulate a tap and assert that the panel peeks. 2579 // Simulate a tap and assert that the panel peeks.
2614 simulateTapSearch("search"); 2580 simulateTapSearch("search");
2615 2581
2616 // Expand the panel and assert that it ends up in the right place. 2582 // Expand the panel and assert that it ends up in the right place.
2617 tapPeekingBarToExpandAndAssert(); 2583 tapPeekingBarToExpandAndAssert();
2618 assertEquals(mManager.getContextualSearchPanel().getHeight(), 2584 assertEquals(mManager.getContextualSearchPanel().getHeight(),
2619 mManager.getContextualSearchPanel().getPanelHeightFromState(Pane lState.EXPANDED)); 2585 mManager.getContextualSearchPanel().getPanelHeightFromState(Pane lState.EXPANDED));
2620
2621 // Tap the base page and assert that the panel is closed.
2622 tapBasePageToClosePanel();
2623 } 2586 }
2624 2587
2625 /** 2588 /**
2626 * Tests that the Contextual Search panel is dismissed when entering or exit ing fullscreen. 2589 * Tests that the Contextual Search panel is dismissed when entering or exit ing fullscreen.
2627 */ 2590 */
2628 @SmallTest 2591 @SmallTest
2629 @Feature({"ContextualSearch"}) 2592 @Feature({"ContextualSearch"})
2630 @Restriction({RESTRICTION_TYPE_NON_LOW_END_DEVICE}) 2593 @Restriction({RESTRICTION_TYPE_NON_LOW_END_DEVICE})
2631 @RetryOnFailure 2594 @RetryOnFailure
2632 public void testPanelDismissedOnToggleFullscreen() 2595 public void testPanelDismissedOnToggleFullscreen()
(...skipping 11 matching lines...) Expand all
2644 // Simulate a tap and assert that the panel peeks. 2607 // Simulate a tap and assert that the panel peeks.
2645 simulateTapSearch("search"); 2608 simulateTapSearch("search");
2646 2609
2647 // Toggle tab to non-fullscreen. 2610 // Toggle tab to non-fullscreen.
2648 FullscreenTestUtils.togglePersistentFullscreenAndAssert(tab, false, getA ctivity()); 2611 FullscreenTestUtils.togglePersistentFullscreenAndAssert(tab, false, getA ctivity());
2649 2612
2650 // Assert that the panel is closed. 2613 // Assert that the panel is closed.
2651 waitForPanelToClose(); 2614 waitForPanelToClose();
2652 } 2615 }
2653 } 2616 }
OLDNEW
« no previous file with comments | « chrome/android/java_sources.gni ('k') | chrome/browser/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698