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

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

Issue 2703473002: [TTS] Extract tapped text before showing UI. (Closed)
Patch Set: Moved handleHideContextualSearch into hideContextualSearchUI, and updated comments in response to T… Created 3 years, 8 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 side-by-side diff with in-line comments
Download patch
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 11cb83cbfe50850a15ac4e61c5310d2b14a042a1..2db6fb07f8106484af0cf127a5248cf1c98277fa 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
@@ -45,6 +45,7 @@ import org.chromium.chrome.browser.compositor.bottombar.contextualsearch.Context
import org.chromium.chrome.browser.compositor.bottombar.contextualsearch.ContextualSearchPanel;
import org.chromium.chrome.browser.compositor.bottombar.contextualsearch.ContextualSearchQuickActionControl;
import org.chromium.chrome.browser.contextualsearch.ContextualSearchFakeServer.FakeSlowResolveSearch;
+import org.chromium.chrome.browser.contextualsearch.ContextualSearchInternalStateController.InternalState;
import org.chromium.chrome.browser.externalnav.ExternalNavigationHandler;
import org.chromium.chrome.browser.firstrun.FirstRunStatus;
import org.chromium.chrome.browser.gsa.GSAContextDisplaySelection;
@@ -1363,7 +1364,7 @@ public class ContextualSearchManagerTest extends ChromeActivityTestCaseBase<Chro
waitForPanelToPeek();
assertLoadedLowPriorityUrl();
clickNode("question-mark");
- waitForGestureProcessing();
+ waitForPanelToClose();
assertNull(getSelectedText());
}
@@ -1408,8 +1409,7 @@ public class ContextualSearchManagerTest extends ChromeActivityTestCaseBase<Chro
clickWordNode("states-far");
waitForPanelToPeek();
clickNode("question-mark");
- waitForGestureProcessing();
- assertPanelClosedOrUndefined();
+ waitForPanelToClose();
assertNull(mSelectionController.getSelectedText());
}
@@ -1438,9 +1438,8 @@ public class ContextualSearchManagerTest extends ChromeActivityTestCaseBase<Chro
assertEquals("States", getSelectedText());
waitForPanelToPeek();
clickNode("states-far");
- waitForGestureProcessing();
+ waitForPanelToClose();
assertNull(getSelectedText());
- assertPanelClosedOrUndefined();
clickNode("states-far");
waitForGestureProcessing();
waitForPanelToPeek();
@@ -2867,4 +2866,68 @@ public class ContextualSearchManagerTest extends ChromeActivityTestCaseBase<Chro
// Assert that the URL was loaded.
ChromeTabUtils.waitForTabPageLoaded(getActivity().getActivityTab(), testUrl);
}
+
+ /**
+ * Tests accessibility mode: Tap and Long-press don't activate CS.
+ */
+ @SmallTest
+ @Feature({"ContextualSearch"})
+ public void testAccesibilityMode() throws InterruptedException, TimeoutException {
+ mManager.onAccessibilityModeChanged(true);
+
+ // Simulate a tap that resolves to show the Bar.
+ clickNode("intelligence");
+ assertNoContentViewCore();
+ assertNoSearchesLoaded();
+
+ // Simulate a Long-press.
+ longPressNodeWithoutWaiting("states");
+ assertNoContentViewCore();
+ assertNoSearchesLoaded();
+ }
+
+ /**
+ * Tests that the Manager cycles through all the expected Internal States on Tap that Resolves.
+ */
+ @SmallTest
+ @Feature({"ContextualSearch"})
+ public void testAllInternalStatesVisitedResolvingTap()
+ throws InterruptedException, TimeoutException {
+ // Set up a tracking version of the Internal State Controller.
+ ContextualSearchInternalStateControllerWrapper internalStateControllerWrapper =
+ ContextualSearchInternalStateControllerWrapper
+ .makeNewInternalStateControllerWrapper(mManager);
+ mManager.setContextualSearchInternalStateController(internalStateControllerWrapper);
+
+ // Simulate a tap that resolves to show the Bar.
+ simulateTapSearch("search");
+ assertEquals(InternalState.SHOWING_TAP_SEARCH, internalStateControllerWrapper.getState());
+
+ assertEquals(internalStateControllerWrapper.getStartedStates(),
+ internalStateControllerWrapper.getFinishedStates());
+ assertEquals(ContextualSearchInternalStateControllerWrapper.EXPECTED_TAP_RESOLVE_SEQUENCE,
+ internalStateControllerWrapper.getFinishedStates());
+ }
+
+ /**
+ * Tests that the Manager cycles through all the expected Internal States on a Long-press.
+ */
+ @SmallTest
+ @Feature({"ContextualSearch"})
+ public void testAllInternalStatesVisitedLongpress()
+ throws InterruptedException, TimeoutException {
+ // Set up a tracking version of the Internal State Controller.
+ ContextualSearchInternalStateControllerWrapper internalStateControllerWrapper =
+ ContextualSearchInternalStateControllerWrapper
+ .makeNewInternalStateControllerWrapper(mManager);
+ mManager.setContextualSearchInternalStateController(internalStateControllerWrapper);
+
+ // Simulate a Long-press to show the Bar.
+ simulateLongPressSearch("search");
+
+ assertEquals(internalStateControllerWrapper.getStartedStates(),
+ internalStateControllerWrapper.getFinishedStates());
+ assertEquals(ContextualSearchInternalStateControllerWrapper.EXPECTED_LONGPRESS_SEQUENCE,
+ internalStateControllerWrapper.getFinishedStates());
+ }
}

Powered by Google App Engine
This is Rietveld 408576698