diff options
Diffstat (limited to 'testing/web-platform/tests/referrer-policy/css-integration/child-css/processing-instruction.html')
-rw-r--r-- | testing/web-platform/tests/referrer-policy/css-integration/child-css/processing-instruction.html | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/testing/web-platform/tests/referrer-policy/css-integration/child-css/processing-instruction.html b/testing/web-platform/tests/referrer-policy/css-integration/child-css/processing-instruction.html new file mode 100644 index 0000000000..56db82c1d3 --- /dev/null +++ b/testing/web-platform/tests/referrer-policy/css-integration/child-css/processing-instruction.html @@ -0,0 +1,44 @@ +<!DOCTYPE html> +<html> + <head> + <title>CSS integration - child css via a ProcessingInstruction</title> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> + <script src="/common/utils.js"></script> + <!-- Common global functions for referrer-policy tests. --> + <script src="/common/security-features/resources/common.sub.js"></script> + <meta name="referrer" content="origin"> + </head> + <body> + <p>Check that child css are loaded with the referrer and referrer policy the + external stylesheet(referenced from a ProcessingInstruction).</p> + <div class="styled"></div> + + <script> + promise_test(function(css_test) { + let id = token(); + let url_prefix = location.protocol + "//www1." + location.hostname + ":" + + location.port + + "/common/security-features/subresource/stylesheet.py?id=" + + id; + let css_url = url_prefix + "&import-rule"; + let expected = url_prefix + "&import-rule"; + let check_url = url_prefix + "&report-headers"; + + let processingInstruction = + document.createProcessingInstruction( + "xml-stylesheet", "href=\"" +css_url + "\" type=\"text/css\""); + document.insertBefore(processingInstruction, document.firstChild); + return timeoutPromise(css_test, 1000) + .then(() => requestViaXhr(check_url)) + .then(function(message) { + assert_own_property(message, "headers"); + assert_own_property(message, "referrer"); + assert_equals(message.referrer, expected); + }); + }, "Child css via a ProcessingInstruction."); + </script> + + <div id="log"></div> + </body> +</html> |