summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/html/semantics/embedded-content/image-maps/image-map-processing-model/hash-name-reference.html
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/html/semantics/embedded-content/image-maps/image-map-processing-model/hash-name-reference.html')
-rw-r--r--testing/web-platform/tests/html/semantics/embedded-content/image-maps/image-map-processing-model/hash-name-reference.html45
1 files changed, 45 insertions, 0 deletions
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/image-maps/image-map-processing-model/hash-name-reference.html b/testing/web-platform/tests/html/semantics/embedded-content/image-maps/image-map-processing-model/hash-name-reference.html
new file mode 100644
index 0000000000..b00f8fe2ae
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/image-maps/image-map-processing-model/hash-name-reference.html
@@ -0,0 +1,45 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>parsing a hash-name reference for img and object</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+ body { margin-top: 0 }
+ iframe { height: 600px; width:50px; border-top: none }
+</style>
+
+<div id="log"></div>
+
+<iframe data-name="HTML (standards)" src="hash-name-reference-test-data.html?pipe=sub&amp;doctype=html"></iframe>
+<iframe data-name="HTML (quirks)" src="hash-name-reference-test-data.html?pipe=sub&amp;doctype=quirks"></iframe>
+<iframe data-name="XHTML" src="hash-name-reference-test-data.html?pipe=sub|header(Content-Type, application/xhtml%2Bxml)&amp;doctype=html"></iframe>
+
+<script>
+setup({explicit_done: true});
+
+onload = function() {
+ var iframes = document.querySelectorAll('iframe');
+ iframes.forEach(function(iframe) {
+ var iframeName = iframe.getAttribute('data-name');
+ var doc = iframe.contentDocument;
+ var divs = doc.querySelectorAll('div[data-expect]');
+ var div, img, object;
+ for (var i = 0; i < divs.length; ++i) {
+ div = divs[i];
+ img = div.querySelector('img');
+ object = div.querySelector('object');
+ [img, object].forEach(function(elm) {
+ test(function(t) {
+ var expected = div.getAttribute('data-expect');
+ var expected_elm = (expected === 'no match' || elm === object) ? elm : div.querySelector('area[href="#' + expected + '"]');
+ var got_elm = doc.elementFromPoint(elm.offsetLeft, elm.offsetTop);
+ assert_not_equals(expected_elm, null, 'sanity check (data-expect value wrong?)');
+ assert_not_equals(got_elm, null, 'sanity check (too many tests to fit in viewport?)');
+ assert_equals(got_elm, expected_elm);
+ }, iframeName + ' ' + elm.tagName + ' usemap=' + format_value(elm.useMap));
+ });
+ }
+ });
+ done();
+};
+</script>