summaryrefslogtreecommitdiffstats
path: root/dom/indexedDB/test/test_leaving_page.html
diff options
context:
space:
mode:
Diffstat (limited to 'dom/indexedDB/test/test_leaving_page.html')
-rw-r--r--dom/indexedDB/test/test_leaving_page.html48
1 files changed, 48 insertions, 0 deletions
diff --git a/dom/indexedDB/test/test_leaving_page.html b/dom/indexedDB/test/test_leaving_page.html
new file mode 100644
index 0000000000..d33e53150a
--- /dev/null
+++ b/dom/indexedDB/test/test_leaving_page.html
@@ -0,0 +1,48 @@
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<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>