summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/debug/Debugger-onNativeCall-09.js
blob: fdf33100df43f4cbd927f82cf149def0a79ffbe8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
// Test that the onNativeCall hook is called when native function is
// called via DebuggerObject.apply DebuggerObject.call

load(libdir + "eqArrayHelper.js");

var g = newGlobal({ newCompartment: true });
var dbg = new Debugger();
var gdbg = dbg.addDebuggee(g);

g.eval(`
function f() {
  Array.from([1, 2]);
}
`);
const fdbgObj = gdbg.getOwnPropertyDescriptor("f").value;

let rv = [];
dbg.onNativeCall = (callee, reason) => {
  rv.push(callee.name);
};

fdbgObj.call();
assertEqArray(rv, ["from", "values", "next", "next", "next"]);

rv = [];
fdbgObj.apply();
assertEqArray(rv, ["from", "values", "next", "next", "next"]);