| 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.graphics.Bitmap; | 7 import android.graphics.Bitmap; |
| 8 import android.graphics.BitmapFactory; | 8 import android.graphics.BitmapFactory; |
| 9 import android.graphics.Canvas; | 9 import android.graphics.Canvas; |
| 10 import android.os.Build; | 10 import android.os.Build; |
| 11 import android.os.Handler; | 11 import android.os.Handler; |
| 12 import android.os.Looper; | 12 import android.os.Looper; |
| 13 import android.os.Message; | 13 import android.os.Message; |
| 14 import android.test.UiThreadTest; | 14 import android.test.UiThreadTest; |
| 15 import android.test.suitebuilder.annotation.LargeTest; | 15 import android.test.suitebuilder.annotation.LargeTest; |
| 16 import android.test.suitebuilder.annotation.SmallTest; | 16 import android.test.suitebuilder.annotation.SmallTest; |
| 17 import android.util.Pair; | 17 import android.util.Pair; |
| 18 import android.view.KeyEvent; | 18 import android.view.KeyEvent; |
| 19 import android.view.View; | 19 import android.view.View; |
| 20 import android.webkit.JavascriptInterface; | 20 import android.webkit.JavascriptInterface; |
| 21 | 21 |
| 22 import org.apache.http.Header; | 22 import org.apache.http.Header; |
| 23 import org.apache.http.HttpRequest; | 23 import org.apache.http.HttpRequest; |
| 24 import org.chromium.android_webview.AwContents; | 24 import org.chromium.android_webview.AwContents; |
| 25 import org.chromium.android_webview.AwSettings; | 25 import org.chromium.android_webview.AwSettings; |
| 26 import org.chromium.android_webview.test.TestAwContentsClient.OnDownloadStartHel
per; | 26 import org.chromium.android_webview.test.TestAwContentsClient.OnDownloadStartHel
per; |
| 27 import org.chromium.android_webview.test.util.CommonResources; | 27 import org.chromium.android_webview.test.util.CommonResources; |
| 28 import org.chromium.base.annotations.SuppressFBWarnings; |
| 28 import org.chromium.base.test.util.Feature; | 29 import org.chromium.base.test.util.Feature; |
| 29 import org.chromium.base.test.util.MinAndroidSdkLevel; | 30 import org.chromium.base.test.util.MinAndroidSdkLevel; |
| 30 import org.chromium.content.browser.test.util.CallbackHelper; | 31 import org.chromium.content.browser.test.util.CallbackHelper; |
| 31 import org.chromium.content_public.browser.LoadUrlParams; | 32 import org.chromium.content_public.browser.LoadUrlParams; |
| 32 import org.chromium.net.test.util.TestWebServer; | 33 import org.chromium.net.test.util.TestWebServer; |
| 33 | 34 |
| 34 import java.io.InputStream; | 35 import java.io.InputStream; |
| 35 import java.net.URL; | 36 import java.net.URL; |
| 36 import java.util.ArrayList; | 37 import java.util.ArrayList; |
| 37 import java.util.HashMap; | 38 import java.util.HashMap; |
| (...skipping 423 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 461 int currentCallCount = onPageFinishedHelper.getCallCount(); | 462 int currentCallCount = onPageFinishedHelper.getCallCount(); |
| 462 loadUrlAsync(awContents, | 463 loadUrlAsync(awContents, |
| 463 "file:///file-that-does-not-exist#<script>window.failed = true;<
/script>"); | 464 "file:///file-that-does-not-exist#<script>window.failed = true;<
/script>"); |
| 464 onPageFinishedHelper.waitForCallback(currentCallCount, 1, WAIT_TIMEOUT_M
S, | 465 onPageFinishedHelper.waitForCallback(currentCallCount, 1, WAIT_TIMEOUT_M
S, |
| 465 TimeUnit.MILLISECONDS); | 466 TimeUnit.MILLISECONDS); |
| 466 | 467 |
| 467 assertEquals("false", executeJavaScriptAndWaitForResult(awContents, mCon
tentsClient, | 468 assertEquals("false", executeJavaScriptAndWaitForResult(awContents, mCon
tentsClient, |
| 468 script)); | 469 script)); |
| 469 } | 470 } |
| 470 | 471 |
| 472 @SuppressFBWarnings("DLS_DEAD_LOCAL_STORE") |
| 471 @Feature({"AndroidWebView"}) | 473 @Feature({"AndroidWebView"}) |
| 472 @SmallTest | 474 @SmallTest |
| 473 public void testCanInjectHeaders() throws Throwable { | 475 public void testCanInjectHeaders() throws Throwable { |
| 474 final AwTestContainerView testContainer = | 476 final AwTestContainerView testContainer = |
| 475 createAwTestContainerViewOnMainSync(mContentsClient); | 477 createAwTestContainerViewOnMainSync(mContentsClient); |
| 476 final AwContents awContents = testContainer.getAwContents(); | 478 final AwContents awContents = testContainer.getAwContents(); |
| 477 | 479 |
| 478 TestWebServer webServer = TestWebServer.start(); | 480 TestWebServer webServer = TestWebServer.start(); |
| 479 try { | 481 try { |
| 480 final String pagePath = "/test_can_inject_headers.html"; | 482 final String pagePath = "/test_can_inject_headers.html"; |
| (...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 576 AwContents awContents = testView.getAwContents(); | 578 AwContents awContents = testView.getAwContents(); |
| 577 | 579 |
| 578 String script = "window.Notification || window.PushManager"; | 580 String script = "window.Notification || window.PushManager"; |
| 579 | 581 |
| 580 enableJavaScriptOnUiThread(awContents); | 582 enableJavaScriptOnUiThread(awContents); |
| 581 loadUrlSync(awContents, mContentsClient.getOnPageFinishedHelper(), "abou
t:blank"); | 583 loadUrlSync(awContents, mContentsClient.getOnPageFinishedHelper(), "abou
t:blank"); |
| 582 assertEquals("null", executeJavaScriptAndWaitForResult(awContents, mCont
entsClient, | 584 assertEquals("null", executeJavaScriptAndWaitForResult(awContents, mCont
entsClient, |
| 583 script)); | 585 script)); |
| 584 } | 586 } |
| 585 } | 587 } |
| OLD | NEW |