| Index: android_webview/javatests/src/org/chromium/android_webview/test/LoadDataWithBaseUrlTest.java
|
| diff --git a/android_webview/javatests/src/org/chromium/android_webview/test/LoadDataWithBaseUrlTest.java b/android_webview/javatests/src/org/chromium/android_webview/test/LoadDataWithBaseUrlTest.java
|
| index b2f510b36c5e6b3b3b4a9d55ef1afca5818a5eaf..2decbfde6710ad2b6f8faba221700ad295aa7fa6 100644
|
| --- a/android_webview/javatests/src/org/chromium/android_webview/test/LoadDataWithBaseUrlTest.java
|
| +++ b/android_webview/javatests/src/org/chromium/android_webview/test/LoadDataWithBaseUrlTest.java
|
| @@ -42,8 +42,8 @@ public class LoadDataWithBaseUrlTest extends AwTestBase {
|
| }
|
|
|
| protected void loadDataWithBaseUrlSync(
|
| - final String data, final String mimeType, final boolean isBase64Encoded,
|
| - final String baseUrl, final String historyUrl) throws Throwable {
|
| + final String data, final String mimeType, final boolean isBase64Encoded,
|
| + final String baseUrl, final String historyUrl) throws Throwable {
|
| TestCallbackHelperContainer.OnPageFinishedHelper onPageFinishedHelper =
|
| mContentsClient.getOnPageFinishedHelper();
|
| int currentCallCount = onPageFinishedHelper.getCallCount();
|
| @@ -58,8 +58,8 @@ public class LoadDataWithBaseUrlTest extends AwTestBase {
|
| runTestOnUiThread(new Runnable() {
|
| @Override
|
| public void run() {
|
| - mAwContents.loadUrl(LoadUrlParams.createLoadDataParamsWithBaseUrl(
|
| - data, mimeType, isBase64Encoded, baseUrl, historyUrl));
|
| + mAwContents.loadUrl(AwContents.createLoadUrlParamsForLoadDataWithBaseURL(
|
| + baseUrl, data, mimeType, isBase64Encoded ? "base64" : null, historyUrl));
|
| }
|
| });
|
| }
|
| @@ -363,4 +363,23 @@ public class LoadDataWithBaseUrlTest extends AwTestBase {
|
| if (!tempImage.delete()) throw new AssertionError();
|
| }
|
| }
|
| +
|
| + @SmallTest
|
| + @Feature({"AndroidWebView"})
|
| + public void testLoadLargeData() throws Throwable {
|
| + enableJavaScriptOnUiThread(mAwContents);
|
| +
|
| + // Chrome only allows URLs up to 2MB in IPC. Test something larger than this.
|
| + final int MIN_DATA_LENGTH = 5 * 1024 * 1024;
|
| + StringBuilder doc = new StringBuilder();
|
| + doc.append("<html><head></head><body><!-- ");
|
| + int i = doc.length();
|
| + doc.setLength(MIN_DATA_LENGTH);
|
| + while (i < doc.length()) doc.setCharAt(i++, 'A');
|
| + doc.append("--> <script>window.gotToEndOfBody = true;</script> </body></html>");
|
| +
|
| + loadDataWithBaseUrlSync(doc.toString(), "text/html", false, null, null);
|
| + assertEquals("true", executeJavaScriptAndWaitForResult(mAwContents, mContentsClient,
|
| + "window.gotToEndOfBody"));
|
| + }
|
| }
|
|
|