mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-01 14:45:29 +00:00
87 lines
2.7 KiB
HTML
87 lines
2.7 KiB
HTML
<!--
|
|
Any copyright is dedicated to the Public Domain.
|
|
http://creativecommons.org/publicdomain/zero/1.0/
|
|
-->
|
|
<html>
|
|
<head>
|
|
<title>Indexed Database Property Test</title>
|
|
|
|
<script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
|
|
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
|
|
<script type="text/javascript">
|
|
function _runTest() {
|
|
// Work around Win2k3 debug tinderboxes that may be too slow to complete this test. (Bug 614474)
|
|
if (navigator.oscpu == "Windows NT 5.2") {
|
|
todo(false, "Test disabled on (too slow debug) Windows 2003 (tinderboxes)");
|
|
|
|
finishTest();
|
|
return;
|
|
}
|
|
|
|
if (!SpecialPowers.isMainProcess()) {
|
|
todo(false, "Test disabled in child processes, for now");
|
|
finishTest();
|
|
return;
|
|
}
|
|
|
|
runTest();
|
|
}
|
|
</script>
|
|
<script type="text/javascript;version=1.7">
|
|
var gOrigMaxTotalViewers = undefined;
|
|
function setCachePref(enabled) {
|
|
if (enabled) {
|
|
is(typeof gOrigMaxTotalViewers, "undefined",
|
|
"don't double-enable bfcache");
|
|
SpecialPowers.setBoolPref("browser.sessionhistory.cache_subframes",
|
|
true);
|
|
gOrigMaxTotalViewers =
|
|
SpecialPowers.getIntPref("browser.sessionhistory.max_total_viewers");
|
|
SpecialPowers.setIntPref("browser.sessionhistory.max_total_viewers",
|
|
10);
|
|
}
|
|
else {
|
|
is(typeof gOrigMaxTotalViewers, "number",
|
|
"don't double-disable bfcache");
|
|
SpecialPowers.setIntPref("browser.sessionhistory.max_total_viewers",
|
|
gOrigMaxTotalViewers);
|
|
gOrigMaxTotalViewers = undefined;
|
|
try {
|
|
SpecialPowers.clearUserPref("browser.sessionhistory.cache_subframes");
|
|
} catch (e) { /* Pref didn't exist, meh */ }
|
|
}
|
|
}
|
|
|
|
function testSteps()
|
|
{
|
|
var iframe = $("iframe");
|
|
setCachePref(true);
|
|
window.onmessage = grabEventAndContinueHandler;
|
|
|
|
iframe.src = "bfcache_iframe1.html";
|
|
var event = yield undefined;
|
|
is(event.data, "go", "set up database successfully");
|
|
|
|
iframe.src = "bfcache_iframe2.html";
|
|
res = JSON.parse((yield).data);
|
|
is(res.version, 2, "version was set correctly");
|
|
is(res.storeCount, 1, "correct set of stores");
|
|
ok(!("blockedFired" in res), "blocked shouldn't fire");
|
|
is(res.value, JSON.stringify({ hello: "world" }),
|
|
"correct value found in store");
|
|
|
|
setCachePref(false);
|
|
finishTest();
|
|
yield undefined;
|
|
}
|
|
</script>
|
|
<script type="text/javascript;version=1.7" src="helpers.js"></script>
|
|
|
|
</head>
|
|
|
|
<body onload="_runTest();">
|
|
<iframe id="iframe"></iframe>
|
|
</body>
|
|
|
|
</html>
|