gecko/content/base/test/test_bug421602.html
Mounir Lamouri 4f4e2b1dc1 Bug 589502 - Don't use two images in content/base/test/test_bug421602.html to prevent race conditions. r=bz a=tests
Instead, use one image and finish the test if the load or error event happens.
If none of them happen, that means the test failed and it will properly time
out.
2011-03-09 19:43:02 +01:00

62 lines
1.5 KiB
HTML

<!DOCTYPE HTML>
<html>
<!--
https://bugzilla.mozilla.org/show_bug.cgi?id=421602
-->
<head>
<title>Test for Bug 421602</title>
<script type="text/javascript" src="/MochiKit/packed.js"></script>
<script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
</head>
<body>
<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=421602">Mozilla Bug 421602</a>
<p id="display"></p>
<div id="content" style="display: none">
</div>
<pre id="test">
<script class="testbody" type="text/javascript">
/** Test for Bug 421602 **/
SimpleTest.waitForExplicitFinish();
var img1loaded = false;
var img1errored = false;
function gc() {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
window.QueryInterface(Components.interfaces.nsIInterfaceRequestor)
.getInterface(Components.interfaces.nsIDOMWindowUtils)
.garbageCollect();
}
// Our test image
function loadTestImage() {
var img1 = new Image();
img1.onload = function() {
img1loaded = true;
finishTest();
}
img1.onerror = function() {
img1errored = true;
finishTest();
}
img1.src = window.location.href + "?image1=true";
}
loadTestImage();
// Probably overkill to gc() more than once, but let's be safe
gc(); gc(); gc();
function finishTest() {
is(img1errored, true, "Image 1 should error");
is(img1loaded, false, "Image 1 should not load");
SimpleTest.finish();
}
</script>
</pre>
</body>
</html>