diff options
Diffstat (limited to 'js/src/jit-test/tests/debug/Object-getProperty-02.js')
-rw-r--r-- | js/src/jit-test/tests/debug/Object-getProperty-02.js | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/debug/Object-getProperty-02.js b/js/src/jit-test/tests/debug/Object-getProperty-02.js new file mode 100644 index 0000000000..cb38cb5a26 --- /dev/null +++ b/js/src/jit-test/tests/debug/Object-getProperty-02.js @@ -0,0 +1,35 @@ +// tests calling script functions via Debugger.Object.prototype.getProperty +// to see if they trigger debugger traps +"use strict"; + +var global = newGlobal({newCompartment: true}); +var dbg = new Debugger(global); +dbg.onDebuggerStatement = onDebuggerStatement; + +let obj; +global.eval(` +const obj = { + get prop() { + debugger; + return 42; + } +}; + +debugger; +`); + + +function onDebuggerStatement(frame) { + dbg.onDebuggerStatement = onDebuggerStatementGetter; + + obj = frame.environment.getVariable("obj"); +} + +let debuggerRan = false; + +assertEq(obj.getProperty("prop").return, 42); +assertEq(debuggerRan, true); + +function onDebuggerStatementGetter(frame) { + debuggerRan = true; +} |