Summary

Harness status: OK

Found 13 tests

Details

ResultTest NameMessage
Passslotchange event must not fire synchronously.
Asserts run
Pass
assert_equals(0, 0, "slotchange event must not be fired synchronously")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:99:3)
Pass
assert_equals(0, 0)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:100:3)
Pass
assert_equals("slotchange", "slotchange", "slotchange event's type must be \"slotchange\"")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:42:11)
Pass
assert_equals(Element node <slot id="s1"><div id="fb">fallback</div></slot>, Element node <slot id="s1"><div id="fb">fallback</div></slot>, "slotchange event's target must be the slot element")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:43:11)
Pass
assert_equals(undefined, undefined, "slotchange must not set relatedTarget")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:44:11)
Pass
assert_equals("slotchange", "slotchange", "slotchange event's type must be \"slotchange\"")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:53:11)
Pass
assert_equals(Element node <slot id="s2"></slot>, Element node <slot id="s2"></slot>, "slotchange event's target must be the slot element")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:54:11)
Pass
assert_equals(undefined, undefined, "slotchange must not set relatedTarget")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:55:11)
Pass
assert_equals(1, 1)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:103:5)
Pass
assert_equals(1, 1)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:104:5)
Passslotchange event should not fire when assignments do not change assignedNodes.
Asserts run
Pass
assert_equals(0, 0)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:118:5)
Pass
assert_equals(0, 0)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:119:5)
Passslotchange event should not fire when same node is assigned.
Asserts run
Pass
assert_equals("slotchange", "slotchange", "slotchange event's type must be \"slotchange\"")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:42:11)
Pass
assert_equals(Element node <slot id="s1"><div id="fb">fallback</div></slot>, Element node <slot id="s1"><div id="fb">fallback</div></slot>, "slotchange event's target must be the slot element")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:43:11)
Pass
assert_equals(undefined, undefined, "slotchange must not set relatedTarget")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:44:11)
Pass
assert_equals(1, 1)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:137:5)
Pass
assert_equals(1, 1)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:144:7)
PassFire slotchange event when slot's assigned nodes changes.
Asserts run
Pass
assert_equals("slotchange", "slotchange", "slotchange event's type must be \"slotchange\"")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:42:11)
Pass
assert_equals(Element node <slot id="s1"><div id="fb">fallback</div></slot>, Element node <slot id="s1"><div id="fb">fallback</div></slot>, "slotchange event's target must be the slot element")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:43:11)
Pass
assert_equals(undefined, undefined, "slotchange must not set relatedTarget")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:44:11)
Pass
assert_equals("slotchange", "slotchange", "slotchange event's type must be \"slotchange\"")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:53:11)
Pass
assert_equals(Element node <slot id="s2"></slot>, Element node <slot id="s2"></slot>, "slotchange event's target must be the slot element")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:54:11)
Pass
assert_equals(undefined, undefined, "slotchange must not set relatedTarget")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:55:11)
Pass
assert_equals(1, 1)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:163:5)
Pass
assert_equals(1, 1)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:164:5)
PassFire slotchange event on previous slot and new slot when node is reassigned.
Asserts run
Pass
assert_equals("slotchange", "slotchange", "slotchange event's type must be \"slotchange\"")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:42:11)
Pass
assert_equals(Element node <slot id="s1"><div id="fb">fallback</div></slot>, Element node <slot id="s1"><div id="fb">fallback</div></slot>, "slotchange event's target must be the slot element")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:43:11)
Pass
assert_equals(undefined, undefined, "slotchange must not set relatedTarget")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:44:11)
Pass
assert_equals(1, 1)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:176:5)
Pass
assert_equals("slotchange", "slotchange", "slotchange event's type must be \"slotchange\"")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:42:11)
Pass
assert_equals(Element node <slot id="s1"><div id="fb">fallback</div></slot>, Element node <slot id="s1"><div id="fb">fallback</div></slot>, "slotchange event's target must be the slot element")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:43:11)
Pass
assert_equals(undefined, undefined, "slotchange must not set relatedTarget")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:44:11)
Pass
assert_equals("slotchange", "slotchange", "slotchange event's type must be \"slotchange\"")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:53:11)
Pass
assert_equals(Element node <slot id="s2"></slot>, Element node <slot id="s2"></slot>, "slotchange event's target must be the slot element")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:54:11)
Pass
assert_equals(undefined, undefined, "slotchange must not set relatedTarget")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:55:11)
Pass
assert_equals(2, 2)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:182:7)
Pass
assert_equals(1, 1)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:183:7)
PassFire slotchange event on node assignment and when assigned node is removed.
Asserts run
Pass
assert_equals("slotchange", "slotchange", "slotchange event's type must be \"slotchange\"")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:42:11)
Pass
assert_equals(Element node <slot id="s1"><div id="fb">fallback</div></slot>, Element node <slot id="s1"><div id="fb">fallback</div></slot>, "slotchange event's target must be the slot element")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:43:11)
Pass
assert_equals(undefined, undefined, "slotchange must not set relatedTarget")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:44:11)
Pass
assert_equals(1, 1)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:196:5)
Pass
assert_equals("slotchange", "slotchange", "slotchange event's type must be \"slotchange\"")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:42:11)
Pass
assert_equals(Element node <slot id="s1"><div id="fb">fallback</div></slot>, Element node <slot id="s1"><div id="fb">fallback</div></slot>, "slotchange event's target must be the slot element")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:43:11)
Pass
assert_equals(undefined, undefined, "slotchange must not set relatedTarget")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:44:11)
Pass
assert_equals(2, 2)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:202:7)
PassFire slotchange event when order of assigned nodes changes.
Asserts run
Pass
assert_equals("slotchange", "slotchange", "slotchange event's type must be \"slotchange\"")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:42:11)
Pass
assert_equals(Element node <slot id="s1"><div id="fb">fallback</div></slot>, Element node <slot id="s1"><div id="fb">fallback</div></slot>, "slotchange event's target must be the slot element")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:43:11)
Pass
assert_equals(undefined, undefined, "slotchange must not set relatedTarget")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:44:11)
Pass
assert_equals(1, 1)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:215:5)
Pass
assert_equals("slotchange", "slotchange", "slotchange event's type must be \"slotchange\"")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:42:11)
Pass
assert_equals(Element node <slot id="s1"><div id="fb">fallback</div></slot>, Element node <slot id="s1"><div id="fb">fallback</div></slot>, "slotchange event's target must be the slot element")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:43:11)
Pass
assert_equals(undefined, undefined, "slotchange must not set relatedTarget")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:44:11)
Pass
assert_equals(2, 2)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:221:7)
PassFire slotchange event when assigned node is removed.
Asserts run
Pass
assert_equals("slotchange", "slotchange", "slotchange event's type must be \"slotchange\"")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:42:11)
Pass
assert_equals(Element node <slot id="s1"><div id="fb">fallback</div></slot>, Element node <slot id="s1"><div id="fb">fallback</div></slot>, "slotchange event's target must be the slot element")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:43:11)
Pass
assert_equals(undefined, undefined, "slotchange must not set relatedTarget")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:44:11)
Pass
assert_equals(1, 1)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:234:5)
Pass
assert_equals("slotchange", "slotchange", "slotchange event's type must be \"slotchange\"")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:42:11)
Pass
assert_equals(Element node <slot id="s1"><div id="fb">fallback</div></slot>, Element node <slot id="s1"><div id="fb">fallback</div></slot>, "slotchange event's target must be the slot element")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:43:11)
Pass
assert_equals(undefined, undefined, "slotchange must not set relatedTarget")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:44:11)
Pass
assert_equals(2, 2)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:242:7)
PassFire slotchange event when removing a slot from Shadows Root that changes its assigned nodes.
Asserts run
Pass
assert_equals("slotchange", "slotchange", "slotchange event's type must be \"slotchange\"")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:42:11)
Pass
assert_equals(Element node <slot id="s1"><div id="fb">fallback</div></slot>, Element node <slot id="s1"><div id="fb">fallback</div></slot>, "slotchange event's target must be the slot element")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:43:11)
Pass
assert_equals(undefined, undefined, "slotchange must not set relatedTarget")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:44:11)
Pass
assert_equals(1, 1)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:254:5)
Pass
assert_equals("slotchange", "slotchange", "slotchange event's type must be \"slotchange\"")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:42:11)
Pass
assert_equals(Element node <slot id="s1"><div id="fb">fallback</div></slot>, Element node <slot id="s1"><div id="fb">fallback</div></slot>, "slotchange event's target must be the slot element")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:43:11)
Pass
assert_equals(undefined, undefined, "slotchange must not set relatedTarget")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:44:11)
Pass
assert_equals(2, 2)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:262:7)
PassNo slotchange event when adding or removing an empty slot.
Asserts run
Pass
assert_equals(0, 0)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:278:5)
Pass
assert_equals(0, 0)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:287:7)
Pass
assert_equals(0, 0)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:288:7)
PassNo slotchange event when adding another slotable.
Asserts run
Pass
assert_equals(0, 0)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:307:5)
Pass
assert_equals(0, 0)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:308:5)
Pass
assert_equals(0, 0)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:317:7)
Pass
assert_equals(0, 0)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:318:7)
PassFire slotchange event when assign node to nested slot, ensure event bubbles ups.
Asserts run
Pass
assert_equals("slotchange", "slotchange", "slotchange event's type must be \"slotchange\"")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:64:9)
Pass
assert_equals(undefined, undefined, "slotchange must not set relatedTarget")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:66:9)
Pass
assert_equals(1, 1)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:350:5)
Pass
assert_equals("slotchange", "slotchange", "slotchange event's type must be \"slotchange\"")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:42:11)
Pass
assert_equals(Element node <slot id="s1"></slot>, Element node <slot id="s1"></slot>, "slotchange event's target must be the slot element")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:43:11)
Pass
assert_equals(undefined, undefined, "slotchange must not set relatedTarget")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:44:11)
Pass
assert_equals("slotchange", "slotchange", "slotchange event's type must be \"slotchange\"")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:64:9)
Pass
assert_equals(undefined, undefined, "slotchange must not set relatedTarget")
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:66:9)
Pass
assert_equals(1, 1)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:356:7)
Pass
assert_equals(2, 2)
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:357:7)
FailSignal a slot change should be done in tree order.assert_array_equals: expected property 0 to be "s1" but got "s2.5" (expected array ["s1", "s2.5", "s3"] got ["s2.5", "s1", "s3"])
    at Test.<anonymous> (https://not-wpt.live/shadow-dom/imperative-slot-api-slotchange.html:392:3)
Asserts run
Fail
assert_array_equals(["s2.5", "s1", "s3"], ["s1", "s2.5", "s3"])
    at Test.<anonymous> ( /shadow-dom/imperative-slot-api-slotchange.html:392:3)