summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/debug/Object-executeInGlobal-07.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/jit-test/tests/debug/Object-executeInGlobal-07.js')
-rw-r--r--js/src/jit-test/tests/debug/Object-executeInGlobal-07.js29
1 files changed, 29 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/debug/Object-executeInGlobal-07.js b/js/src/jit-test/tests/debug/Object-executeInGlobal-07.js
new file mode 100644
index 0000000000..c7cdf8f8de
--- /dev/null
+++ b/js/src/jit-test/tests/debug/Object-executeInGlobal-07.js
@@ -0,0 +1,29 @@
+// executeInGlobal correctly handles optional custom url option
+var g = newGlobal({newCompartment: true});
+var dbg = new Debugger(g);
+var debuggee = dbg.getDebuggees()[0];
+var count = 0;
+
+function testUrl (options, expected) {
+ count++;
+ dbg.onNewScript = function(script){
+ dbg.onNewScript = undefined;
+ assertEq(script.url, expected);
+ count--;
+ };
+ debuggee.executeInGlobal("", options);
+}
+
+
+testUrl(undefined, "debugger eval code");
+testUrl(null, "debugger eval code");
+testUrl({ url: undefined }, "debugger eval code");
+testUrl({ url: null }, "null");
+testUrl({ url: 5 }, "5");
+testUrl({ url: "" }, "");
+testUrl({ url: "test" }, "test");
+testUrl({ url: "Ðëßþ" }, "Ðëßþ");
+testUrl({ url: "тест" }, "тест");
+testUrl({ url: "テスト" }, "テスト");
+testUrl({ url: "\u{1F9EA}" }, "\u{1F9EA}");
+assertEq(count, 0);