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

Unified Diff: chrome/android/javatests/src/org/chromium/chrome/browser/externalnav/UrlOverridingTest.java

Issue 2769413002: Revert of Use stricter checking in UrlOverridingTest (Closed)
Patch Set: Created 3 years, 9 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/android/javatests/src/org/chromium/chrome/browser/externalnav/UrlOverridingTest.java
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/externalnav/UrlOverridingTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/externalnav/UrlOverridingTest.java
index 2836fbe32e2a83863a31ca9d796520e000dc8c75..84ea6adaccaacf4e0cfe06533188059668b63895 100644
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/externalnav/UrlOverridingTest.java
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/externalnav/UrlOverridingTest.java
@@ -71,11 +71,14 @@
private static class TestTabObserver extends EmptyTabObserver {
private final CallbackHelper mFinishCallback;
- private final CallbackHelper mFailCallback;
-
- TestTabObserver(final CallbackHelper finishCallback, final CallbackHelper failCallback) {
+ private final CallbackHelper mPageFailCallback;
+ private final CallbackHelper mLoadFailCallback;
+
+ TestTabObserver(final CallbackHelper finishCallback, final CallbackHelper pageFailCallback,
+ final CallbackHelper loadFailCallback) {
mFinishCallback = finishCallback;
- mFailCallback = failCallback;
+ mPageFailCallback = pageFailCallback;
+ mLoadFailCallback = loadFailCallback;
}
@Override
@@ -83,13 +86,31 @@
boolean isErrorPage, boolean hasCommitted, boolean isSameDocument,
boolean isFragmentNavigation, Integer pageTransition, int errorCode,
int httpStatusCode) {
- if (errorCode == 0) return;
- mFailCallback.notifyCalled();
+ if (errorCode != 0) {
+ mLoadFailCallback.notifyCalled();
+ }
}
@Override
public void onPageLoadFinished(Tab tab) {
mFinishCallback.notifyCalled();
+ }
+
+ @Override
+ public void onPageLoadFailed(Tab tab, int errorCode) {
+ mPageFailCallback.notifyCalled();
+ }
+
+ @Override
+ public void onDidFailLoad(Tab tab, boolean isMainFrame, int errorCode, String description,
+ String failingUrl) {
+ mLoadFailCallback.notifyCalled();
+ }
+
+ @Override
+ public void onDestroyed(Tab tab) {
+ // A new tab is destroyed when loading is overridden while opening it.
+ mPageFailCallback.notifyCalled();
}
}
@@ -126,19 +147,21 @@
int expectedNewTabCount, final boolean shouldLaunchExternalIntent,
final String expectedFinalUrl, boolean isMainFrame) throws InterruptedException {
final CallbackHelper finishCallback = new CallbackHelper();
- final CallbackHelper failCallback = new CallbackHelper();
+ final CallbackHelper pageFailCallback = new CallbackHelper();
+ final CallbackHelper loadFailCallback = new CallbackHelper();
final CallbackHelper newTabCallback = new CallbackHelper();
final Tab tab = getActivity().getActivityTab();
final Tab[] latestTabHolder = new Tab[1];
latestTabHolder[0] = tab;
- tab.addObserver(new TestTabObserver(finishCallback, failCallback));
+ tab.addObserver(new TestTabObserver(finishCallback, pageFailCallback, loadFailCallback));
if (expectedNewTabCount > 0) {
getActivity().getTabModelSelector().addObserver(new EmptyTabModelSelectorObserver() {
@Override
public void onNewTabCreated(Tab newTab) {
newTabCallback.notifyCalled();
- newTab.addObserver(new TestTabObserver(finishCallback, failCallback));
+ newTab.addObserver(new TestTabObserver(
+ finishCallback, pageFailCallback, loadFailCallback));
latestTabHolder[0] = newTab;
}
});
@@ -167,26 +190,13 @@
singleClickView(tab.getView());
}
- if (failCallback.getCallCount() == 0) {
+ CallbackHelper helper = isMainFrame ? pageFailCallback : loadFailCallback;
+ if (helper.getCallCount() == 0) {
try {
- failCallback.waitForCallback(0, 1, 20, TimeUnit.SECONDS);
+ helper.waitForCallback(0, 1, 20, TimeUnit.SECONDS);
} catch (TimeoutException ex) {
fail();
return;
- }
- }
-
- boolean hasFallbackUrl =
- expectedFinalUrl != null && !TextUtils.equals(url, expectedFinalUrl);
-
- if (hasFallbackUrl) {
- if (finishCallback.getCallCount() == 1) {
- try {
- finishCallback.waitForCallback(1, 1, 20, TimeUnit.SECONDS);
- } catch (TimeoutException ex) {
- fail();
- return;
- }
}
}
@@ -215,16 +225,6 @@
|| TextUtils.equals(expectedFinalUrl, tab.getUrl());
}
});
-
- CriteriaHelper.pollUiThread(
- Criteria.equals(shouldLaunchExternalIntent ? 1 : 0, new Callable<Integer>() {
- @Override
- public Integer call() {
- return mActivityMonitor.getHits();
- }
- }));
- assertEquals(1 + (hasFallbackUrl ? 1 : 0), finishCallback.getCallCount());
- assertEquals(1, failCallback.getCallCount());
}
@SmallTest
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698