From 36d22d82aa202bb199967e9512281e9a53db42c9 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 21:33:14 +0200 Subject: Adding upstream version 115.7.0esr. Signed-off-by: Daniel Baumann --- .../web-platform/tests/fetch/nosniff/image.html | 39 ++++++++++++++ .../tests/fetch/nosniff/importscripts.html | 14 +++++ .../tests/fetch/nosniff/importscripts.js | 28 ++++++++++ .../tests/fetch/nosniff/parsing-nosniff.window.js | 27 ++++++++++ .../tests/fetch/nosniff/resources/css.py | 23 ++++++++ .../tests/fetch/nosniff/resources/image.py | 24 +++++++++ .../tests/fetch/nosniff/resources/js.py | 17 ++++++ .../tests/fetch/nosniff/resources/nosniff.py | 11 ++++ .../tests/fetch/nosniff/resources/worker.py | 16 ++++++ .../nosniff/resources/x-content-type-options.json | 62 ++++++++++++++++++++++ .../web-platform/tests/fetch/nosniff/script.html | 43 +++++++++++++++ .../tests/fetch/nosniff/stylesheet.html | 60 +++++++++++++++++++++ .../web-platform/tests/fetch/nosniff/worker.html | 28 ++++++++++ 13 files changed, 392 insertions(+) create mode 100644 testing/web-platform/tests/fetch/nosniff/image.html create mode 100644 testing/web-platform/tests/fetch/nosniff/importscripts.html create mode 100644 testing/web-platform/tests/fetch/nosniff/importscripts.js create mode 100644 testing/web-platform/tests/fetch/nosniff/parsing-nosniff.window.js create mode 100644 testing/web-platform/tests/fetch/nosniff/resources/css.py create mode 100644 testing/web-platform/tests/fetch/nosniff/resources/image.py create mode 100644 testing/web-platform/tests/fetch/nosniff/resources/js.py create mode 100644 testing/web-platform/tests/fetch/nosniff/resources/nosniff.py create mode 100644 testing/web-platform/tests/fetch/nosniff/resources/worker.py create mode 100644 testing/web-platform/tests/fetch/nosniff/resources/x-content-type-options.json create mode 100644 testing/web-platform/tests/fetch/nosniff/script.html create mode 100644 testing/web-platform/tests/fetch/nosniff/stylesheet.html create mode 100644 testing/web-platform/tests/fetch/nosniff/worker.html (limited to 'testing/web-platform/tests/fetch/nosniff') diff --git a/testing/web-platform/tests/fetch/nosniff/image.html b/testing/web-platform/tests/fetch/nosniff/image.html new file mode 100644 index 0000000000..9dfdb94cf6 --- /dev/null +++ b/testing/web-platform/tests/fetch/nosniff/image.html @@ -0,0 +1,39 @@ + + +
+ diff --git a/testing/web-platform/tests/fetch/nosniff/importscripts.html b/testing/web-platform/tests/fetch/nosniff/importscripts.html new file mode 100644 index 0000000000..920b6bdd40 --- /dev/null +++ b/testing/web-platform/tests/fetch/nosniff/importscripts.html @@ -0,0 +1,14 @@ + + +
+ diff --git a/testing/web-platform/tests/fetch/nosniff/importscripts.js b/testing/web-platform/tests/fetch/nosniff/importscripts.js new file mode 100644 index 0000000000..18952805bb --- /dev/null +++ b/testing/web-platform/tests/fetch/nosniff/importscripts.js @@ -0,0 +1,28 @@ +// Testing importScripts() +function log(w) { this.postMessage(w) } +function f() { log("FAIL") } +function p() { log("PASS") } + +const get_url = (mime, outcome) => { + let url = "resources/js.py" + if (mime != null) { + url += "?type=" + encodeURIComponent(mime) + } + if (outcome) { + url += "&outcome=p" + } + return url +} + +[null, "", "x", "x/x", "text/html", "text/json"].forEach(function(mime) { + try { + importScripts(get_url(mime)) + } catch(e) { + (e.name == "NetworkError") ? p() : log("FAIL (no NetworkError exception): " + mime) + } + +}) +importScripts(get_url("text/javascript", true)) +importScripts(get_url("text/ecmascript", true)) +importScripts(get_url("text/ecmascript;blah", true)) +log("END") diff --git a/testing/web-platform/tests/fetch/nosniff/parsing-nosniff.window.js b/testing/web-platform/tests/fetch/nosniff/parsing-nosniff.window.js new file mode 100644 index 0000000000..2a2648653c --- /dev/null +++ b/testing/web-platform/tests/fetch/nosniff/parsing-nosniff.window.js @@ -0,0 +1,27 @@ +promise_test(() => fetch("resources/x-content-type-options.json").then(res => res.json()).then(runTests), "Loading JSONā€¦"); + +function runTests(allTestData) { + for (let i = 0; i < allTestData.length; i++) { + const testData = allTestData[i], + input = encodeURIComponent(testData.input); + promise_test(t => { + let resolve; + const promise = new Promise(r => resolve = r); + const script = document.createElement("script"); + t.add_cleanup(() => script.remove()); + // A + +
+ diff --git a/testing/web-platform/tests/fetch/nosniff/stylesheet.html b/testing/web-platform/tests/fetch/nosniff/stylesheet.html new file mode 100644 index 0000000000..8f2b5476e9 --- /dev/null +++ b/testing/web-platform/tests/fetch/nosniff/stylesheet.html @@ -0,0 +1,60 @@ + + + +
+ diff --git a/testing/web-platform/tests/fetch/nosniff/worker.html b/testing/web-platform/tests/fetch/nosniff/worker.html new file mode 100644 index 0000000000..c8c1076df5 --- /dev/null +++ b/testing/web-platform/tests/fetch/nosniff/worker.html @@ -0,0 +1,28 @@ + + +
+ -- cgit v1.2.3