diff options
Diffstat (limited to 'testing/web-platform/tests/html/syntax/parsing/html-integration-point.html')
-rw-r--r-- | testing/web-platform/tests/html/syntax/parsing/html-integration-point.html | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/testing/web-platform/tests/html/syntax/parsing/html-integration-point.html b/testing/web-platform/tests/html/syntax/parsing/html-integration-point.html new file mode 100644 index 0000000000..be6b42d07d --- /dev/null +++ b/testing/web-platform/tests/html/syntax/parsing/html-integration-point.html @@ -0,0 +1,31 @@ +<!DOCTYPE html> +<link rel="help" href="https://html.spec.whatwg.org/multipage/parsing.html#tree-construction:html-integration-point"> +<body> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> + +<math><annotation-xml id="point-1" encoding="text/html"><xmp></xmp><img></xmp></annotation-xml></math> +<math><annotation-xml id="point-2" encoding="application/xhtml+xml"><style></style><img></style></annotation-xml></math> +<svg><foreignObject id="point-3"><iframe></iframe><img></iframe></foreignObject></svg> +<svg><desc id="point-4"><noembed></noembed><img></noembed></desc></svg> +<svg><title id="point-5"><noframes></noframes><img></noframes></title></svg> + +<script> +function generate_test(id) { + return () => { + let point = document.querySelector('#' + id); + assert_not_equals(point.namespaceURI, 'http://www.w3.org/1999/xhtml'); + let rawTextElement = point.firstChild; + assert_equals(rawTextElement.namespaceURI, 'http://www.w3.org/1999/xhtml'); + assert_equals(rawTextElement.textContent.substr(0, 4), '<', + 'Entity references should not be decoded.'); + }; +} + +test(generate_test('point-1'), 'MathML annotation-xml with encoding=text/html should be an HTML integration point'); +test(generate_test('point-2'), 'MathML annotation-xml with encoding=application/xhtml+xml should be an HTML integration point'); +test(generate_test('point-3'), 'SVG foreignObject should be an HTML integration point'); +test(generate_test('point-4'), 'SVG desc should be an HTML integration point'); +test(generate_test('point-5'), 'SVG title should be an HTML integration point'); +</script> +</body> |