blob: e533bd2c8ddde487d9d27ad43b6b2952c3cca6e7 [file] [log] [blame]
<head>
<script src="../../../resources/js-test-pre.js"></script>
<script>
var startTime = new Date;
if (window.testRunner) {
testRunner.overridePreference("WebKit2AsynchronousPluginInitializationEnabled", "1");
testRunner.overridePreference("WebKit2AsynchronousPluginInitializationEnabledForAllPlugins", "1");
testRunner.dumpAsText();
testRunner.waitUntilDone();
}
function runTest()
{
if (!window.testRunner) {
debug("This test can only run from within DumpRenderTree because it requires test runner internals.\n");
return;
}
var pluginElement = document.getElementById("TestElement");
var testProperty = pluginElement.fooBar;
if (testProperty)
testFailed("testProperty should not have returned anything, but it returned " + testProperty);
var endTime = new Date;
if (endTime - startTime > 549)
testFailed("This test took over 549ms meaning the plug-in with a 550ms startup delay was actually initialized. It never should've been initialized.");
else
testPassed("Accessing the property took less than 550ms, meaning the plug-in had not finished initializing after our call to the plug-in script object returned.");
testRunner.notifyDone();
}
</script>
</head>
<body onload="setTimeout('runTest()', 0)">
<embed id="TestElement" type="application/x-webkit-test-netscape" test="slow-npp-new"></embed>
<p id="description"></p>
<div id="console"></div>
</body>
<script>
description("Tests that accessing the script object of a plug-in that hasn't been initialized fails instead of waiting for initialization to finish.");
var unused = document.body.offsetTop;
</script>