| Index: chrome/test/data/extensions/api_test/webrequest/test_post.js
|
| diff --git a/chrome/test/data/extensions/api_test/webrequest/test_post.js b/chrome/test/data/extensions/api_test/webrequest/test_post.js
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..c600d5c5e1271d154dc64bb5155fc9ee290aa134
|
| --- /dev/null
|
| +++ b/chrome/test/data/extensions/api_test/webrequest/test_post.js
|
| @@ -0,0 +1,122 @@
|
| +// Copyright (c) 2012 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +function postData(formFile, includePostData) {
|
| + var formData = {
|
| + check: ["option_A"],
|
| + password: ["password"],
|
| + radio: ["Yes"],
|
| + select: ["one"],
|
| + text1: ["TEST_TEXT_1"],
|
| + text2: ["TEST_TEXT_2"],
|
| + text3: ["TEST_TEXT_3"],
|
| + txtarea: ["Text"]
|
| + };
|
| + return function submitForm() {
|
| + expect(
|
| + [ // events
|
| + { label: "a-onBeforeRequest",
|
| + event: "onBeforeRequest",
|
| + details: {
|
| + method: "GET",
|
| + type: "main_frame",
|
| + url: getURL("postData/" + formFile),
|
| + frameUrl: getURL("postData/" + formFile)
|
| + }
|
| + },
|
| + { label: "a-onResponseStarted",
|
| + event: "onResponseStarted",
|
| + details: {
|
| + fromCache: false,
|
| + method: "GET",
|
| + statusCode: 200,
|
| + statusLine: "HTTP/1.1 200 OK",
|
| + type: "main_frame",
|
| + url: getURL("postData/" + formFile)
|
| + }
|
| + },
|
| + { label: "a-onCompleted",
|
| + event: "onCompleted",
|
| + details: {
|
| + fromCache: false,
|
| + method: "GET",
|
| + statusCode: 200,
|
| + statusLine: "HTTP/1.1 200 OK",
|
| + type: "main_frame",
|
| + url: getURL("postData/" + formFile)
|
| + }
|
| + },
|
| + { label: "s-onBeforeRequest",
|
| + event: "onBeforeRequest",
|
| + details: {
|
| + method: "GET",
|
| + type: "script",
|
| + url: getURL("postData/submit.js"),
|
| + frameUrl: getURL("postData/" + formFile)
|
| + }
|
| + },
|
| + { label: "s-onResponseStarted",
|
| + event: "onResponseStarted",
|
| + details: {
|
| + fromCache: false,
|
| + method: "GET",
|
| + statusCode: 200,
|
| + statusLine: "HTTP/1.1 200 OK",
|
| + type: "script",
|
| + url: getURL("postData/submit.js")
|
| + }
|
| + },
|
| + { label: "s-onCompleted",
|
| + event: "onCompleted",
|
| + details: {
|
| + fromCache: false,
|
| + method: "GET",
|
| + statusCode: 200,
|
| + statusLine: "HTTP/1.1 200 OK",
|
| + type: "script",
|
| + url: getURL("postData/submit.js")
|
| + }
|
| + },
|
| + { label: "b-onBeforeRequest",
|
| + event: "onBeforeRequest",
|
| + details: {
|
| + method: "POST",
|
| + type: "main_frame",
|
| + url: getURL("postData/nonExistingTarget.html"),
|
| + frameUrl: getURL("postData/nonExistingTarget.html"),
|
| + postData: includePostData ? {
|
| + formData: formData
|
| + } : {}
|
| + }
|
| + },
|
| + { label: "b-onErrorOccurred",
|
| + event: "onErrorOccurred",
|
| + details: {
|
| + error: "net::ERR_FILE_NOT_FOUND",
|
| + fromCache: false,
|
| + method: "POST",
|
| + type: "main_frame",
|
| + url: getURL("postData/nonExistingTarget.html")
|
| + }
|
| + }
|
| + ],
|
| + [ // event order
|
| + ["a-onBeforeRequest", "a-onResponseStarted", "a-onCompleted",
|
| + "s-onBeforeRequest", "s-onResponseStarted", "s-onCompleted",
|
| + "b-onBeforeRequest", "b-onErrorOccurred"]
|
| + ],
|
| + {urls: ["<all_urls>"]}, // filter
|
| + ["postData"]);
|
| + navigateAndWait(getURL("postData/" + formFile));
|
| + close();
|
| + }
|
| +}
|
| +
|
| +runTests([
|
| + // Navigates to a page with a form and submits it.
|
| + postData('no-enctype.html', true),
|
| + postData('urlencoded.html', true),
|
| + postData('multipart.html', true),
|
| + postData('plaintext.html', false),
|
| +]);
|
|
|