Index: chrome/android/javatests/src/org/chromium/chrome/browser/TabsOpenedFromExternalAppTest.java |
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/TabsOpenedFromExternalAppTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/TabsOpenedFromExternalAppTest.java |
index 8e0ccfeb5964d18ef742d6e202f21a2d21c83149..32cfec2c20ce2ce0f76f44228c3e1945408a1046 100644 |
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/TabsOpenedFromExternalAppTest.java |
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/TabsOpenedFromExternalAppTest.java |
@@ -177,8 +177,8 @@ public class TabsOpenedFromExternalAppTest extends ChromeTabbedActivityTestBase |
* Returns when the URL has been navigated to. |
* @throws InterruptedException |
*/ |
- private void launchUrlFromExternalApp(String url, String appId, boolean createNewTab, |
- Bundle extras) throws InterruptedException { |
+ private void launchUrlFromExternalApp(String url, String expectedUrl, String appId, |
+ boolean createNewTab, Bundle extras) throws InterruptedException { |
final Intent intent = new Intent(Intent.ACTION_VIEW); |
if (appId != null) { |
intent.putExtra(Browser.EXTRA_APPLICATION_ID, appId); |
@@ -204,12 +204,12 @@ public class TabsOpenedFromExternalAppTest extends ChromeTabbedActivityTestBase |
} |
}); |
} |
- ChromeTabUtils.waitForTabPageLoaded(getActivity().getActivityTab(), url); |
+ ChromeTabUtils.waitForTabPageLoaded(getActivity().getActivityTab(), expectedUrl); |
} |
private void launchUrlFromExternalApp(String url, String appId, boolean createNewTab) |
throws InterruptedException { |
- launchUrlFromExternalApp(url, appId, createNewTab, null); |
+ launchUrlFromExternalApp(url, url, appId, createNewTab, null); |
} |
/** |
@@ -223,7 +223,7 @@ public class TabsOpenedFromExternalAppTest extends ChromeTabbedActivityTestBase |
startMainActivityFromLauncher(); |
Bundle extras = new Bundle(); |
extras.putParcelable(Intent.EXTRA_REFERRER, Uri.parse(ANDROID_APP_REFERRER)); |
- launchUrlFromExternalApp(url, EXTERNAL_APP_1_ID, true, extras); |
+ launchUrlFromExternalApp(url, url, EXTERNAL_APP_1_ID, true, extras); |
CriteriaHelper.pollForCriteria( |
new ReferrerCriteria(getActivity().getActivityTab(), ANDROID_APP_REFERRER), 2000, |
200); |
@@ -241,7 +241,7 @@ public class TabsOpenedFromExternalAppTest extends ChromeTabbedActivityTestBase |
String referrer = "foobar://totally.legit.referrer"; |
Bundle extras = new Bundle(); |
extras.putParcelable(Intent.EXTRA_REFERRER, Uri.parse(referrer)); |
- launchUrlFromExternalApp(url, EXTERNAL_APP_1_ID, true, extras); |
+ launchUrlFromExternalApp(url, url, EXTERNAL_APP_1_ID, true, extras); |
CriteriaHelper.pollForCriteria( |
new ReferrerCriteria(getActivity().getActivityTab(), ""), 2000, 200); |
} |
@@ -632,4 +632,41 @@ public class TabsOpenedFromExternalAppTest extends ChromeTabbedActivityTestBase |
} |
}); |
} |
+ |
+ /** |
+ * Tests that a Weblite url from an external app uses the lite_url param when Data Reduction |
+ * Proxy previews are being used. |
+ */ |
+ @MediumTest |
+ @CommandLineFlags.Add({"enable-spdy-proxy-auth", "data-reduction-proxy-lo-fi=always-on", |
+ "enable-data-reduction-proxy-lo-fi-preview"}) |
+ public void testLaunchWebLiteURL() throws InterruptedException { |
+ startMainActivityFromLauncher(); |
+ |
+ String url = mTestServer.getURL("/chrome/test/data/android/about.html"); |
+ |
+ // Launch a first URL from an app. |
+ launchUrlFromExternalApp("http://googleweblight.com/?lite_url=" + url, url, |
+ EXTERNAL_APP_1_ID, false, null); |
+ |
+ assertEquals("Selected tab is not on the right URL.", |
+ url, getActivity().getActivityTab().getUrl()); |
+ } |
+ |
+ /** |
+ * Tests that a Weblite url from an external app does not use the lite_url param when Data |
+ * Reduction Proxy previews are not being used. |
+ */ |
+ @MediumTest |
+ public void testLaunchWebLiteURLNoPreviews() throws InterruptedException { |
+ startMainActivityFromLauncher(); |
+ |
+ String url = "http://googleweblight.com/?lite_url=chrome/test/data/android/about.html"; |
+ |
+ // Launch a first URL from an app. |
+ launchUrlFromExternalApp(url, url, EXTERNAL_APP_1_ID, false, null); |
+ |
+ assertEquals("Selected tab is not on the right URL.", |
+ url, getActivity().getActivityTab().getUrl()); |
+ } |
} |