Tests to ensure ShadowRoot.getElementById works after complex DOM manipulation.

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".


PASS document.getElementById("A") is A
PASS shadowRootA.getElementById("B") is B
PASS shadowRootB.getElementById("C") is C
PASS shadowRootC.getElementById("D") is D

Remove C from shadowRootB
PASS document.getElementById("A") is A
PASS shadowRootA.getElementById("B") is B
PASS shadowRootB.getElementById("C") is null
PASS shadowRootC.getElementById("D") is D

Append C to ShadowRootB, and remove A from document
PASS document.getElementById("A") is null
PASS shadowRootA.getElementById("B") is B
PASS shadowRootB.getElementById("C") is C
PASS shadowRootC.getElementById("D") is D

Remove C from shadowRootB
PASS document.getElementById("A") is null
PASS shadowRootA.getElementById("B") is B
PASS shadowRootB.getElementById("C") is null
PASS shadowRootC.getElementById("D") is D

Remove D from shadowRootC
PASS document.getElementById("A") is null
PASS shadowRootA.getElementById("B") is B
PASS shadowRootB.getElementById("C") is null
PASS shadowRootC.getElementById("D") is null
PASS successfullyParsed is true

TEST COMPLETE

