summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/debug/Script-getChildScripts-03.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/jit-test/tests/debug/Script-getChildScripts-03.js')
-rw-r--r--js/src/jit-test/tests/debug/Script-getChildScripts-03.js16
1 files changed, 16 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/debug/Script-getChildScripts-03.js b/js/src/jit-test/tests/debug/Script-getChildScripts-03.js
new file mode 100644
index 0000000000..09e5cba32c
--- /dev/null
+++ b/js/src/jit-test/tests/debug/Script-getChildScripts-03.js
@@ -0,0 +1,16 @@
+// getChildScripts on a direct eval script returns the right scripts.
+// (A bug had it also returning the script for the calling function.)
+
+var g = newGlobal({newCompartment: true});
+var dbg = Debugger(g);
+var hits = 0;
+dbg.onDebuggerStatement = function (frame) {
+ var arr = frame.script.getChildScripts();
+ assertEq(arr.length, 1);
+ assertEq(arr[0], frame.eval("h").return.script);
+ hits++;
+};
+
+g.eval("function f(s) { eval(s); }");
+g.f("debugger; function h(a) { return a + 1; }");
+assertEq(hits, 1);