| <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"); |
| window.internals.settings.setCanStartMedia(false); |
| 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"); |
| pluginElement.parentNode.removeChild(pluginElement); |
| |
| testPassed("Removing the plug-in element did not crash."); |
| |
| 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."); |
| |
| 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 when media/plugin playback is disabled (such as when in a background tab), removing a plug-in element that was never initialized does not crash."); |
| var unused = document.body.offsetTop; |
| </script> |