summaryrefslogtreecommitdiffstats
path: root/devtools/client/netmonitor/test/xpcshell/test_request-utils-fetchNetworkUpdatePacket.js
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--devtools/client/netmonitor/test/xpcshell/test_request-utils-fetchNetworkUpdatePacket.js54
1 files changed, 54 insertions, 0 deletions
diff --git a/devtools/client/netmonitor/test/xpcshell/test_request-utils-fetchNetworkUpdatePacket.js b/devtools/client/netmonitor/test/xpcshell/test_request-utils-fetchNetworkUpdatePacket.js
new file mode 100644
index 0000000000..6b7a66f5ad
--- /dev/null
+++ b/devtools/client/netmonitor/test/xpcshell/test_request-utils-fetchNetworkUpdatePacket.js
@@ -0,0 +1,54 @@
+/* Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/ */
+
+// Test devtools/client/netmonitor/src/utils/request-utils.js function
+// |fetchNetworkUpdatePacket|
+
+"use strict";
+
+const { require } = ChromeUtils.importESModule(
+ "resource://devtools/shared/loader/Loader.sys.mjs"
+);
+const {
+ fetchNetworkUpdatePacket,
+} = require("resource://devtools/client/netmonitor/src/utils/request-utils.js");
+
+function run_test() {
+ let fetchedNetworkUpdateTypes = [];
+ async function mockConnectorRequestData(id, updateType) {
+ fetchedNetworkUpdateTypes.push(updateType);
+ return updateType;
+ }
+
+ const updateTypes = ["requestHeaders", "responseHeaders"];
+ const request = {
+ id: "foo",
+ requestHeadersAvailable: true,
+ responseHeadersAvailable: true,
+ };
+
+ info(
+ "Testing that the expected network update packets were fetched from the server"
+ );
+ fetchNetworkUpdatePacket(mockConnectorRequestData, request, updateTypes);
+ equal(fetchedNetworkUpdateTypes.length, 2, "Two network request updates");
+ equal(
+ fetchedNetworkUpdateTypes[0],
+ "requestHeaders",
+ "Request headers updates"
+ );
+ equal(
+ fetchedNetworkUpdateTypes[1],
+ "responseHeaders",
+ " Response headers updates"
+ );
+
+ // clear the fetch updates for next test
+ fetchedNetworkUpdateTypes = [];
+
+ info(
+ "Testing that no network updates were fetched when no `request` is provided"
+ );
+ fetchNetworkUpdatePacket(mockConnectorRequestData, undefined, updateTypes);
+ equal(fetchedNetworkUpdateTypes.length, 0, "No network request updates");
+}