// Copyright 2018 the V8 project authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. let {session, contextGroup, Protocol} = InspectorTest.start('Breakpoint in liveedited script'); contextGroup.addScript( `function foo() { } var f = foo;`); const newSource = `function boo() { } function foo() { } f = foo;`; (async function test() { session.setupScriptMap(); Protocol.Debugger.enable(); const {params: {scriptId}} = await Protocol.Debugger.onceScriptParsed(); InspectorTest.log('Update script source'); let {result} = await Protocol.Debugger.setScriptSource( {scriptId, scriptSource: newSource}) InspectorTest.logMessage(result); InspectorTest.log('Set breakpoint'); ({result} = await Protocol.Debugger.setBreakpoint({location:{ scriptId, lineNumber: 3, columnNumber: 0 }})); InspectorTest.logMessage(result); InspectorTest.log('Call function foo and dump stack'); Protocol.Runtime.evaluate({expression: 'foo()'}); const {params:{callFrames}} = await Protocol.Debugger.oncePaused(); session.logCallFrames(callFrames); InspectorTest.completeTest(); })();