diff options
Diffstat (limited to 'testing/web-platform/tests/url/data-uri-fragment.html')
-rw-r--r-- | testing/web-platform/tests/url/data-uri-fragment.html | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/testing/web-platform/tests/url/data-uri-fragment.html b/testing/web-platform/tests/url/data-uri-fragment.html new file mode 100644 index 0000000000..e77d96f03d --- /dev/null +++ b/testing/web-platform/tests/url/data-uri-fragment.html @@ -0,0 +1,34 @@ +<!DOCTYPE html> +<meta charset="utf-8"> +<title>Data URI parsing of fragments</title> +<link rel="help" href="https://url.spec.whatwg.org/"> +<meta name="assert" content="Fragments should not be included as part of a data URI's body"> + +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> + +<iframe id="iframe"></iframe> + +<script> +const IFRAME_DATA_SRC = `data:text/html, + <style>:target { color: green; }<\/style> + <script>window.addEventListener('load', function() { + const data = { + foo_matches_target_selector: document.getElementById('foo').matches(':target'), + body_html: document.body.innerHTML, + }; + parent.postMessage(data, '*'); + });<\/script> + <p id="foo">This should be the only visible text.</p>#foo`.replace('\n', ''); + +async_test(function(t) { + window.addEventListener("message", t.step_func_done(function(event) { + assert_true(event.data.foo_matches_target_selector); + assert_equals(event.data.body_html, + '<p id="foo">This should be the only visible text.</p>'); + })); + + const iframe = document.getElementById("iframe"); + iframe.src = IFRAME_DATA_SRC; +}); +</script> |