summaryrefslogtreecommitdiffstats
path: root/dom/indexedDB/test/browserHelpers.js
diff options
context:
space:
mode:
Diffstat (limited to 'dom/indexedDB/test/browserHelpers.js')
-rw-r--r--dom/indexedDB/test/browserHelpers.js56
1 files changed, 56 insertions, 0 deletions
diff --git a/dom/indexedDB/test/browserHelpers.js b/dom/indexedDB/test/browserHelpers.js
new file mode 100644
index 000000000..c61c78943
--- /dev/null
+++ b/dom/indexedDB/test/browserHelpers.js
@@ -0,0 +1,56 @@
+/**
+ * Any copyright is dedicated to the Public Domain.
+ * http://creativecommons.org/publicdomain/zero/1.0/
+ */
+
+var testGenerator = testSteps();
+
+var testResult;
+var testException;
+
+function runTest()
+{
+ testGenerator.next();
+}
+
+function finishTestNow()
+{
+ if (testGenerator) {
+ testGenerator.close();
+ testGenerator = undefined;
+ }
+}
+
+function finishTest()
+{
+ setTimeout(finishTestNow, 0);
+ setTimeout(() => {
+ if (window.testFinishedCallback)
+ window.testFinishedCallback(testResult, testException);
+ else {
+ let message;
+ if (testResult)
+ message = "ok";
+ else
+ message = testException;
+ window.parent.postMessage(message, "*");
+ }
+ }, 0);
+}
+
+function grabEventAndContinueHandler(event)
+{
+ testGenerator.send(event);
+}
+
+function errorHandler(event)
+{
+ throw new Error("indexedDB error, code " + event.target.error.name);
+}
+
+function continueToNextStep()
+{
+ SimpleTest.executeSoon(function() {
+ testGenerator.next();
+ });
+}