<!DOCTYPE html>
<html>
<head>
<script src="../../../resources/js-test-pre.js"></script>
</head>
<body>
<keygen id="keys" />
<pre id="console">
This tests the shadow host's and shadow root's nodeType.
</pre>
<script>
    if (window.testRunner) {
        testRunner.dumpAsText();
        
        var keygen = document.getElementById('keys');
        var shadow = internals.shadowRoot(keygen);
        var shadowChild = shadow.firstChild;
        shouldBe('keygen.nodeType', 'Node.ELEMENT_NODE');
        shouldBe('shadow.nodeType', 'Node.DOCUMENT_FRAGMENT_NODE');
        shouldBeNonNull('shadowChild');
        shouldBeTrue('shadowChild.nodeType != Node.DOCUMENT_FRAGMENT_NODE');
    }
</script>
<script src="../../../resources/js-test-post.js"></script>
</body>
</html>
