
<script>
function runTest() {
    if (!window.testRunner)
        alert('this test must be run from DumpRenderTree')
    
    testRunner.dumpAsText();
    testRunner.setPluginsEnabled(false);
    
    var pluginElement = document.getElementById('testPlugin');
    pluginElement.parentNode.removeChild(pluginElement);
    
    document.body.appendChild(pluginElement);
    if (pluginElement.contentDocument)
        document.getElementById('result').innerText = "FAILURE - object tag has an HTML document!";
    else
        document.getElementById('result').innerText = "SUCCESS!";
}

</script>
<body onload="runTest()">    
    <object id="testPlugin" type="application/x-webkit-test-netscape"></object>
    <div>This tests that embed and object tags won't load as HTML when plug-ins are disabled (after being enabled first).</div>
    <div id="result">FAILURE - test did not run!</div>
</body>
