summaryrefslogtreecommitdiffstats
path: root/dom/indexedDB/test/unit/test_globalObjects_other.js
diff options
context:
space:
mode:
Diffstat (limited to 'dom/indexedDB/test/unit/test_globalObjects_other.js')
-rw-r--r--dom/indexedDB/test/unit/test_globalObjects_other.js54
1 files changed, 54 insertions, 0 deletions
diff --git a/dom/indexedDB/test/unit/test_globalObjects_other.js b/dom/indexedDB/test/unit/test_globalObjects_other.js
new file mode 100644
index 0000000000..2687675689
--- /dev/null
+++ b/dom/indexedDB/test/unit/test_globalObjects_other.js
@@ -0,0 +1,54 @@
+/**
+ * Any copyright is dedicated to the Public Domain.
+ * http://creativecommons.org/publicdomain/zero/1.0/
+ */
+
+var testGenerator = testSteps();
+
+function* testSteps() {
+ function getSpec(filename) {
+ let file = do_get_file(filename);
+ let uri = Services.io.newFileURI(file);
+ return uri.spec;
+ }
+
+ // Test for IDBKeyRange and indexedDB availability in JS modules.
+ const { GlobalObjectsModule } = ChromeUtils.importESModule(
+ "resource://test/GlobalObjectsModule.sys.mjs"
+ );
+ let test = new GlobalObjectsModule();
+ test.ok = ok;
+ test.finishTest = continueToNextStep;
+ test.runTest();
+ yield undefined;
+
+ // Test for IDBKeyRange and indexedDB availability in JS sandboxes.
+ let principal = Cc["@mozilla.org/systemprincipal;1"].createInstance(
+ Ci.nsIPrincipal
+ );
+ let sandbox = new Cu.Sandbox(principal, {
+ wantGlobalProperties: ["indexedDB"],
+ });
+ sandbox.__SCRIPT_URI_SPEC__ = getSpec("GlobalObjectsSandbox.js");
+ Cu.evalInSandbox(
+ "Components.classes['@mozilla.org/moz/jssubscript-loader;1'] \
+ .createInstance(Components.interfaces.mozIJSSubScriptLoader) \
+ .loadSubScript(__SCRIPT_URI_SPEC__);",
+ sandbox,
+ "1.7"
+ );
+ sandbox.ok = ok;
+ sandbox.finishTest = continueToNextStep;
+ Cu.evalInSandbox("runTest();", sandbox);
+ yield undefined;
+
+ finishTest();
+ yield undefined;
+}
+
+this.runTest = function () {
+ do_get_profile();
+
+ do_test_pending();
+ testGenerator.next();
+};