File: template-as-a-descendant.html

package info (click to toggle)
iceweasel 38.8.0esr-1~deb7u1
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 1,578,008 kB
  • sloc: cpp: 4,134,345; ansic: 1,765,754; python: 324,651; java: 233,700; asm: 138,937; xml: 98,298; sh: 82,895; makefile: 21,621; perl: 17,235; objc: 4,014; yacc: 1,968; lex: 1,179; exp: 499; pascal: 479; lisp: 228; awk: 152; ruby: 82; sed: 43; csh: 31; ada: 16; php: 1
file content (115 lines) | stat: -rw-r--r-- 4,769 bytes parent folder | download | duplicates (2)
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
<!DOCTYPE html>
<html>
<head>
<title>HTML Templates: Template element as a descendant of the body element.</title>
<meta name="author" title="Sergey G. Grekhov" href="mailto:sgrekhov@unipro.ru">
<meta name="author" title="Aleksei Yu. Semenov" href="mailto:a.semenov@unipro.ru">
<meta name="assert" content="Template element can be a descendant of the body element">
<link rel="help" href="http://www.w3.org/TR/2013/WD-html-templates-20130214/#template-element">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src='../testcommon.js'></script>
<link rel="stylesheet" href="/resources/testharness.css">
</head>
<body>
<div id="log"></div>
<script type="text/javascript">

function templateIsAChild(element) {
    element.innerHTML = '<template>some text</template>';

    assert_not_equals(element.querySelector('template'), null,
        'Template element should be a descendant of the ' + element.tagName + ' element');
}

function templateIsAnIndirectChild(element) {
    element.innerHTML = '<div><template>some text</template></div>';

    assert_not_equals(element.querySelector('template'), null,
        'Template element should be a descendant of the ' + element.tagName + ' element');
}

function templateIsAnAppendedChild(doc, element) {
    var template = doc.createElement('template');

    element.appendChild(template);

    assert_not_equals(element.querySelector('template'), null,
        'Template element should be a descendant of the ' + element.tagName + ' element');
}

function templateIsAnAppendedIndirectChild(doc, element) {
    var template = doc.createElement('template');
    var div = doc.createElement('div');
    div.appendChild(template);

    element.appendChild(div);

    assert_not_equals(element.querySelector('template'), null,
        'Template element should be a descendant of the ' + element.tagName + ' element');
}

var doc = newHTMLDocument();
var frameset = doc.createElement('frameset');

var parameters = [['Template element as a descendant of the BODY element. ' +
                   'Template element is created by innerHTML',
                   doc.body],
                  ['Template element as a descendant of the HEAD element. ' +
                   'Template element is created by innerHTML',
                   doc.head],
                   ['Template element as a descendant of the FRAMESET element. ' +
                    'Template element is created by innerHTML',
                    frameset]
                   ];
generate_tests(templateIsAChild, parameters,
        'Template element as a descendant of the HEAD, BODY and FRAMESET elements');



parameters = [['Template element as an indirect descendant of the BODY element. ' +
               'Template element is created by innerHTML',
               doc.body],
              ['Template element as an indirect descendant of the HEAD element. ' +
               'Template element is created by innerHTML',
               doc.head],
               ['Template element as an indirect descendant of the FRAMESET element. ' +
                'Template element is created by innerHTML',
                frameset]
               ];
generate_tests(templateIsAnIndirectChild, parameters,
        'Template element as an indirect descendant of the HEAD, BODY and FRAMESET elements');



parameters = [['Template element as a descendant of the BODY element. ' +
               'Template element is appended by appendChild()',
               doc, doc.body],
              ['Template element as a descendant of the HEAD element. ' +
               'Template element is appended by appendChild()',
               doc, doc.head],
               ['Template element as a descendant of the FRAMESET element. ' +
                'Template element is  appended by appendChild()',
                doc, frameset]
               ];
generate_tests(templateIsAnAppendedChild, parameters,
        'Template element as a descendant of the HEAD, BODY and FRAMESET elements');



parameters = [['Template element as an indirect descendant of the BODY element. ' +
               'Template element is appended by appendChild()',
               doc, doc.body],
              ['Template element as an indirect descendant of the HEAD element. ' +
               'Template element is appended by appendChild()',
               doc, doc.head],
               ['Template element as an indirect descendant of the FRAMESET element. ' +
                'Template element is  appended by appendChild()',
                doc, frameset]
               ];
generate_tests(templateIsAnAppendedIndirectChild, parameters,
        'Template element as a descendant of the HEAD, BODY and FRAMESET elements');

</script>
</body>
</html>