Environment-setVariable-15.js (752B)
1 // Debugger.Environment should throw trying to setVariable on a const binding. 2 3 load(libdir + "asserts.js"); 4 5 var g = newGlobal({newCompartment: true}); 6 var dbg = new Debugger; 7 dbg.addDebuggee(g); 8 9 dbg.onEnterFrame = (frame) => { 10 frame.onStep = () => { 11 if (frame.environment.getVariable("x") === 42) { 12 assertThrowsInstanceOf(() => frame.environment.setVariable("x", 43), TypeError); 13 assertEq(frame.environment.getVariable("x"), 42); 14 } 15 }; 16 }; 17 18 const unaliased = g.parseModule(` 19 const x = 42; 20 assertEq(x, 42); 21 `); 22 moduleLink(unaliased); 23 moduleEvaluate(unaliased); 24 25 const aliased = g.parseModule(` 26 const x = 42; 27 assertEq(x, 42); 28 29 function closedOver() { 30 return x; 31 } 32 `); 33 moduleLink(aliased); 34 moduleEvaluate(aliased);