зеркало из https://github.com/mozilla/gecko-dev.git
68 строки
1.5 KiB
HTML
68 строки
1.5 KiB
HTML
<!DOCTYPE HTML>
|
|
<html>
|
|
<!--
|
|
https://bugzilla.mozilla.org/show_bug.cgi?id=478911
|
|
-->
|
|
<head>
|
|
<title>Test for many windows </title>
|
|
<script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
|
|
<script type="text/javascript" src="geolocation_common.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=478911">Crash in Multiple Windows</a>
|
|
<p id="display"></p>
|
|
<div id="content" style="display: none">
|
|
|
|
</div>
|
|
<pre id="test">
|
|
<script class="testbody" type="text/javascript">
|
|
|
|
// ensure we are using the right testing provider
|
|
resume_geolocationProvider(function() {
|
|
force_prompt(true, test1);
|
|
});
|
|
|
|
/** Test for Bug **/
|
|
|
|
var numberOfWindows = 5; // 20 seems to be the default max popups during the mochitest run
|
|
var loadedWindows = 0;
|
|
|
|
var windows = new Array(numberOfWindows);
|
|
|
|
addEventListener("message", function() {
|
|
++loadedWindows;
|
|
if (loadedWindows == numberOfWindows) {
|
|
SimpleTest.executeSoon(closeWindows);
|
|
}
|
|
}, false);
|
|
|
|
function test1() {
|
|
for(var i = 0; i < numberOfWindows; i++) {
|
|
windows[i] = window.open("geolocation.html", "_blank", "width=700,height=400");
|
|
}
|
|
}
|
|
|
|
function closeWindows()
|
|
{
|
|
for(var i = 0; i < numberOfWindows; i++) {
|
|
windows[i].close();
|
|
}
|
|
SimpleTest.waitForFocus(done);
|
|
}
|
|
|
|
SimpleTest.waitForExplicitFinish();
|
|
|
|
function done()
|
|
{
|
|
ok(navigator.geolocation, "Opened a bunch of windows and didn't crash.");
|
|
SimpleTest.finish();
|
|
}
|
|
|
|
</script>
|
|
</pre>
|
|
</body>
|
|
</html>
|