File: hash-name-reference.html

package info (click to toggle)
firefox-esr 140.3.1esr-2
  • links: PTS, VCS
  • area: main
  • in suites: forky
  • size: 4,539,016 kB
  • sloc: cpp: 7,380,478; javascript: 6,388,099; ansic: 3,710,142; python: 1,393,715; xml: 628,165; asm: 426,918; java: 184,025; sh: 65,742; makefile: 19,302; objc: 13,059; perl: 12,912; yacc: 4,583; cs: 3,846; pascal: 3,352; lex: 1,720; ruby: 1,226; exp: 762; php: 436; lisp: 258; awk: 247; sql: 66; sed: 54; csh: 10
file content (45 lines) | stat: -rw-r--r-- 1,887 bytes parent folder | download | duplicates (21)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
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>