Declarative syntax - The *two* templates below should have IDENTICAL STRUCTURE to this one. There are four cases to test: 1. Main document parsing (this chunk) 2. Template parsing (the template below with id=declarative) 3. Template/fragment cloning (a clone of the template with id=declarative) 4. Declarative Shadow DOM parsing (template with id=declarative_shadow_dom and shadowrootmode attribute)

{{#}} First {{#}} Middle {{/}} Last {{/}} content content content content content content

Declarative syntax

{{#}} First {{#}} Middle {{/}} Last {{/}} content content content content content content

Summary

Harness status: OK

Found 11 tests

Details

ResultTest NameMessage
FailBasic declarative DOM Parts (Main Document)doc.getPartRoot is not a function
TypeError: doc.getPartRoot is not a function
    at Test.<anonymous> (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:106:22)
    at Test.step (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/resources/testharness.js:2684:25)
    at test (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/resources/testharness.js:633:30)
    at https://xn--n8j6ds53lwwkrqhv28a.wpt.live/dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:68:3
    at Array.forEach (<anonymous>)
    at https://xn--n8j6ds53lwwkrqhv28a.wpt.live/dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:67:50
Asserts run
Pass
assert_true(true)
    at Test.<anonymous> ( /dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:104:5)
FailBasic declarative DOM Parts (Template)doc.getPartRoot is not a function
TypeError: doc.getPartRoot is not a function
    at Test.<anonymous> (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:106:22)
    at Test.step (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/resources/testharness.js:2684:25)
    at test (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/resources/testharness.js:633:30)
    at https://xn--n8j6ds53lwwkrqhv28a.wpt.live/dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:68:3
    at Array.forEach (<anonymous>)
    at https://xn--n8j6ds53lwwkrqhv28a.wpt.live/dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:67:50
Asserts run
Pass
assert_true(true)
    at Test.<anonymous> ( /dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:104:5)
FailBasic declarative DOM Parts (Clone)doc.getPartRoot is not a function
TypeError: doc.getPartRoot is not a function
    at Test.<anonymous> (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:106:22)
    at Test.step (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/resources/testharness.js:2684:25)
    at test (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/resources/testharness.js:633:30)
    at https://xn--n8j6ds53lwwkrqhv28a.wpt.live/dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:68:3
    at Array.forEach (<anonymous>)
    at https://xn--n8j6ds53lwwkrqhv28a.wpt.live/dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:67:50
Asserts run
Pass
assert_true(true)
    at Test.<anonymous> ( /dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:104:5)
FailBasic declarative DOM Parts (PartClone)template.content.getPartRoot is not a function
TypeError: template.content.getPartRoot is not a function
    at Test.<anonymous> (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:94:46)
    at Test.step (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/resources/testharness.js:2684:25)
    at test (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/resources/testharness.js:633:30)
    at https://xn--n8j6ds53lwwkrqhv28a.wpt.live/dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:68:3
    at Array.forEach (<anonymous>)
    at https://xn--n8j6ds53lwwkrqhv28a.wpt.live/dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:67:50
Asserts runNo asserts ran
FailPost-parsing structure of child parts, and stickinessdocument.getPartRoot is not a function
TypeError: document.getPartRoot is not a function
    at Test.<anonymous> (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:147:27)
    at Test.step (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/resources/testharness.js:2684:25)
    at test (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/resources/testharness.js:633:30)
    at https://xn--n8j6ds53lwwkrqhv28a.wpt.live/dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:144:3
Asserts runNo asserts ran
FailParser only behavior - adding parseparts does nothingdocument.getPartRoot is not a function
TypeError: document.getPartRoot is not a function
    at Test.<anonymous> (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:164:27)
    at Test.step (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/resources/testharness.js:2684:25)
    at test (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/resources/testharness.js:633:30)
    at https://xn--n8j6ds53lwwkrqhv28a.wpt.live/dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:161:3
Asserts runNo asserts ran
FailJust parts, no text beforedocument.getPartRoot is not a function
TypeError: document.getPartRoot is not a function
    at Test.<anonymous> (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:179:27)
    at Test.step (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/resources/testharness.js:2684:25)
    at test (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/resources/testharness.js:633:30)
    at https://xn--n8j6ds53lwwkrqhv28a.wpt.live/dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:176:3
Asserts runNo asserts ran
FailSelf closing elements can't use parsepartsdocument.getPartRoot is not a function
TypeError: document.getPartRoot is not a function
    at Test.<anonymous> (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:191:27)
    at Test.step (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/resources/testharness.js:2684:25)
    at test (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/resources/testharness.js:633:30)
    at https://xn--n8j6ds53lwwkrqhv28a.wpt.live/dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:188:3
Asserts runNo asserts ran
FailSecond head element can't use parsepartsdocument.getPartRoot is not a function
TypeError: document.getPartRoot is not a function
    at Test.<anonymous> (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:203:27)
    at Test.step (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/resources/testharness.js:2684:25)
    at test (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/resources/testharness.js:633:30)
    at https://xn--n8j6ds53lwwkrqhv28a.wpt.live/dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:200:3
Asserts runNo asserts ran
FailForeign content should support Partsdocument.getPartRoot is not a function
TypeError: document.getPartRoot is not a function
    at Test.<anonymous> (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:216:27)
    at Test.step (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/resources/testharness.js:2684:25)
    at test (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/resources/testharness.js:633:30)
    at https://xn--n8j6ds53lwwkrqhv28a.wpt.live/dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:213:3
Asserts runNo asserts ran
FailNot quite parts syntax - none should become parts, and nothing should crashdocument.getPartRoot is not a function
TypeError: document.getPartRoot is not a function
    at Test.<anonymous> (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:231:27)
    at Test.step (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/resources/testharness.js:2684:25)
    at test (https://xn--n8j6ds53lwwkrqhv28a.wpt.live/resources/testharness.js:633:30)
    at https://xn--n8j6ds53lwwkrqhv28a.wpt.live/dom/parts/basic-dom-part-declarative-brace-syntax.tentative.html:228:3
Asserts runNo asserts ran