OLD | NEW |
1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 package org.chromium.android_webview.test; | 5 package org.chromium.android_webview.test; |
6 | 6 |
7 import android.test.suitebuilder.annotation.SmallTest; | 7 import android.test.suitebuilder.annotation.SmallTest; |
8 import android.util.Pair; | 8 import android.util.Pair; |
9 | 9 |
10 import org.chromium.android_webview.AwContents; | 10 import org.chromium.android_webview.AwContents; |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
57 final TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOver
rideHelper, | 57 final TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOver
rideHelper, |
58 final boolean value) throws Throwable { | 58 final boolean value) throws Throwable { |
59 runTestOnUiThread(new Runnable() { | 59 runTestOnUiThread(new Runnable() { |
60 @Override | 60 @Override |
61 public void run() { | 61 public void run() { |
62 shouldOverrideHelper.setShouldOverrideUrlLoadingReturnValue(valu
e); | 62 shouldOverrideHelper.setShouldOverrideUrlLoadingReturnValue(valu
e); |
63 } | 63 } |
64 }); | 64 }); |
65 } | 65 } |
66 | 66 |
67 private String makeHtmlPageFrom(String headers, String body) { | 67 private String getTestPageCommonHeaders() { |
68 return CommonResources.makeHtmlPageFrom("<title>" + TITLE + "</title> "
+ headers, body); | 68 return "<title>" + TITLE + "</title> "; |
69 } | 69 } |
70 | 70 |
71 private String getHtmlForPageWithSimpleLinkTo(String destination) { | 71 private String makeHtmlPageFrom(String headers, String body) { |
72 return makeHtmlPageFrom("", | 72 return CommonResources.makeHtmlPageFrom(getTestPageCommonHeaders() + hea
ders, body); |
73 "<a href=\"" + destination + "\" id=\"link\">" + | |
74 "<img class=\"big\" />" + | |
75 "</a>"); | |
76 } | 73 } |
77 | 74 |
78 private String getHtmlForPageWithJsAssignLinkTo(String url) { | 75 private String getHtmlForPageWithJsAssignLinkTo(String url) { |
79 return makeHtmlPageFrom("", | 76 return makeHtmlPageFrom("", |
80 "<img onclick=\"location.href='" + url + "'\" class=\"big\" id=\
"link\" />"); | 77 "<img onclick=\"location.href='" + url + "'\" class=\"big\" id=\
"link\" />"); |
81 } | 78 } |
82 | 79 |
83 private String getHtmlForPageWithJsReplaceLinkTo(String url) { | 80 private String getHtmlForPageWithJsReplaceLinkTo(String url) { |
84 return makeHtmlPageFrom("", | 81 return makeHtmlPageFrom("", |
85 "<img onclick=\"location.replace('" + url + "');\" class=\"big\"
id=\"link\" />"); | 82 "<img onclick=\"location.replace('" + url + "');\" class=\"big\"
id=\"link\" />"); |
(...skipping 11 matching lines...) Expand all Loading... |
97 "location.href = '" + url + "';" + | 94 "location.href = '" + url + "';" + |
98 "} " + | 95 "} " + |
99 "function doRedirectReplace() {" + | 96 "function doRedirectReplace() {" + |
100 "location.replace('" + url + "');" + | 97 "location.replace('" + url + "');" + |
101 "} " + | 98 "} " + |
102 "</script>", | 99 "</script>", |
103 String.format("<iframe onLoad=\"setTimeout('doRedirect%s()', %d)
;\" />", | 100 String.format("<iframe onLoad=\"setTimeout('doRedirect%s()', %d)
;\" />", |
104 method, timeout)); | 101 method, timeout)); |
105 } | 102 } |
106 | 103 |
107 private String getHtmlForPageWithSimplePostFormTo(String destination) { | |
108 return makeHtmlPageFrom("", | |
109 "<form action=\"" + destination + "\" method=\"post\">" + | |
110 "<input type=\"submit\" value=\"post\" id=\"link\">" + | |
111 "</form>"); | |
112 } | |
113 | |
114 private String addPageToTestServer(TestWebServer webServer, String httpPath,
String html) { | 104 private String addPageToTestServer(TestWebServer webServer, String httpPath,
String html) { |
115 List<Pair<String, String>> headers = new ArrayList<Pair<String, String>>
(); | 105 List<Pair<String, String>> headers = new ArrayList<Pair<String, String>>
(); |
116 headers.add(Pair.create("Content-Type", "text/html")); | 106 headers.add(Pair.create("Content-Type", "text/html")); |
117 headers.add(Pair.create("Cache-Control", "no-store")); | 107 headers.add(Pair.create("Cache-Control", "no-store")); |
118 return webServer.setResponse(httpPath, html, headers); | 108 return webServer.setResponse(httpPath, html, headers); |
119 } | 109 } |
120 | 110 |
121 private String createRedirectTargetPage(TestWebServer webServer) { | 111 private String createRedirectTargetPage(TestWebServer webServer) { |
122 return addPageToTestServer(webServer, REDIRECT_TARGET_PATH, | 112 return addPageToTestServer(webServer, REDIRECT_TARGET_PATH, |
123 makeHtmlPageFrom("", "<div>This is the end of the redirect chain
</div>")); | 113 makeHtmlPageFrom("", "<div>This is the end of the redirect chain
</div>")); |
124 } | 114 } |
125 | 115 |
126 @SmallTest | 116 @SmallTest |
127 @Feature({"AndroidWebView", "Navigation"}) | 117 @Feature({"AndroidWebView", "Navigation"}) |
128 public void testNotCalledOnLoadUrl() throws Throwable { | 118 public void testNotCalledOnLoadUrl() throws Throwable { |
129 final TestAwContentsClient contentsClient = new TestAwContentsClient(); | 119 final TestAwContentsClient contentsClient = new TestAwContentsClient(); |
130 final AwTestContainerView testContainerView = | 120 final AwTestContainerView testContainerView = |
131 createAwTestContainerViewOnMainSync(contentsClient); | 121 createAwTestContainerViewOnMainSync(contentsClient); |
132 final AwContents awContents = testContainerView.getAwContents(); | 122 final AwContents awContents = testContainerView.getAwContents(); |
133 TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverrideUrlLoa
dingHelper = | 123 TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverrideUrlLoa
dingHelper = |
134 contentsClient.getShouldOverrideUrlLoadingHelper(); | 124 contentsClient.getShouldOverrideUrlLoadingHelper(); |
135 | 125 |
136 loadDataSync(awContents, contentsClient.getOnPageFinishedHelper(), | 126 loadDataSync(awContents, contentsClient.getOnPageFinishedHelper(), |
137 getHtmlForPageWithSimpleLinkTo(DATA_URL), "text/html", false); | 127 CommonResources.makeHtmlPageWithSimpleLinkTo(DATA_URL), "text/ht
ml", false); |
138 | 128 |
139 assertEquals(0, shouldOverrideUrlLoadingHelper.getCallCount()); | 129 assertEquals(0, shouldOverrideUrlLoadingHelper.getCallCount()); |
140 } | 130 } |
141 | 131 |
142 private void waitForNavigationRunnableAndAssertTitleChanged(AwContents awCon
tents, | 132 private void waitForNavigationRunnableAndAssertTitleChanged(AwContents awCon
tents, |
143 CallbackHelper onPageFinishedHelper, | 133 CallbackHelper onPageFinishedHelper, |
144 Runnable navigationRunnable) throws Exception { | 134 Runnable navigationRunnable) throws Exception { |
145 final int callCount = onPageFinishedHelper.getCallCount(); | 135 final int callCount = onPageFinishedHelper.getCallCount(); |
146 final String oldTitle = getTitleOnUiThread(awContents); | 136 final String oldTitle = getTitleOnUiThread(awContents); |
147 getInstrumentation().runOnMainSync(navigationRunnable); | 137 getInstrumentation().runOnMainSync(navigationRunnable); |
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
210 final TestAwContentsClient contentsClient = new TestAwContentsClient(); | 200 final TestAwContentsClient contentsClient = new TestAwContentsClient(); |
211 final AwTestContainerView testContainerView = | 201 final AwTestContainerView testContainerView = |
212 createAwTestContainerViewOnMainSync(contentsClient); | 202 createAwTestContainerViewOnMainSync(contentsClient); |
213 final AwContents awContents = testContainerView.getAwContents(); | 203 final AwContents awContents = testContainerView.getAwContents(); |
214 TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverrideUrlLoa
dingHelper = | 204 TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverrideUrlLoa
dingHelper = |
215 contentsClient.getShouldOverrideUrlLoadingHelper(); | 205 contentsClient.getShouldOverrideUrlLoadingHelper(); |
216 | 206 |
217 setShouldOverrideUrlLoadingReturnValueOnUiThread(shouldOverrideUrlLoadin
gHelper, true); | 207 setShouldOverrideUrlLoadingReturnValueOnUiThread(shouldOverrideUrlLoadin
gHelper, true); |
218 | 208 |
219 loadDataSync(awContents, contentsClient.getOnPageFinishedHelper(), | 209 loadDataSync(awContents, contentsClient.getOnPageFinishedHelper(), |
220 getHtmlForPageWithSimpleLinkTo(DATA_URL), "text/html", false); | 210 CommonResources.makeHtmlPageWithSimpleLinkTo(getTestPageCommonHe
aders(), |
| 211 DATA_URL), "text/html", false); |
221 | 212 |
222 assertEquals(TITLE, getTitleOnUiThread(awContents)); | 213 assertEquals(TITLE, getTitleOnUiThread(awContents)); |
223 } | 214 } |
224 | 215 |
225 @SmallTest | 216 @SmallTest |
226 @Feature({"AndroidWebView", "Navigation"}) | 217 @Feature({"AndroidWebView", "Navigation"}) |
227 public void testCalledBeforeOnPageStarted() throws Throwable { | 218 public void testCalledBeforeOnPageStarted() throws Throwable { |
228 final TestAwContentsClient contentsClient = new TestAwContentsClient(); | 219 final TestAwContentsClient contentsClient = new TestAwContentsClient(); |
229 final AwTestContainerView testContainerView = | 220 final AwTestContainerView testContainerView = |
230 createAwTestContainerViewOnMainSync(contentsClient); | 221 createAwTestContainerViewOnMainSync(contentsClient); |
231 final AwContents awContents = testContainerView.getAwContents(); | 222 final AwContents awContents = testContainerView.getAwContents(); |
232 TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverrideUrlLoa
dingHelper = | 223 TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverrideUrlLoa
dingHelper = |
233 contentsClient.getShouldOverrideUrlLoadingHelper(); | 224 contentsClient.getShouldOverrideUrlLoadingHelper(); |
234 OnPageStartedHelper onPageStartedHelper = contentsClient.getOnPageStarte
dHelper(); | 225 OnPageStartedHelper onPageStartedHelper = contentsClient.getOnPageStarte
dHelper(); |
235 | 226 |
236 loadDataSync(awContents, contentsClient.getOnPageFinishedHelper(), | 227 loadDataSync(awContents, contentsClient.getOnPageFinishedHelper(), |
237 getHtmlForPageWithSimpleLinkTo(DATA_URL), "text/html", false); | 228 CommonResources.makeHtmlPageWithSimpleLinkTo(DATA_URL), "text/ht
ml", false); |
238 | 229 |
239 final int shouldOverrideUrlLoadingCallCount = shouldOverrideUrlLoadingHe
lper.getCallCount(); | 230 final int shouldOverrideUrlLoadingCallCount = shouldOverrideUrlLoadingHe
lper.getCallCount(); |
240 final int onPageStartedCallCount = onPageStartedHelper.getCallCount(); | 231 final int onPageStartedCallCount = onPageStartedHelper.getCallCount(); |
241 setShouldOverrideUrlLoadingReturnValueOnUiThread(shouldOverrideUrlLoadin
gHelper, true); | 232 setShouldOverrideUrlLoadingReturnValueOnUiThread(shouldOverrideUrlLoadin
gHelper, true); |
242 clickOnLinkUsingJs(awContents, contentsClient); | 233 clickOnLinkUsingJs(awContents, contentsClient); |
243 | 234 |
244 shouldOverrideUrlLoadingHelper.waitForCallback(shouldOverrideUrlLoadingC
allCount); | 235 shouldOverrideUrlLoadingHelper.waitForCallback(shouldOverrideUrlLoadingC
allCount); |
245 assertEquals(onPageStartedCallCount, onPageStartedHelper.getCallCount())
; | 236 assertEquals(onPageStartedCallCount, onPageStartedHelper.getCallCount())
; |
246 } | 237 } |
247 | 238 |
248 | 239 |
249 @SmallTest | 240 @SmallTest |
250 @Feature({"AndroidWebView", "Navigation"}) | 241 @Feature({"AndroidWebView", "Navigation"}) |
251 public void testDoesNotCauseOnReceivedError() throws Throwable { | 242 public void testDoesNotCauseOnReceivedError() throws Throwable { |
252 final TestAwContentsClient contentsClient = new TestAwContentsClient(); | 243 final TestAwContentsClient contentsClient = new TestAwContentsClient(); |
253 final AwTestContainerView testContainerView = | 244 final AwTestContainerView testContainerView = |
254 createAwTestContainerViewOnMainSync(contentsClient); | 245 createAwTestContainerViewOnMainSync(contentsClient); |
255 final AwContents awContents = testContainerView.getAwContents(); | 246 final AwContents awContents = testContainerView.getAwContents(); |
256 final TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverride
UrlLoadingHelper = | 247 final TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverride
UrlLoadingHelper = |
257 contentsClient.getShouldOverrideUrlLoadingHelper(); | 248 contentsClient.getShouldOverrideUrlLoadingHelper(); |
258 OnReceivedErrorHelper onReceivedErrorHelper = contentsClient.getOnReceiv
edErrorHelper(); | 249 OnReceivedErrorHelper onReceivedErrorHelper = contentsClient.getOnReceiv
edErrorHelper(); |
259 final int onReceivedErrorCallCount = onReceivedErrorHelper.getCallCount(
); | 250 final int onReceivedErrorCallCount = onReceivedErrorHelper.getCallCount(
); |
260 | 251 |
261 loadDataSync(awContents, contentsClient.getOnPageFinishedHelper(), | 252 loadDataSync(awContents, contentsClient.getOnPageFinishedHelper(), |
262 getHtmlForPageWithSimpleLinkTo(DATA_URL), "text/html", false); | 253 CommonResources.makeHtmlPageWithSimpleLinkTo(DATA_URL), "text/ht
ml", false); |
263 | 254 |
264 final int shouldOverrideUrlLoadingCallCount = shouldOverrideUrlLoadingHe
lper.getCallCount(); | 255 final int shouldOverrideUrlLoadingCallCount = shouldOverrideUrlLoadingHe
lper.getCallCount(); |
265 | 256 |
266 setShouldOverrideUrlLoadingReturnValueOnUiThread(shouldOverrideUrlLoadin
gHelper, true); | 257 setShouldOverrideUrlLoadingReturnValueOnUiThread(shouldOverrideUrlLoadin
gHelper, true); |
267 | 258 |
268 clickOnLinkUsingJs(awContents, contentsClient); | 259 clickOnLinkUsingJs(awContents, contentsClient); |
269 | 260 |
270 shouldOverrideUrlLoadingHelper.waitForCallback(shouldOverrideUrlLoadingC
allCount); | 261 shouldOverrideUrlLoadingHelper.waitForCallback(shouldOverrideUrlLoadingC
allCount); |
271 | 262 |
272 setShouldOverrideUrlLoadingReturnValueOnUiThread(shouldOverrideUrlLoadin
gHelper, false); | 263 setShouldOverrideUrlLoadingReturnValueOnUiThread(shouldOverrideUrlLoadin
gHelper, false); |
(...skipping 21 matching lines...) Expand all Loading... |
294 final TestAwContentsClient contentsClient = new TestAwContentsClient(); | 285 final TestAwContentsClient contentsClient = new TestAwContentsClient(); |
295 final AwTestContainerView testContainerView = | 286 final AwTestContainerView testContainerView = |
296 createAwTestContainerViewOnMainSync(contentsClient); | 287 createAwTestContainerViewOnMainSync(contentsClient); |
297 final AwContents awContents = testContainerView.getAwContents(); | 288 final AwContents awContents = testContainerView.getAwContents(); |
298 final TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverride
UrlLoadingHelper = | 289 final TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverride
UrlLoadingHelper = |
299 contentsClient.getShouldOverrideUrlLoadingHelper(); | 290 contentsClient.getShouldOverrideUrlLoadingHelper(); |
300 | 291 |
301 final String anchorLinkPath = "/anchor_link.html"; | 292 final String anchorLinkPath = "/anchor_link.html"; |
302 final String anchorLinkUrl = mWebServer.getResponseUrl(anchorLinkPath); | 293 final String anchorLinkUrl = mWebServer.getResponseUrl(anchorLinkPath); |
303 addPageToTestServer(mWebServer, anchorLinkPath, | 294 addPageToTestServer(mWebServer, anchorLinkPath, |
304 getHtmlForPageWithSimpleLinkTo(anchorLinkUrl + "#anchor")); | 295 CommonResources.makeHtmlPageWithSimpleLinkTo(anchorLinkUrl + "#a
nchor")); |
305 | 296 |
306 if (useLoadData) { | 297 if (useLoadData) { |
307 loadDataSync(awContents, contentsClient.getOnPageFinishedHelper(), | 298 loadDataSync(awContents, contentsClient.getOnPageFinishedHelper(), |
308 getHtmlForPageWithSimpleLinkTo("#anchor"), "text/html", fals
e); | 299 CommonResources.makeHtmlPageWithSimpleLinkTo("#anchor"), "te
xt/html", false); |
309 } else { | 300 } else { |
310 loadUrlSync(awContents, contentsClient.getOnPageFinishedHelper(), an
chorLinkUrl); | 301 loadUrlSync(awContents, contentsClient.getOnPageFinishedHelper(), an
chorLinkUrl); |
311 } | 302 } |
312 | 303 |
313 final int shouldOverrideUrlLoadingCallCount = | 304 final int shouldOverrideUrlLoadingCallCount = |
314 shouldOverrideUrlLoadingHelper.getCallCount(); | 305 shouldOverrideUrlLoadingHelper.getCallCount(); |
315 | 306 |
316 clickOnLinkUsingJs(awContents, contentsClient); | 307 clickOnLinkUsingJs(awContents, contentsClient); |
317 | 308 |
318 // After we load this URL we're certain that any in-flight callbacks for
the previous | 309 // After we load this URL we're certain that any in-flight callbacks for
the previous |
319 // navigation have been delivered. | 310 // navigation have been delivered. |
320 loadUrlSync(awContents, contentsClient.getOnPageFinishedHelper(), ABOUT_
BLANK_URL); | 311 loadUrlSync(awContents, contentsClient.getOnPageFinishedHelper(), ABOUT_
BLANK_URL); |
321 | 312 |
322 assertEquals(shouldOverrideUrlLoadingCallCount, | 313 assertEquals(shouldOverrideUrlLoadingCallCount, |
323 shouldOverrideUrlLoadingHelper.getCallCount()); | 314 shouldOverrideUrlLoadingHelper.getCallCount()); |
324 } | 315 } |
325 | 316 |
326 @SmallTest | 317 @SmallTest |
327 @Feature({"AndroidWebView", "Navigation"}) | 318 @Feature({"AndroidWebView", "Navigation"}) |
328 public void testCalledWhenLinkClicked() throws Throwable { | 319 public void testCalledWhenLinkClicked() throws Throwable { |
329 final TestAwContentsClient contentsClient = new TestAwContentsClient(); | 320 final TestAwContentsClient contentsClient = new TestAwContentsClient(); |
330 final AwTestContainerView testContainerView = | 321 final AwTestContainerView testContainerView = |
331 createAwTestContainerViewOnMainSync(contentsClient); | 322 createAwTestContainerViewOnMainSync(contentsClient); |
332 final AwContents awContents = testContainerView.getAwContents(); | 323 final AwContents awContents = testContainerView.getAwContents(); |
333 TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverrideUrlLoa
dingHelper = | 324 TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverrideUrlLoa
dingHelper = |
334 contentsClient.getShouldOverrideUrlLoadingHelper(); | 325 contentsClient.getShouldOverrideUrlLoadingHelper(); |
335 | 326 |
336 // We can't go to about:blank from here because we'd get a cross-origin
error. | 327 // We can't go to about:blank from here because we'd get a cross-origin
error. |
337 loadDataSync(awContents, contentsClient.getOnPageFinishedHelper(), | 328 loadDataSync(awContents, contentsClient.getOnPageFinishedHelper(), |
338 getHtmlForPageWithSimpleLinkTo(DATA_URL), "text/html", false); | 329 CommonResources.makeHtmlPageWithSimpleLinkTo(DATA_URL), "text/ht
ml", false); |
339 | 330 |
340 int callCount = shouldOverrideUrlLoadingHelper.getCallCount(); | 331 int callCount = shouldOverrideUrlLoadingHelper.getCallCount(); |
341 | 332 |
342 clickOnLinkUsingJs(awContents, contentsClient); | 333 clickOnLinkUsingJs(awContents, contentsClient); |
343 | 334 |
344 shouldOverrideUrlLoadingHelper.waitForCallback(callCount); | 335 shouldOverrideUrlLoadingHelper.waitForCallback(callCount); |
345 } | 336 } |
346 | 337 |
347 @SmallTest | 338 @SmallTest |
348 @Feature({"AndroidWebView", "Navigation"}) | 339 @Feature({"AndroidWebView", "Navigation"}) |
349 public void testCalledWhenTopLevelAboutBlankNavigation() throws Throwable { | 340 public void testCalledWhenTopLevelAboutBlankNavigation() throws Throwable { |
350 final TestAwContentsClient contentsClient = new TestAwContentsClient(); | 341 final TestAwContentsClient contentsClient = new TestAwContentsClient(); |
351 final AwTestContainerView testContainerView = | 342 final AwTestContainerView testContainerView = |
352 createAwTestContainerViewOnMainSync(contentsClient); | 343 createAwTestContainerViewOnMainSync(contentsClient); |
353 final AwContents awContents = testContainerView.getAwContents(); | 344 final AwContents awContents = testContainerView.getAwContents(); |
354 TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverrideUrlLoa
dingHelper = | 345 TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverrideUrlLoa
dingHelper = |
355 contentsClient.getShouldOverrideUrlLoadingHelper(); | 346 contentsClient.getShouldOverrideUrlLoadingHelper(); |
356 | 347 |
357 final String httpPath = "/page_with_about_blank_navigation"; | 348 final String httpPath = "/page_with_about_blank_navigation"; |
358 final String httpPathOnServer = mWebServer.getResponseUrl(httpPath); | 349 final String httpPathOnServer = mWebServer.getResponseUrl(httpPath); |
359 addPageToTestServer(mWebServer, httpPath, | 350 addPageToTestServer(mWebServer, httpPath, |
360 getHtmlForPageWithSimpleLinkTo(ABOUT_BLANK_URL)); | 351 CommonResources.makeHtmlPageWithSimpleLinkTo(ABOUT_BLANK_URL)); |
361 | 352 |
362 loadUrlSync(awContents, contentsClient.getOnPageFinishedHelper(), | 353 loadUrlSync(awContents, contentsClient.getOnPageFinishedHelper(), |
363 httpPathOnServer); | 354 httpPathOnServer); |
364 | 355 |
365 int callCount = shouldOverrideUrlLoadingHelper.getCallCount(); | 356 int callCount = shouldOverrideUrlLoadingHelper.getCallCount(); |
366 | 357 |
367 clickOnLinkUsingJs(awContents, contentsClient); | 358 clickOnLinkUsingJs(awContents, contentsClient); |
368 | 359 |
369 shouldOverrideUrlLoadingHelper.waitForCallback(callCount); | 360 shouldOverrideUrlLoadingHelper.waitForCallback(callCount); |
370 assertEquals(ABOUT_BLANK_URL, | 361 assertEquals(ABOUT_BLANK_URL, |
371 shouldOverrideUrlLoadingHelper.getShouldOverrideUrlLoadingUrl())
; | 362 shouldOverrideUrlLoadingHelper.getShouldOverrideUrlLoadingUrl())
; |
372 } | 363 } |
373 | 364 |
374 @SmallTest | 365 @SmallTest |
375 @Feature({"AndroidWebView", "Navigation"}) | 366 @Feature({"AndroidWebView", "Navigation"}) |
376 public void testCalledWhenSelfLinkClicked() throws Throwable { | 367 public void testCalledWhenSelfLinkClicked() throws Throwable { |
377 final TestAwContentsClient contentsClient = new TestAwContentsClient(); | 368 final TestAwContentsClient contentsClient = new TestAwContentsClient(); |
378 final AwTestContainerView testContainerView = | 369 final AwTestContainerView testContainerView = |
379 createAwTestContainerViewOnMainSync(contentsClient); | 370 createAwTestContainerViewOnMainSync(contentsClient); |
380 final AwContents awContents = testContainerView.getAwContents(); | 371 final AwContents awContents = testContainerView.getAwContents(); |
381 TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverrideUrlLoa
dingHelper = | 372 TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverrideUrlLoa
dingHelper = |
382 contentsClient.getShouldOverrideUrlLoadingHelper(); | 373 contentsClient.getShouldOverrideUrlLoadingHelper(); |
383 | 374 |
384 final String httpPath = "/page_with_link_to_self.html"; | 375 final String httpPath = "/page_with_link_to_self.html"; |
385 final String httpPathOnServer = mWebServer.getResponseUrl(httpPath); | 376 final String httpPathOnServer = mWebServer.getResponseUrl(httpPath); |
386 addPageToTestServer(mWebServer, httpPath, | 377 addPageToTestServer(mWebServer, httpPath, |
387 getHtmlForPageWithSimpleLinkTo(httpPathOnServer)); | 378 CommonResources.makeHtmlPageWithSimpleLinkTo(httpPathOnServer)); |
388 | 379 |
389 loadUrlSync(awContents, contentsClient.getOnPageFinishedHelper(), | 380 loadUrlSync(awContents, contentsClient.getOnPageFinishedHelper(), |
390 httpPathOnServer); | 381 httpPathOnServer); |
391 | 382 |
392 int callCount = shouldOverrideUrlLoadingHelper.getCallCount(); | 383 int callCount = shouldOverrideUrlLoadingHelper.getCallCount(); |
393 | 384 |
394 clickOnLinkUsingJs(awContents, contentsClient); | 385 clickOnLinkUsingJs(awContents, contentsClient); |
395 | 386 |
396 shouldOverrideUrlLoadingHelper.waitForCallback(callCount); | 387 shouldOverrideUrlLoadingHelper.waitForCallback(callCount); |
397 assertEquals(httpPathOnServer, | 388 assertEquals(httpPathOnServer, |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
447 public void testPassesCorrectUrl() throws Throwable { | 438 public void testPassesCorrectUrl() throws Throwable { |
448 final TestAwContentsClient contentsClient = new TestAwContentsClient(); | 439 final TestAwContentsClient contentsClient = new TestAwContentsClient(); |
449 final AwTestContainerView testContainerView = | 440 final AwTestContainerView testContainerView = |
450 createAwTestContainerViewOnMainSync(contentsClient); | 441 createAwTestContainerViewOnMainSync(contentsClient); |
451 final AwContents awContents = testContainerView.getAwContents(); | 442 final AwContents awContents = testContainerView.getAwContents(); |
452 TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverrideUrlLoa
dingHelper = | 443 TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverrideUrlLoa
dingHelper = |
453 contentsClient.getShouldOverrideUrlLoadingHelper(); | 444 contentsClient.getShouldOverrideUrlLoadingHelper(); |
454 | 445 |
455 final String redirectTargetUrl = createRedirectTargetPage(mWebServer); | 446 final String redirectTargetUrl = createRedirectTargetPage(mWebServer); |
456 loadDataSync(awContents, contentsClient.getOnPageFinishedHelper(), | 447 loadDataSync(awContents, contentsClient.getOnPageFinishedHelper(), |
457 getHtmlForPageWithSimpleLinkTo(redirectTargetUrl), "text/html",
false); | 448 CommonResources.makeHtmlPageWithSimpleLinkTo(redirectTargetUrl),
"text/html", |
| 449 false); |
458 | 450 |
459 int callCount = shouldOverrideUrlLoadingHelper.getCallCount(); | 451 int callCount = shouldOverrideUrlLoadingHelper.getCallCount(); |
460 clickOnLinkUsingJs(awContents, contentsClient); | 452 clickOnLinkUsingJs(awContents, contentsClient); |
461 shouldOverrideUrlLoadingHelper.waitForCallback(callCount); | 453 shouldOverrideUrlLoadingHelper.waitForCallback(callCount); |
462 assertEquals(redirectTargetUrl, | 454 assertEquals(redirectTargetUrl, |
463 shouldOverrideUrlLoadingHelper.getShouldOverrideUrlLoadingUrl())
; | 455 shouldOverrideUrlLoadingHelper.getShouldOverrideUrlLoadingUrl())
; |
464 } | 456 } |
465 | 457 |
466 @SmallTest | 458 @SmallTest |
467 @Feature({"AndroidWebView", "Navigation"}) | 459 @Feature({"AndroidWebView", "Navigation"}) |
468 public void testCanIgnoreLoading() throws Throwable { | 460 public void testCanIgnoreLoading() throws Throwable { |
469 final TestAwContentsClient contentsClient = new TestAwContentsClient(); | 461 final TestAwContentsClient contentsClient = new TestAwContentsClient(); |
470 final AwTestContainerView testContainerView = | 462 final AwTestContainerView testContainerView = |
471 createAwTestContainerViewOnMainSync(contentsClient); | 463 createAwTestContainerViewOnMainSync(contentsClient); |
472 final AwContents awContents = testContainerView.getAwContents(); | 464 final AwContents awContents = testContainerView.getAwContents(); |
473 final TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverride
UrlLoadingHelper = | 465 final TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverride
UrlLoadingHelper = |
474 contentsClient.getShouldOverrideUrlLoadingHelper(); | 466 contentsClient.getShouldOverrideUrlLoadingHelper(); |
475 | 467 |
476 final String redirectTargetUrl = createRedirectTargetPage(mWebServer); | 468 final String redirectTargetUrl = createRedirectTargetPage(mWebServer); |
477 final String pageWithLinkToIgnorePath = "/page_with_link_to_ignore.html"
; | 469 final String pageWithLinkToIgnorePath = "/page_with_link_to_ignore.html"
; |
478 final String pageWithLinkToIgnoreUrl = addPageToTestServer(mWebServer, | 470 final String pageWithLinkToIgnoreUrl = addPageToTestServer(mWebServer, |
479 pageWithLinkToIgnorePath, | 471 pageWithLinkToIgnorePath, |
480 getHtmlForPageWithSimpleLinkTo(redirectTargetUrl)); | 472 CommonResources.makeHtmlPageWithSimpleLinkTo(redirectTargetUrl))
; |
481 final String synchronizationPath = "/sync.html"; | 473 final String synchronizationPath = "/sync.html"; |
482 final String synchronizationUrl = addPageToTestServer(mWebServer, | 474 final String synchronizationUrl = addPageToTestServer(mWebServer, |
483 synchronizationPath, | 475 synchronizationPath, |
484 getHtmlForPageWithSimpleLinkTo(redirectTargetUrl)); | 476 CommonResources.makeHtmlPageWithSimpleLinkTo(redirectTargetUrl))
; |
485 | 477 |
486 loadUrlSync(awContents, contentsClient.getOnPageFinishedHelper(), | 478 loadUrlSync(awContents, contentsClient.getOnPageFinishedHelper(), |
487 pageWithLinkToIgnoreUrl); | 479 pageWithLinkToIgnoreUrl); |
488 | 480 |
489 setShouldOverrideUrlLoadingReturnValueOnUiThread(shouldOverrideUrlLoadin
gHelper, true); | 481 setShouldOverrideUrlLoadingReturnValueOnUiThread(shouldOverrideUrlLoadin
gHelper, true); |
490 | 482 |
491 int callCount = shouldOverrideUrlLoadingHelper.getCallCount(); | 483 int callCount = shouldOverrideUrlLoadingHelper.getCallCount(); |
492 clickOnLinkUsingJs(awContents, contentsClient); | 484 clickOnLinkUsingJs(awContents, contentsClient); |
493 // Some time around here true should be returned from the shouldOverride
UrlLoading | 485 // Some time around here true should be returned from the shouldOverride
UrlLoading |
494 // callback causing the navigation caused by calling clickOnLinkUsingJs
to be ignored. | 486 // callback causing the navigation caused by calling clickOnLinkUsingJs
to be ignored. |
(...skipping 16 matching lines...) Expand all Loading... |
511 "data:text/html;base64," + | 503 "data:text/html;base64," + |
512 "PGh0bWw+PGhlYWQ+PHRpdGxlPmRhdGFVcmxUZXN0QmFzZTY0PC90aXRsZT48" + | 504 "PGh0bWw+PGhlYWQ+PHRpdGxlPmRhdGFVcmxUZXN0QmFzZTY0PC90aXRsZT48" + |
513 "L2hlYWQ+PC9odG1sPg=="; | 505 "L2hlYWQ+PC9odG1sPg=="; |
514 final TestAwContentsClient contentsClient = new TestAwContentsClient(); | 506 final TestAwContentsClient contentsClient = new TestAwContentsClient(); |
515 final AwTestContainerView testContainerView = | 507 final AwTestContainerView testContainerView = |
516 createAwTestContainerViewOnMainSync(contentsClient); | 508 createAwTestContainerViewOnMainSync(contentsClient); |
517 final AwContents awContents = testContainerView.getAwContents(); | 509 final AwContents awContents = testContainerView.getAwContents(); |
518 TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverrideUrlLoa
dingHelper = | 510 TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverrideUrlLoa
dingHelper = |
519 contentsClient.getShouldOverrideUrlLoadingHelper(); | 511 contentsClient.getShouldOverrideUrlLoadingHelper(); |
520 loadDataSync(awContents, contentsClient.getOnPageFinishedHelper(), | 512 loadDataSync(awContents, contentsClient.getOnPageFinishedHelper(), |
521 getHtmlForPageWithSimpleLinkTo(dataUrl), "text/html", false); | 513 CommonResources.makeHtmlPageWithSimpleLinkTo(dataUrl), "text/htm
l", false); |
522 | 514 |
523 int callCount = shouldOverrideUrlLoadingHelper.getCallCount(); | 515 int callCount = shouldOverrideUrlLoadingHelper.getCallCount(); |
524 clickOnLinkUsingJs(awContents, contentsClient); | 516 clickOnLinkUsingJs(awContents, contentsClient); |
525 | 517 |
526 shouldOverrideUrlLoadingHelper.waitForCallback(callCount); | 518 shouldOverrideUrlLoadingHelper.waitForCallback(callCount); |
527 assertTrue("Expected URL that starts with 'data:' but got: <" + | 519 assertTrue("Expected URL that starts with 'data:' but got: <" + |
528 shouldOverrideUrlLoadingHelper.getShouldOverrideUrlLoadingUrl
() + "> instead.", | 520 shouldOverrideUrlLoadingHelper.getShouldOverrideUrlLoadingUrl
() + "> instead.", |
529 shouldOverrideUrlLoadingHelper.getShouldOverrideUrlLoadingUrl
().startsWith( | 521 shouldOverrideUrlLoadingHelper.getShouldOverrideUrlLoadingUrl
().startsWith( |
530 "data:")); | 522 "data:")); |
531 } | 523 } |
532 | 524 |
533 @SmallTest | 525 @SmallTest |
534 @Feature({"AndroidWebView", "Navigation"}) | 526 @Feature({"AndroidWebView", "Navigation"}) |
535 public void testCalledForUnsupportedSchemes() throws Throwable { | 527 public void testCalledForUnsupportedSchemes() throws Throwable { |
536 final TestAwContentsClient contentsClient = new TestAwContentsClient(); | 528 final TestAwContentsClient contentsClient = new TestAwContentsClient(); |
537 final AwTestContainerView testContainerView = | 529 final AwTestContainerView testContainerView = |
538 createAwTestContainerViewOnMainSync(contentsClient); | 530 createAwTestContainerViewOnMainSync(contentsClient); |
539 final AwContents awContents = testContainerView.getAwContents(); | 531 final AwContents awContents = testContainerView.getAwContents(); |
540 TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverrideUrlLoa
dingHelper = | 532 TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverrideUrlLoa
dingHelper = |
541 contentsClient.getShouldOverrideUrlLoadingHelper(); | 533 contentsClient.getShouldOverrideUrlLoadingHelper(); |
542 final String unsupportedSchemeUrl = "foobar://resource/1"; | 534 final String unsupportedSchemeUrl = "foobar://resource/1"; |
543 loadDataSync(awContents, contentsClient.getOnPageFinishedHelper(), | 535 loadDataSync(awContents, contentsClient.getOnPageFinishedHelper(), |
544 getHtmlForPageWithSimpleLinkTo(unsupportedSchemeUrl), "text/html
", false); | 536 CommonResources.makeHtmlPageWithSimpleLinkTo(unsupportedSchemeUr
l), "text/html", |
| 537 false); |
545 | 538 |
546 int callCount = shouldOverrideUrlLoadingHelper.getCallCount(); | 539 int callCount = shouldOverrideUrlLoadingHelper.getCallCount(); |
547 clickOnLinkUsingJs(awContents, contentsClient); | 540 clickOnLinkUsingJs(awContents, contentsClient); |
548 | 541 |
549 shouldOverrideUrlLoadingHelper.waitForCallback(callCount); | 542 shouldOverrideUrlLoadingHelper.waitForCallback(callCount); |
550 assertEquals(unsupportedSchemeUrl, | 543 assertEquals(unsupportedSchemeUrl, |
551 shouldOverrideUrlLoadingHelper.getShouldOverrideUrlLoadingUrl())
; | 544 shouldOverrideUrlLoadingHelper.getShouldOverrideUrlLoadingUrl())
; |
552 } | 545 } |
553 | 546 |
554 @SmallTest | 547 @SmallTest |
555 @Feature({"AndroidWebView", "Navigation"}) | 548 @Feature({"AndroidWebView", "Navigation"}) |
556 public void testNotCalledForPostNavigations() throws Throwable { | 549 public void testNotCalledForPostNavigations() throws Throwable { |
557 // The reason POST requests are excluded is BUG 155250. | 550 // The reason POST requests are excluded is BUG 155250. |
558 final TestAwContentsClient contentsClient = new TestAwContentsClient(); | 551 final TestAwContentsClient contentsClient = new TestAwContentsClient(); |
559 final AwTestContainerView testContainerView = | 552 final AwTestContainerView testContainerView = |
560 createAwTestContainerViewOnMainSync(contentsClient); | 553 createAwTestContainerViewOnMainSync(contentsClient); |
561 final AwContents awContents = testContainerView.getAwContents(); | 554 final AwContents awContents = testContainerView.getAwContents(); |
562 final TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverride
UrlLoadingHelper = | 555 final TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverride
UrlLoadingHelper = |
563 contentsClient.getShouldOverrideUrlLoadingHelper(); | 556 contentsClient.getShouldOverrideUrlLoadingHelper(); |
564 | 557 |
565 final String redirectTargetUrl = createRedirectTargetPage(mWebServer); | 558 final String redirectTargetUrl = createRedirectTargetPage(mWebServer); |
566 final String postLinkUrl = addPageToTestServer(mWebServer, "/page_with_p
ost_link.html", | 559 final String postLinkUrl = addPageToTestServer(mWebServer, "/page_with_p
ost_link.html", |
567 getHtmlForPageWithSimplePostFormTo(redirectTargetUrl)); | 560 CommonResources.makeHtmlPageWithSimplePostFormTo(redirectTargetU
rl)); |
568 | 561 |
569 loadUrlSync(awContents, contentsClient.getOnPageFinishedHelper(), postLi
nkUrl); | 562 loadUrlSync(awContents, contentsClient.getOnPageFinishedHelper(), postLi
nkUrl); |
570 | 563 |
571 final int shouldOverrideUrlLoadingCallCount = | 564 final int shouldOverrideUrlLoadingCallCount = |
572 shouldOverrideUrlLoadingHelper.getCallCount(); | 565 shouldOverrideUrlLoadingHelper.getCallCount(); |
573 | 566 |
574 assertEquals(0, mWebServer.getRequestCount(REDIRECT_TARGET_PATH)); | 567 assertEquals(0, mWebServer.getRequestCount(REDIRECT_TARGET_PATH)); |
575 clickOnLinkUsingJs(awContents, contentsClient); | 568 clickOnLinkUsingJs(awContents, contentsClient); |
576 | 569 |
577 // Wait for the target URL to be fetched from the server. | 570 // Wait for the target URL to be fetched from the server. |
(...skipping 18 matching lines...) Expand all Loading... |
596 final TestAwContentsClient contentsClient = new TestAwContentsClient(); | 589 final TestAwContentsClient contentsClient = new TestAwContentsClient(); |
597 final AwTestContainerView testContainerView = | 590 final AwTestContainerView testContainerView = |
598 createAwTestContainerViewOnMainSync(contentsClient); | 591 createAwTestContainerViewOnMainSync(contentsClient); |
599 final AwContents awContents = testContainerView.getAwContents(); | 592 final AwContents awContents = testContainerView.getAwContents(); |
600 final TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverride
UrlLoadingHelper = | 593 final TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverride
UrlLoadingHelper = |
601 contentsClient.getShouldOverrideUrlLoadingHelper(); | 594 contentsClient.getShouldOverrideUrlLoadingHelper(); |
602 | 595 |
603 final String redirectTargetUrl = createRedirectTargetPage(mWebServer); | 596 final String redirectTargetUrl = createRedirectTargetPage(mWebServer); |
604 final String postToGetRedirectUrl = mWebServer.setRedirect("/302.html",
redirectTargetUrl); | 597 final String postToGetRedirectUrl = mWebServer.setRedirect("/302.html",
redirectTargetUrl); |
605 final String postLinkUrl = addPageToTestServer(mWebServer, "/page_with_p
ost_link.html", | 598 final String postLinkUrl = addPageToTestServer(mWebServer, "/page_with_p
ost_link.html", |
606 getHtmlForPageWithSimplePostFormTo(postToGetRedirectUrl)); | 599 CommonResources.makeHtmlPageWithSimplePostFormTo(postToGetRedire
ctUrl)); |
607 | 600 |
608 loadUrlSync(awContents, contentsClient.getOnPageFinishedHelper(), postLi
nkUrl); | 601 loadUrlSync(awContents, contentsClient.getOnPageFinishedHelper(), postLi
nkUrl); |
609 | 602 |
610 final int shouldOverrideUrlLoadingCallCount = | 603 final int shouldOverrideUrlLoadingCallCount = |
611 shouldOverrideUrlLoadingHelper.getCallCount(); | 604 shouldOverrideUrlLoadingHelper.getCallCount(); |
612 | 605 |
613 clickOnLinkUsingJs(awContents, contentsClient); | 606 clickOnLinkUsingJs(awContents, contentsClient); |
614 | 607 |
615 shouldOverrideUrlLoadingHelper.waitForCallback(shouldOverrideUrlLoadingC
allCount); | 608 shouldOverrideUrlLoadingHelper.waitForCallback(shouldOverrideUrlLoadingC
allCount); |
616 | 609 |
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
695 * URL. We expect two callbacks - one for the redirect link and another for
the destination. | 688 * URL. We expect two callbacks - one for the redirect link and another for
the destination. |
696 */ | 689 */ |
697 private void doTestCalledOnRedirect(TestWebServer webServer, | 690 private void doTestCalledOnRedirect(TestWebServer webServer, |
698 String redirectUrl, String redirectTarget) throws Throwable { | 691 String redirectUrl, String redirectTarget) throws Throwable { |
699 final TestAwContentsClient contentsClient = new TestAwContentsClient(); | 692 final TestAwContentsClient contentsClient = new TestAwContentsClient(); |
700 final AwTestContainerView testContainerView = | 693 final AwTestContainerView testContainerView = |
701 createAwTestContainerViewOnMainSync(contentsClient); | 694 createAwTestContainerViewOnMainSync(contentsClient); |
702 final AwContents awContents = testContainerView.getAwContents(); | 695 final AwContents awContents = testContainerView.getAwContents(); |
703 final String pageWithLinkToRedirectUrl = addPageToTestServer(webServer, | 696 final String pageWithLinkToRedirectUrl = addPageToTestServer(webServer, |
704 "/page_with_link_to_redirect.html", | 697 "/page_with_link_to_redirect.html", |
705 getHtmlForPageWithSimpleLinkTo(redirectUrl)); | 698 CommonResources.makeHtmlPageWithSimpleLinkTo(redirectUrl)); |
706 enableJavaScriptOnUiThread(awContents); | 699 enableJavaScriptOnUiThread(awContents); |
707 | 700 |
708 TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverrideUrlLoa
dingHelper = | 701 TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverrideUrlLoa
dingHelper = |
709 contentsClient.getShouldOverrideUrlLoadingHelper(); | 702 contentsClient.getShouldOverrideUrlLoadingHelper(); |
710 int directLoadCallCount = shouldOverrideUrlLoadingHelper.getCallCount(); | 703 int directLoadCallCount = shouldOverrideUrlLoadingHelper.getCallCount(); |
711 loadUrlSync(awContents, contentsClient.getOnPageFinishedHelper(), redire
ctUrl); | 704 loadUrlSync(awContents, contentsClient.getOnPageFinishedHelper(), redire
ctUrl); |
712 | 705 |
713 shouldOverrideUrlLoadingHelper.waitForCallback(directLoadCallCount, 1); | 706 shouldOverrideUrlLoadingHelper.waitForCallback(directLoadCallCount, 1); |
714 assertEquals(redirectTarget, | 707 assertEquals(redirectTarget, |
715 shouldOverrideUrlLoadingHelper.getShouldOverrideUrlLoadingUrl())
; | 708 shouldOverrideUrlLoadingHelper.getShouldOverrideUrlLoadingUrl())
; |
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
806 TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverrideUrlLoa
dingHelper = | 799 TestAwContentsClient.ShouldOverrideUrlLoadingHelper shouldOverrideUrlLoa
dingHelper = |
807 contentsClient.getShouldOverrideUrlLoadingHelper(); | 800 contentsClient.getShouldOverrideUrlLoadingHelper(); |
808 | 801 |
809 // Do a double navigagtion, the second being an effective no-op, in quic
k succession (i.e. | 802 // Do a double navigagtion, the second being an effective no-op, in quic
k succession (i.e. |
810 // without yielding the main thread inbetween). | 803 // without yielding the main thread inbetween). |
811 int currentCallCount = contentsClient.getOnPageFinishedHelper().getCallC
ount(); | 804 int currentCallCount = contentsClient.getOnPageFinishedHelper().getCallC
ount(); |
812 getInstrumentation().runOnMainSync(new Runnable() { | 805 getInstrumentation().runOnMainSync(new Runnable() { |
813 @Override | 806 @Override |
814 public void run() { | 807 public void run() { |
815 awContents.loadUrl(LoadUrlParams.createLoadDataParams( | 808 awContents.loadUrl(LoadUrlParams.createLoadDataParams( |
816 getHtmlForPageWithSimpleLinkTo(DATA_URL), "text/html", f
alse)); | 809 CommonResources.makeHtmlPageWithSimpleLinkTo(DATA_URL),
"text/html", |
| 810 false)); |
817 awContents.loadUrl(new LoadUrlParams(jsUrl)); | 811 awContents.loadUrl(new LoadUrlParams(jsUrl)); |
818 } | 812 } |
819 }); | 813 }); |
820 contentsClient.getOnPageFinishedHelper().waitForCallback(currentCallCoun
t, 1, | 814 contentsClient.getOnPageFinishedHelper().waitForCallback(currentCallCoun
t, 1, |
821 WAIT_TIMEOUT_MS, TimeUnit.MILLISECONDS); | 815 WAIT_TIMEOUT_MS, TimeUnit.MILLISECONDS); |
822 | 816 |
823 assertEquals(0, shouldOverrideUrlLoadingHelper.getCallCount()); | 817 assertEquals(0, shouldOverrideUrlLoadingHelper.getCallCount()); |
824 } | 818 } |
825 } | 819 } |
OLD | NEW |