summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/debug/Object-environment-02.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/jit-test/tests/debug/Object-environment-02.js')
-rw-r--r--js/src/jit-test/tests/debug/Object-environment-02.js22
1 files changed, 22 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/debug/Object-environment-02.js b/js/src/jit-test/tests/debug/Object-environment-02.js
new file mode 100644
index 0000000000..d499e1ca2c
--- /dev/null
+++ b/js/src/jit-test/tests/debug/Object-environment-02.js
@@ -0,0 +1,22 @@
+// The .environment of a function Debugger.Object is an Environment object.
+
+var g = newGlobal({newCompartment: true})
+var dbg = new Debugger;
+var gDO = dbg.addDebuggee(g);
+
+function check(expr) {
+ print("checking " + JSON.stringify(expr));
+ let completion = gDO.executeInGlobal(expr);
+ if (completion.throw)
+ throw completion.throw.unsafeDereference();
+ assertEq(completion.return.environment instanceof Debugger.Environment, true);
+}
+
+g.eval('function j(a) { }');
+
+check('j');
+check('(() => { })');
+check('(function f() { })');
+check('(function* g() { })');
+check('(async function m() { })');
+check('(async function* n() { })');