diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 19:33:14 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 19:33:14 +0000 |
commit | 36d22d82aa202bb199967e9512281e9a53db42c9 (patch) | |
tree | 105e8c98ddea1c1e4784a60a5a6410fa416be2de /testing/web-platform/tests/content-security-policy/script-src/scriptnonce-specified-source.sub.html | |
parent | Initial commit. (diff) | |
download | firefox-esr-upstream.tar.xz firefox-esr-upstream.zip |
Adding upstream version 115.7.0esr.upstream/115.7.0esrupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/tests/content-security-policy/script-src/scriptnonce-specified-source.sub.html')
-rw-r--r-- | testing/web-platform/tests/content-security-policy/script-src/scriptnonce-specified-source.sub.html | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/testing/web-platform/tests/content-security-policy/script-src/scriptnonce-specified-source.sub.html b/testing/web-platform/tests/content-security-policy/script-src/scriptnonce-specified-source.sub.html new file mode 100644 index 0000000000..154ab68de6 --- /dev/null +++ b/testing/web-platform/tests/content-security-policy/script-src/scriptnonce-specified-source.sub.html @@ -0,0 +1,43 @@ +<!doctype html> +<script nonce="specified" src="/resources/testharness.js"></script> +<script nonce="specified" src="/resources/testharnessreport.js"></script> + +<div id=log></div> +<script nonce="specified"> + [ + { + name: 'CSP with both source and nonce should allow matching source', + src: "http://{{host}}:{{ports[http][0]}}/content-security-policy/support/alert-pass.js", + nonce: "notspecified" + }, + { + name: 'CSP with both source and nonce should allow both matching nonce and source', + src: "http://{{host}}:{{ports[http][0]}}/content-security-policy/support/alert-pass.js", + nonce: "specified" + } + ].forEach(elt => { + async_test((test) => { + const s = document.createElement('script'); + s.src = elt.src; + s.nonce = elt.nonce; + s.onload = () => test.done(); + s.onerror = test.unreached_func('Script should load correctly'); + document.body.appendChild(s); + }, elt.name); + }); + + const t = async_test('No CSP violation should fire and all scripts should load'); + let count = 0; + const expected = 2; + function alert_assert(msg) { + if (msg === "PASS") { + count++; + if (count == expected) { + t.done(); + } + } + } + + window.addEventListener('securitypolicyviolation', + t.unreached_func('No CSP violation should fire')); +</script>
\ No newline at end of file |