| 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 426a088cebd79862aae14c7f3b60fd7e1cad861b..3a5d3f10e7b1d8ffa5865d06b40aaae8039c1426 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
|
| @@ -178,10 +178,11 @@ public class ContextualSearchManagerTest extends ChromeActivityTestCaseBase<Chro
|
| private final boolean mDoPreventPreload;
|
| private final int mStartAdjust;
|
| private final int mEndAdjust;
|
| + private final String mLanguage;
|
|
|
| public FakeResponseOnMainThread(boolean isNetworkUnavailable, int responseCode,
|
| String searchTerm, String displayText, String alternateTerm,
|
| - boolean doPreventPreload, int startAdjust, int endAdjudst) {
|
| + boolean doPreventPreload, int startAdjust, int endAdjudst, String language) {
|
| mIsNetworkUnavailable = isNetworkUnavailable;
|
| mResponseCode = responseCode;
|
| mSearchTerm = searchTerm;
|
| @@ -190,13 +191,14 @@ public class ContextualSearchManagerTest extends ChromeActivityTestCaseBase<Chro
|
| mDoPreventPreload = doPreventPreload;
|
| mStartAdjust = startAdjust;
|
| mEndAdjust = endAdjudst;
|
| + mLanguage = language;
|
| }
|
|
|
| @Override
|
| public void run() {
|
| - mFakeServer.handleSearchTermResolutionResponse(
|
| - mIsNetworkUnavailable, mResponseCode, mSearchTerm, mDisplayText,
|
| - mAlternateTerm, mDoPreventPreload, mStartAdjust, mEndAdjust);
|
| + mFakeServer.handleSearchTermResolutionResponse(mIsNetworkUnavailable, mResponseCode,
|
| + mSearchTerm, mDisplayText, mAlternateTerm, mDoPreventPreload, mStartAdjust,
|
| + mEndAdjust, mLanguage);
|
| }
|
| }
|
|
|
| @@ -206,10 +208,20 @@ public class ContextualSearchManagerTest extends ChromeActivityTestCaseBase<Chro
|
| */
|
| private void fakeResponse(boolean isNetworkUnavailable, int responseCode,
|
| String searchTerm, String displayText, String alternateTerm, boolean doPreventPreload) {
|
| + fakeResponse(isNetworkUnavailable, responseCode, searchTerm, displayText, alternateTerm,
|
| + doPreventPreload, "");
|
| + }
|
| +
|
| + /**
|
| + * Fakes a server response with the parameters given.
|
| + * {@See ContextualSearchManager#handleSearchTermResolutionResponse}.
|
| + */
|
| + private void fakeResponse(boolean isNetworkUnavailable, int responseCode, String searchTerm,
|
| + String displayText, String alternateTerm, boolean doPreventPreload, String language) {
|
| if (mFakeServer.getSearchTermRequested() != null) {
|
| getInstrumentation().runOnMainSync(
|
| new FakeResponseOnMainThread(isNetworkUnavailable, responseCode, searchTerm,
|
| - displayText, alternateTerm, doPreventPreload, 0, 0));
|
| + displayText, alternateTerm, doPreventPreload, 0, 0, language));
|
| }
|
| }
|
|
|
| @@ -1908,4 +1920,24 @@ public class ContextualSearchManagerTest extends ChromeActivityTestCaseBase<Chro
|
| });
|
| assertEquals(0, mActivityMonitor.getHits());
|
| }
|
| +
|
| + /**
|
| + * Tests a simple Tap with language determination.
|
| + */
|
| + @SmallTest
|
| + @Feature({"ContextualSearch"})
|
| + @Restriction(RESTRICTION_TYPE_NON_LOW_END_DEVICE)
|
| + public void testTapWithLanguage() throws InterruptedException, TimeoutException {
|
| + clickWordNode("intelligence");
|
| +
|
| + assertEquals("Intelligence", mFakeServer.getSearchTermRequested());
|
| + // Fake a German response. This will trigger the Contextual Search Manager to try
|
| + // to create a Search Uri that triggers Translate.
|
| + fakeResponse(false, 200, "Intelligence", "display-text", "alternate-term", false, "de");
|
| + assertContainsParameters("Intelligence", "alternate-term");
|
| + waitForPanelToPeekAndAssert();
|
| + assertLoadedLowPriorityUrl();
|
| + // Make sure we tried to trigger tranlsate.
|
| + mFakeServer.getLoadedUrl().contains(ContextualSearchRequest.TLITE_SOURCE_LANGUAGE_PARAM);
|
| + }
|
| }
|
|
|