93 lines
3.8 KiB
HTML
93 lines
3.8 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<script src="../../http/tests/inspector/resources/inspector-test.js"></script>
|
|
<script>
|
|
function test()
|
|
{
|
|
let documentNode;
|
|
|
|
let suite = InspectorTest.createAsyncSuite("DOMNode.shadowRootType");
|
|
|
|
suite.addTestCase({
|
|
name: "ShadowRootType.UserAgent",
|
|
test(resolve, reject) {
|
|
documentNode.querySelector("#host-user-agent", (nodeId) => {
|
|
let domNode = WI.domManager.nodeForId(nodeId);
|
|
InspectorTest.assert(domNode, "Got DOMNode for #host-user-agent");
|
|
InspectorTest.expectThat(domNode.shadowRoots().length === 1, "DOMNode has a single shadow root.");
|
|
InspectorTest.expectThat(domNode.shadowRoots()[0].shadowRootType() === WI.DOMNode.ShadowRootType.UserAgent, "DOMNode has UserAgent shadow root type.");
|
|
InspectorTest.expectThat(domNode.shadowRoots()[0].isInUserAgentShadowTree(), "DOMNode is in a UserAgent shadow tree.");
|
|
resolve();
|
|
});
|
|
}
|
|
});
|
|
|
|
suite.addTestCase({
|
|
name: "ShadowRootType.Closed",
|
|
test(resolve, reject) {
|
|
documentNode.querySelector("#host-closed", (nodeId) => {
|
|
let domNode = WI.domManager.nodeForId(nodeId);
|
|
InspectorTest.assert(domNode, "Got DOMNode for #host-closed");
|
|
InspectorTest.expectThat(domNode.shadowRoots().length === 1, "DOMNode has a single shadow root.");
|
|
InspectorTest.expectThat(domNode.shadowRoots()[0].shadowRootType() === WI.DOMNode.ShadowRootType.Closed, "DOMNode has Closed shadow root type.");
|
|
InspectorTest.expectThat(!domNode.shadowRoots()[0].isInUserAgentShadowTree(), "DOMNode is not in a UserAgent shadow tree.");
|
|
resolve();
|
|
});
|
|
}
|
|
});
|
|
|
|
suite.addTestCase({
|
|
name: "ShadowRootType.Open",
|
|
test(resolve, reject) {
|
|
documentNode.querySelector("#host-open", (nodeId) => {
|
|
let domNode = WI.domManager.nodeForId(nodeId);
|
|
InspectorTest.assert(domNode, "Got DOMNode for #host-open");
|
|
InspectorTest.expectThat(domNode.shadowRoots().length === 1, "DOMNode has a single shadow root.");
|
|
InspectorTest.expectThat(domNode.shadowRoots()[0].shadowRootType() === WI.DOMNode.ShadowRootType.Open, "DOMNode has Open shadow root type.");
|
|
InspectorTest.expectThat(!domNode.shadowRoots()[0].isInUserAgentShadowTree(), "DOMNode is not in a UserAgent shadow tree.");
|
|
resolve();
|
|
});
|
|
}
|
|
});
|
|
|
|
suite.addTestCase({
|
|
name: "NoShadowRootType",
|
|
test(resolve, reject) {
|
|
documentNode.querySelector("#no-host", (nodeId) => {
|
|
let domNode = WI.domManager.nodeForId(nodeId);
|
|
InspectorTest.assert(domNode, "Got DOMNode for #no-host");
|
|
InspectorTest.expectThat(domNode.shadowRoots().length === 0, "DOMNode has no shadow roots.");
|
|
InspectorTest.expectThat(domNode.shadowRootType() === undefined, "DOMNode has no shadow root type.");
|
|
resolve();
|
|
});
|
|
}
|
|
});
|
|
|
|
WI.domManager.requestDocument((node) => {
|
|
documentNode = node;
|
|
suite.runTestCasesAndFinish();
|
|
});
|
|
}
|
|
</script>
|
|
</head>
|
|
<body onload="runTest()">
|
|
<p>Test for DOMNode.shadowRootType.</p>
|
|
<div style="display: none">
|
|
<input id="host-user-agent" controls>
|
|
<div id="host-closed"></div>
|
|
<div id="host-open"></div>
|
|
<div id="no-host"></div>
|
|
</div>
|
|
<script>
|
|
(function() {
|
|
var shadowRootClosed = document.getElementById("host-closed").attachShadow({mode: "closed"});
|
|
shadowRootClosed.appendChild(document.createTextNode("closed"));
|
|
|
|
var shadowRootOpen = document.getElementById("host-open").attachShadow({mode: "open"});
|
|
shadowRootOpen.appendChild(document.createTextNode("open"));
|
|
})();
|
|
</script>
|
|
</body>
|
|
</html>
|