blob: 75dc023749a1d1d4e99e112974de79e0baa3e047 (
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
28
29
30
31
32
33
34
35
36
37
|
// Test debugger access to aliased and unaliased bindings work correctly.
load(libdir + "asserts.js");
var g = newGlobal();
var dbg = Debugger(g);
dbg.onDebuggerStatement = function (frame) {
let env = frame.environment.parent;
assertEq(env.getVariable('a'), 1);
assertEq(env.getVariable('b'), 2);
assertEq(env.getVariable('c'), 3);
assertEq(env.getVariable('d'), 4);
assertEq(env.getVariable('e'), 5);
};
g.eval(
`
let moduleRepo = {};
setModuleResolveHook(function(module, specifier) {
if (specifier in moduleRepo)
return moduleRepo[specifier];
throw "Module '" + specifier + "' not found";
});
let m = parseModule(
\`
var a = 1;
let b = 2;
export var c = 3;
export let d = 4;
let e = 5;
function f() { debugger; return e; }
\`);
m.declarationInstantiation();
m.evaluation();
`);
|