diff options
Diffstat (limited to 'dom/plugins/test/mochitest/test_streamatclose.html')
-rw-r--r-- | dom/plugins/test/mochitest/test_streamatclose.html | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/dom/plugins/test/mochitest/test_streamatclose.html b/dom/plugins/test/mochitest/test_streamatclose.html new file mode 100644 index 000000000..f308d7d79 --- /dev/null +++ b/dom/plugins/test/mochitest/test_streamatclose.html @@ -0,0 +1,46 @@ +<html> +<head> + <title>Stream open at NPP_Destroy</title> + <script type="text/javascript" + src="/tests/SimpleTest/SimpleTest.js"></script> + <script type="text/javascript" src="plugin-utils.js"></script> + <link rel="stylesheet" type="text/css" + href="/tests/SimpleTest/test.css"> + +<body onload="startTest()"> + <script type="text/javascript"> + SimpleTest.waitForExplicitFinish(); + SimpleTest.requestFlakyTimeout("untriaged"); + setTestPluginEnabledState(SpecialPowers.Ci.nsIPluginTag.STATE_ENABLED); + + var urlnotified = false; + + var p = null; + + function startTest() { + p = document.getElementById('embedtest'); + ok(p.streamTest("neverending.sjs", false, null, null, + function(r, t) { + is(r, 2, "Stream should have failed"); + urlnotified = true; + }, null, true), "neverending.sjs started successfully"); + + setTimeout(removePlugin, 500); + } + + function removePlugin() { + document.body.removeChild(p); // Fires NPP_Destroy immediately + SimpleTest.executeSoon(done); + } + + function done() { + ok(urlnotified, "NPP_URLNotify should be called if streams are active at NPP_Destroy"); + SimpleTest.finish(); + } + + </script> + + <p id="display"></p> + + <embed id="embedtest" + style="width: 400px; height: 100px;" type="application/x-test"></embed> |