53 lines
1.9 KiB
HTML
53 lines
1.9 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta><charset="utf-8"/>
|
|
<title>Test Modifying Plugin click-to-play Flag</title>
|
|
<script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
|
|
<script type="application/javascript" src="plugin-utils.js"></script>
|
|
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
|
|
</head>
|
|
<body onload="startTest()">
|
|
<script class="testbody" type="application/javascript">
|
|
SimpleTest.waitForExplicitFinish();
|
|
setTestPluginEnabledState(SpecialPowers.Ci.nsIPluginTag.STATE_ENABLED);
|
|
SpecialPowers.pushPrefEnv({ "set": [
|
|
['dom.ipc.plugins.unloadTimeoutSecs', 0]
|
|
] });
|
|
|
|
function startTest() {
|
|
let url = SimpleTest.getTestFileURL("file_bug1245545.js");
|
|
let script = SpecialPowers.loadChromeScript(url);
|
|
script.addMessageListener("check-plugin-unload", testChromeUnload);
|
|
var testPlugin = getTestPlugin();
|
|
ok(testPlugin, "Should have Test Plug-in");
|
|
is(testPlugin.loaded, true, "Test plugin should be loaded");
|
|
var pluginNode = document.getElementById("theplugin");
|
|
pluginNode.parentNode.removeChild(pluginNode);
|
|
// Poll for plugin to unload.
|
|
function testContentUnload() {
|
|
if (!testPlugin.loaded) {
|
|
ok(true, "Test plugin unloaded in client process");
|
|
// Start the chrome unload test
|
|
testChromeUnload(true);
|
|
} else {
|
|
setTimeout(testContentUnload, 0);
|
|
}
|
|
}
|
|
|
|
function testChromeUnload(isLoaded) {
|
|
if (!isLoaded) {
|
|
ok(true, "Test plugin unloaded in chrome process");
|
|
SimpleTest.finish();
|
|
} else {
|
|
var results = script.sendAsyncMessage("check-plugin-unload");
|
|
}
|
|
}
|
|
testContentUnload();
|
|
}
|
|
</script>
|
|
<object id="theplugin" type="application/x-test"></object>
|
|
|
|
</body>
|
|
</html>
|