summaryrefslogtreecommitdiffstats
path: root/toolkit/components/extensions/test/xpcshell/test_ext_webRequest_requestSize.js
diff options
context:
space:
mode:
Diffstat (limited to 'toolkit/components/extensions/test/xpcshell/test_ext_webRequest_requestSize.js')
-rw-r--r--toolkit/components/extensions/test/xpcshell/test_ext_webRequest_requestSize.js57
1 files changed, 57 insertions, 0 deletions
diff --git a/toolkit/components/extensions/test/xpcshell/test_ext_webRequest_requestSize.js b/toolkit/components/extensions/test/xpcshell/test_ext_webRequest_requestSize.js
new file mode 100644
index 0000000000..69238fb057
--- /dev/null
+++ b/toolkit/components/extensions/test/xpcshell/test_ext_webRequest_requestSize.js
@@ -0,0 +1,57 @@
+"use strict";
+
+const server = createHttpServer();
+const gServerUrl = `http://localhost:${server.identity.primaryPort}`;
+
+const EXTENSION_DATA = {
+ manifest: {
+ name: "Simple extension test",
+ version: "1.0",
+ manifest_version: 2,
+ description: "",
+
+ permissions: ["webRequest", "<all_urls>"],
+ },
+
+ async background() {
+ browser.test.log("background script running");
+
+ browser.webRequest.onBeforeSendHeaders.addListener(
+ async details => {
+ browser.test.assertTrue(details.requestSize == 0, "no requestSize");
+ browser.test.assertTrue(details.responseSize == 0, "no responseSize");
+ browser.test.log(`details.requestSize: ${details.requestSize}`);
+ browser.test.log(`details.responseSize: ${details.responseSize}`);
+ browser.test.sendMessage("check");
+ },
+ { urls: ["*://*/*"] }
+ );
+
+ browser.webRequest.onCompleted.addListener(
+ async details => {
+ browser.test.assertTrue(details.requestSize > 100, "have requestSize");
+ browser.test.assertTrue(
+ details.responseSize > 100,
+ "have responseSize"
+ );
+ browser.test.log(`details.requestSize: ${details.requestSize}`);
+ browser.test.log(`details.responseSize: ${details.responseSize}`);
+ browser.test.sendMessage("done");
+ },
+ { urls: ["*://*/*"] }
+ );
+ },
+};
+
+add_task(async function test_request_response_size() {
+ let ext = ExtensionTestUtils.loadExtension(EXTENSION_DATA);
+ await ext.startup();
+
+ let contentPage = await ExtensionTestUtils.loadContentPage(
+ `${gServerUrl}/dummy`
+ );
+ await ext.awaitMessage("check");
+ await ext.awaitMessage("done");
+ await contentPage.close();
+ await ext.unload();
+});