Bug 651075 - Make content/html/content/test/test_bug386496.html non flaky. r=ehsan

This commit is contained in:
Mounir Lamouri 2011-04-29 12:23:23 +00:00
parent 40fba2d13a
commit 49bacc2c6c

View File

@ -6,18 +6,17 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=386496
<head>
<title>Test for Bug 386496</title>
<script type="text/javascript" src="/MochiKit/packed.js"></script>
<script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
<script type="text/javascript" src="/tests/SimpleTest/EventUtils.js"></script>
<script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
<SCRIPT Type="text/javascript" src="/tests/SimpleTest/EventUtils.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=386496">Mozilla Bug 386496</a>
<p id="display"></p>
<div id="content">
<div id="frameContent">
<a id="a" href="http://a.invalid/">Link</a>
</div>
<iframe id="testIframe"></iframe>
<iframe style='display: block;' id="testIframe"
src="data:text/html,<div><a id='a' href='http://a.invalid/'>Link</a></div>">
</iframe>
</div>
<pre id="test">
<script class="testbody" type="text/javascript">
@ -26,29 +25,28 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=386496
var frame = document.getElementById("testIframe");
function finishTest() {
is(frame.contentWindow.location, "about:blank");
SimpleTest.finish();
}
function testDesignMode() {
frame.style.display = 'block';
var frameContent = frame.contentDocument.adoptNode(document.getElementById("frameContent"));
frame.contentDocument.body.appendChild(frameContent);
var unloadRequested = false;
frame.contentDocument.designMode = "on";
netscape.security.PrivilegeManager.enablePrivilege('UniversalBrowserWrite');
var event = frame.contentDocument.createEvent('MouseEvent');
event.initMouseEvent("click", true, true, window, 1, 0, 0, 0, 0, false, false,
false, false, 0, null);
frame.contentDocument.getElementById("a").dispatchEvent(event);
frame.contentWindow.addEventListener("beforeunload", function() {
unloadRequested = true;
}, false);
setTimeout(finishTest, 100);
synthesizeMouseAtCenter(frame.contentDocument.getElementById("a"), {},
frame.contentWindow);
// The click has been sent. If 'beforeunload' event has been caught when we go
// back from the event loop that means the link has been activated.
setTimeout(function() {
ok(!unloadRequested, "The link should not be activated in designMode");
SimpleTest.finish();
}, 0);
}
SimpleTest.waitForExplicitFinish();
addLoadEvent(testDesignMode);
SimpleTest.waitForFocus(testDesignMode);
</script>
</pre>