| Index: chrome/android/javatests/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchTapEventTest.java
|
| diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchTapEventTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchTapEventTest.java
|
| index a8d822539981adb9d8b29cb49ac2ad366725bbe4..6f910e67d2f78b1794d29855c13033aa143c4329 100644
|
| --- a/chrome/android/javatests/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchTapEventTest.java
|
| +++ b/chrome/android/javatests/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchTapEventTest.java
|
| @@ -26,8 +26,6 @@ import org.chromium.chrome.browser.compositor.bottombar.OverlayPanelManager;
|
| import org.chromium.chrome.browser.compositor.bottombar.OverlayPanelManagerWrapper;
|
| import org.chromium.chrome.browser.compositor.bottombar.contextualsearch.ContextualSearchPanel;
|
| import org.chromium.chrome.browser.compositor.layouts.LayoutUpdateHost;
|
| -import org.chromium.chrome.browser.contextualsearch.ContextualSearchInternalStateController.InternalState;
|
| -import org.chromium.chrome.browser.contextualsearch.ContextualSearchSelectionController.SelectionType;
|
| import org.chromium.chrome.test.ChromeActivityTestRule;
|
| import org.chromium.chrome.test.ChromeJUnit4ClassRunner;
|
| import org.chromium.content.browser.ContentViewCore;
|
| @@ -128,10 +126,7 @@ public class ContextualSearchTapEventTest {
|
|
|
| @Override
|
| protected void nativeGatherSurroundingText(long nativeContextualSearchManager,
|
| - ContextualSearchContext contextualSearchContext, WebContents baseWebContents) {
|
| - getContextualSearchInternalStateController().notifyFinishedWorkOn(
|
| - InternalState.GATHERING_SURROUNDINGS);
|
| - }
|
| + ContextualSearchContext contextualSearchContext, WebContents baseWebContents) {}
|
|
|
| /**
|
| * @return A stubbed ContentViewCore for mocking text selection.
|
| @@ -251,11 +246,32 @@ public class ContextualSearchTapEventTest {
|
| });
|
| }
|
|
|
| - private void mockSelectWordAroundCaretAck(final String text) {
|
| + /**
|
| + * Generates a call indicating that surrounding text and selection range are available.
|
| + */
|
| + private void generateTextSurroundingSelectionAvailable() {
|
| + ThreadUtils.runOnUiThreadBlocking(new Runnable() {
|
| + @Override
|
| + public void run() {
|
| + // It only makes sense to send dummy data here because we can't easily control
|
| + // what's in the native context.
|
| + mContextualSearchManager.onTextSurroundingSelectionAvailable(
|
| + "UTF-8", "unused", 0, 0);
|
| + }
|
| + });
|
| + }
|
| +
|
| + /**
|
| + * Generates an ACK for the SelectWordAroundCaret native call, which indicates that the select
|
| + * action has completed with the given result.
|
| + */
|
| + private void generateSelectWordAroundCaretAck() {
|
| ThreadUtils.runOnUiThreadBlocking(new Runnable() {
|
| @Override
|
| public void run() {
|
| - mContextualSearchManager.handleSelection(text, true, SelectionType.TAP, 0, 0);
|
| + // It only makes sense to send dummy data here because we can't easily control
|
| + // what's in the native context.
|
| + mContextualSearchManager.selectWordAroundCaretAck(true, 0, 0);
|
| }
|
| });
|
| }
|
| @@ -296,6 +312,9 @@ public class ContextualSearchTapEventTest {
|
|
|
| // Fake a selection event.
|
| mockLongpressText("text");
|
| + // Generate the surrounding-text-available callback.
|
| + // Surrounding text is gathered for longpress due to icing integration.
|
| + generateTextSurroundingSelectionAvailable();
|
|
|
| Assert.assertEquals(mPanelManager.getRequestPanelShowCount(), 1);
|
| Assert.assertEquals(mPanelManager.getPanelHideCount(), 0);
|
| @@ -322,9 +341,11 @@ public class ContextualSearchTapEventTest {
|
|
|
| // Fake a Tap event.
|
| mockTapText("text");
|
| + // Generate the surrounding-text-available callback.
|
| + generateTextSurroundingSelectionAvailable();
|
| // Right now the tap-processing sequence will stall at selectWordAroundCaret, so we need
|
| - // to prod it forward with a manual hack:
|
| - mockSelectWordAroundCaretAck("text");
|
| + // to prod it forward by generating an ACK:
|
| + generateSelectWordAroundCaretAck();
|
| Assert.assertEquals(mPanelManager.getRequestPanelShowCount(), 1);
|
| Assert.assertEquals(mPanelManager.getPanelHideCount(), 0);
|
| }
|
|
|