Source code
Revision control
Copy as Markdown
Other Tools
Test Info:
- Manifest: dom/indexedDB/test/mochitest-private.toml includes dom/indexedDB/test/mochitest-common.toml
- Manifest: dom/indexedDB/test/mochitest-regular.toml includes dom/indexedDB/test/mochitest-common.toml
<!--
Any copyright is dedicated to the Public Domain.
-->
<html>
<head>
<title>Indexed Database Leaving Page Test</title>
<script src="/tests/SimpleTest/SimpleTest.js"></script>
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
</head>
<body onload="runTest();">
<iframe id="inner"></iframe>
<a id="a" href="leaving_page_iframe.html"></a>
<script type="text/javascript">
window.addEventListener("message", function(e) {
ok(false, "gotmessage: " + e.data);
});
function* testSteps()
{
var iframe = $("inner");
iframe.src = "leaving_page_iframe.html";
iframe.onload = continueToNextStep;
yield undefined;
is(iframe.contentWindow.location.href, $("a").href,
"should navigate to iframe page");
yield undefined;
is(iframe.contentWindow.location.href, "about:blank",
"should nagivate to about:blank");
let request = indexedDB.open(location, 1);
request.onsuccess = grabEventAndContinueHandler;
let event = yield undefined;
let db = event.target.result;
db.transaction(["mystore"]).objectStore("mystore").get(42).onsuccess =
grabEventAndContinueHandler;
event = yield undefined;
is(event.target.result.hello, "world", "second modification rolled back");
finishTest();
}
</script>
<script type="text/javascript" src="helpers.js"></script>
</html>