summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/debug/Debugger-findScripts-05.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/jit-test/tests/debug/Debugger-findScripts-05.js')
-rw-r--r--js/src/jit-test/tests/debug/Debugger-findScripts-05.js18
1 files changed, 18 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/debug/Debugger-findScripts-05.js b/js/src/jit-test/tests/debug/Debugger-findScripts-05.js
new file mode 100644
index 0000000000..b82dfda34b
--- /dev/null
+++ b/js/src/jit-test/tests/debug/Debugger-findScripts-05.js
@@ -0,0 +1,18 @@
+// findScripts' result includes scripts for nested functions.
+var g = newGlobal({newCompartment: true});
+var dbg = new Debugger();
+var gw = dbg.addDebuggee(g);
+var log;
+
+g.eval('function f() { return function g() { return function h() { return "Squee!"; } } }');
+var fw = gw.makeDebuggeeValue(g.f);
+var gw = gw.makeDebuggeeValue(g.f());
+var hw = gw.makeDebuggeeValue(g.f()());
+
+assertEq(fw.script != gw.script, true);
+assertEq(fw.script != hw.script, true);
+
+var scripts = dbg.findScripts();
+assertEq(scripts.indexOf(fw.script) != -1, true);
+assertEq(scripts.indexOf(gw.script) != -1, true);
+assertEq(scripts.indexOf(hw.script) != -1, true);