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

Unified Diff: chrome/android/javatests/src/org/chromium/chrome/browser/customtabs/CustomTabExternalNavigationTest.java

Issue 2826093002: Revert of customtabs: Add a test for external app redirection. (Closed)
Patch Set: 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/customtabs/CustomTabExternalNavigationTest.java
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/customtabs/CustomTabExternalNavigationTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/customtabs/CustomTabExternalNavigationTest.java
index b86be3d749f11634b11f65f9eb104b44439cccdc..ab7a16ae32f91fc6099ca51c06e2cda5a2abb1f2 100644
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/customtabs/CustomTabExternalNavigationTest.java
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/customtabs/CustomTabExternalNavigationTest.java
@@ -15,16 +15,14 @@
import org.chromium.chrome.browser.externalnav.ExternalNavigationParams;
import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.tab.TabDelegateFactory;
-import org.chromium.content.browser.test.util.Criteria;
-import org.chromium.content.browser.test.util.CriteriaHelper;
-import org.chromium.content.browser.test.util.DOMUtils;
import org.chromium.net.test.EmbeddedTestServer;
/**
- * Instrumentation tests for external navigation handling of a Custom Tab.
+ * Instrumentation test for external navigation handling of a Custom Tab.
*/
@RetryOnFailure
public class CustomTabExternalNavigationTest extends CustomTabActivityTestBase {
+
/**
* A dummy activity that claims to handle "customtab://customtabtest".
*/
@@ -64,14 +62,30 @@
super.tearDown();
}
+ @Override
+ public void startMainActivity() throws InterruptedException {
+ super.startMainActivity();
+ startCustomTabActivityWithIntent(CustomTabsTestUtils.createMinimalCustomTabIntent(
+ getInstrumentation().getTargetContext(), mTestServer.getURL(TEST_PATH)));
+ Tab tab = getActivity().getActivityTab();
+ TabDelegateFactory delegateFactory = tab.getDelegateFactory();
+ assertTrue(delegateFactory instanceof CustomTabDelegateFactory);
+ CustomTabDelegateFactory customTabDelegateFactory =
+ ((CustomTabDelegateFactory) delegateFactory);
+ mUrlHandler = customTabDelegateFactory.getExternalNavigationHandler();
+ assertTrue(customTabDelegateFactory.getExternalNavigationDelegate()
+ instanceof CustomTabNavigationDelegate);
+ mNavigationDelegate = (CustomTabNavigationDelegate) customTabDelegateFactory
+ .getExternalNavigationDelegate();
+ }
+
/**
* For urls with special schemes and hosts, and there is exactly one activity having a matching
* intent filter, the framework will make that activity the default handler of the special url.
* This test tests whether chrome is able to start the default external handler.
*/
@SmallTest
- public void testExternalActivityStartedForDefaultUrl() throws Exception {
- startCustomTabActivity(mTestServer.getURL(TEST_PATH));
+ public void testExternalActivityStartedForDefaultUrl() {
final String testUrl = "customtab://customtabtest/intent";
ExternalNavigationParams params = new ExternalNavigationParams.Builder(testUrl, false)
.build();
@@ -86,8 +100,7 @@
* be shown, even if other activities such as {@link DummyActivityForHttp} claim to handle it.
*/
@SmallTest
- public void testIntentPickerNotShownForNormalUrl() throws Exception {
- startCustomTabActivity(mTestServer.getURL(TEST_PATH));
+ public void testIntentPickerNotShownForNormalUrl() {
final String testUrl = "http://customtabtest.com";
ExternalNavigationParams params = new ExternalNavigationParams.Builder(testUrl, false)
.build();
@@ -96,40 +109,4 @@
assertFalse("External activities should not be started to handle the url",
mNavigationDelegate.hasExternalActivityStarted());
}
-
- /**
- * Launches a Custom Tab, clicks on an external app scheme link, and check that an external
- * activity has been launched.
- */
- @SmallTest
- public void testExternalApplicationLink() throws Exception {
- warmUpAndWait();
- startCustomTabActivity(mTestServer.getURL(TEST_PATH));
-
- Tab tab = getActivity().getActivityTab();
- assertTrue(DOMUtils.clickNode(tab.getContentViewCore(), "customtab-external-link"));
-
- CriteriaHelper.pollUiThread(new Criteria("External Activity not launched.") {
- @Override
- public boolean isSatisfied() {
- return mNavigationDelegate.hasExternalActivityStarted();
- }
- });
- }
-
- private void startCustomTabActivity(String url) throws InterruptedException {
- super.startMainActivity();
- startCustomTabActivityWithIntent(CustomTabsTestUtils.createMinimalCustomTabIntent(
- getInstrumentation().getTargetContext(), url));
- Tab tab = getActivity().getActivityTab();
- TabDelegateFactory delegateFactory = tab.getDelegateFactory();
- assertTrue(delegateFactory instanceof CustomTabDelegateFactory);
- CustomTabDelegateFactory customTabDelegateFactory =
- ((CustomTabDelegateFactory) delegateFactory);
- mUrlHandler = customTabDelegateFactory.getExternalNavigationHandler();
- assertTrue(customTabDelegateFactory.getExternalNavigationDelegate()
- instanceof CustomTabNavigationDelegate);
- mNavigationDelegate = (CustomTabNavigationDelegate)
- customTabDelegateFactory.getExternalNavigationDelegate();
- }
}

Powered by Google App Engine
This is Rietveld 408576698