<!DOCTYPE html>
<html>
<body>
<div id="test-container"></div>
<script src="../../resources/js-test.js"></script>
<script>

description('Adopting a script element must not run the script.');

let testContainer = document.getElementById('test-container');

var doc;
var didRunScript;
var div;
function runTest(createScriptElement)
{
    didRunScript = false;
    div = document.createElement('div');

    let iframe = document.createElement('iframe');
    testContainer.appendChild(iframe);

    doc = iframe.contentDocument;
    let script = createScriptElement(doc);
    script.type = 'invalid-type';
    script.textContent = 'parent.didRunScript = true; document.body.appendChild(parent.div)';

    script.appendChild(div);
    doc.body.appendChild(script);

    script.type = '';
    document.adoptNode(div);
    testContainer.innerHTML = '';

    shouldBeFalse('didRunScript');
    shouldNotBe('div.parentNode', 'doc.body');
    shouldBe('div.parentNode', 'null');
    shouldBe('div.ownerDocument', 'document');
}

debug('Testing HTMLScriptElement');
runTest((doc) => doc.createElement('script'));

debug('');
debug('Testing SVGScriptElement');
runTest((doc) => doc.createElementNS('http://www.w3.org/2000/svg', 'script'));

</script>
</body>
</html>
