diff options
Diffstat (limited to 'testing/web-platform/tests/referrer-policy/css-integration/font-face/processing-instruction.html')
-rw-r--r-- | testing/web-platform/tests/referrer-policy/css-integration/font-face/processing-instruction.html | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/testing/web-platform/tests/referrer-policy/css-integration/font-face/processing-instruction.html b/testing/web-platform/tests/referrer-policy/css-integration/font-face/processing-instruction.html new file mode 100644 index 0000000000..6c864afd9a --- /dev/null +++ b/testing/web-platform/tests/referrer-policy/css-integration/font-face/processing-instruction.html @@ -0,0 +1,48 @@ +<!DOCTYPE html> +<html> + <head> + <title>CSS integration - Font from external stylesheet inserted 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="never"> + </head> + <body> + <p>Check that resources from external stylesheets (referenced from a + ProcessingInstruction) are loaded with the referrer and referrer policy + from the external stylesheet.</p> + + <div class="styled"></div> + + <script> + promise_test(function(css_test) { + let id = token(); + let url_prefix = location.protocol + "//www1." + location.hostname + ":" + location.port; + let css_url = url_prefix + + "/common/security-features/subresource/stylesheet.py?id=" + + id + "&type=font"; + let expected = url_prefix + + "/common/security-features/subresource/stylesheet.py?id=" + + id + "&type=font"; + let font_url = url_prefix + "/common/security-features/subresource/font.py" + + "?id=" + id + "&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(font_url)) + .then(function(message) { + assert_own_property(message, "headers"); + assert_own_property(message, "referrer"); + assert_equals(message.referrer, expected); + }); + }, "Font from external stylesheet (from ProcessingInstruction)."); + </script> + + <div id="log"></div> + </body> +</html> |