From 43a97878ce14b72f0981164f87f2e35e14151312 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 11:22:09 +0200 Subject: Adding upstream version 110.0.1. Signed-off-by: Daniel Baumann --- .../jsonview/test/browser_jsonview_csp_json.js | 33 ++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 devtools/client/jsonview/test/browser_jsonview_csp_json.js (limited to 'devtools/client/jsonview/test/browser_jsonview_csp_json.js') diff --git a/devtools/client/jsonview/test/browser_jsonview_csp_json.js b/devtools/client/jsonview/test/browser_jsonview_csp_json.js new file mode 100644 index 0000000000..418ffcd3dd --- /dev/null +++ b/devtools/client/jsonview/test/browser_jsonview_csp_json.js @@ -0,0 +1,33 @@ +/* Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/publicdomain/zero/1.0/ */ + +"use strict"; + +const TEST_JSON_URL = URL_ROOT + "csp_json.json"; + +add_task(async function() { + info("Test CSP JSON started"); + + const tab = await addJsonViewTab(TEST_JSON_URL); + + const count = await getElementCount(".jsonPanelBox .treeTable .treeRow"); + is(count, 1, "There must be one row"); + + // The JSON Viewer alters the CSP, but the displayed header should be the original one + await selectJsonViewContentTab("headers"); + await SpecialPowers.spawn(tab.linkedBrowser, [], async function() { + const responseHeaders = content.document.querySelector(".netHeadersGroup"); + const names = responseHeaders.querySelectorAll(".netInfoParamName"); + let found = false; + for (const name of names) { + if (name.textContent.toLowerCase() == "content-security-policy") { + ok(!found, "The CSP header only appears once"); + found = true; + const value = name.nextElementSibling.textContent; + const expected = "default-src 'none'; base-uri 'none';"; + is(value, expected, "The CSP value has not been altered"); + } + } + ok(found, "The CSP header is present"); + }); +}); -- cgit v1.2.3