diff options
Diffstat (limited to 'testing/web-platform/tests/html/cross-origin-opener-policy/header-parsing-failures.https.html')
-rw-r--r-- | testing/web-platform/tests/html/cross-origin-opener-policy/header-parsing-failures.https.html | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/testing/web-platform/tests/html/cross-origin-opener-policy/header-parsing-failures.https.html b/testing/web-platform/tests/html/cross-origin-opener-policy/header-parsing-failures.https.html new file mode 100644 index 0000000000..55b126ff37 --- /dev/null +++ b/testing/web-platform/tests/html/cross-origin-opener-policy/header-parsing-failures.https.html @@ -0,0 +1,90 @@ +<!doctype html> +<meta charset=utf-8> +<meta name=timeout content=long> +<meta name="variant" content="?1-4"> +<meta name="variant" content="?5-8"> +<meta name="variant" content="?9-12"> +<meta name="variant" content="?12-last"> +<script src=/resources/testharness.js></script> +<script src=/resources/testharnessreport.js></script> +<script src="/common/dispatcher/dispatcher.js"></script> +<script src="/common/get-host-info.sub.js"></script> +<script src="/common/subset-tests.js"></script> +<script src="/common/utils.js"></script> +<script src="resources/common.js"></script> +<script src="resources/popup-test.js"></script> +<script> + +[ + // None of the following should be recognized as "same-origin" (hence the + // preserved opener). + { + "title": "coop with semi-column", + "coop": "same-origin;", + }, + { + "title": "coop with vertical tab", + "coop": "\u000bsame-origin\u000b", + }, + { + "title": "coop with form feed", + "coop": "\u000csame-origin\u000c", + }, + { + "title": "coop with carriage return", + "coop": "\u000dsame-origin\u000d", + }, + { + "title": "coop with capital letter", + "coop": "Same-origin", + }, + { + "title": "coop with bad structured header 1", + "coop": "same-origin;\tfoo=bar", + }, + { + "title": "coop with bad structured header 2", + "coop": "same-origin ;foo=bar", + }, + { + "title": "coop with bad structured header 3", + "coop": "same-origin; foo=bar;", + }, + { + "title": "coop as a structured header 'string' item", + "coop": "\"same-origin\"", + }, + { + "title": "coop as a structured header 'byte sequence' item", + "coop": ":c2FtZS1vcmlnaW4=:", + }, + { + "title": "coop as a structured header 'boolean' item", + "coop": "?1", + }, + { + "title": "coop as a structured header 'integer or decimal' item", + "coop": "1", + }, + { + "title": "coop as an unrecognized structured header type", + "coop": "$same-origin", + }, + { + "title": "coop with duplicate value", + "coop": "same-origin same-origin", + }, + { + // Note: comma must be escaped here to not mess with the WPT pipe function. + "title": "coop with duplicate value, separated by a comma", + "coop": "same-origin\\,same-origin", + }, + { + "title": "coop with preceding asterisk character", + "coop": "*same-origin ", + } +].forEach(variant => { + subsetTest(popup_test, `Parsing ${variant.title}`, SAME_ORIGIN, { coop: variant.coop }, "preserved"); +}); + +</script> |