| // 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. |
| |
| const {session, contextGroup, Protocol} = |
| InspectorTest.start('Evaluate at first line of module should not crash'); |
| |
| const utilsModule = `export function identity(value) { |
| return value; |
| }`; |
| |
| const mainModule = `import {identity} from 'utils'; |
| console.log(identity(0));`; |
| |
| (async function test() { |
| Protocol.Debugger.enable(); |
| Protocol.Debugger.setBreakpointByUrl({ |
| lineNumber: 1, |
| url: 'main' |
| }); |
| |
| contextGroup.addModule(utilsModule, 'utils'); |
| contextGroup.addModule(mainModule, 'main'); |
| const { params: { callFrames } } = await Protocol.Debugger.oncePaused(); |
| const result = await Protocol.Debugger.evaluateOnCallFrame({ |
| callFrameId: callFrames[0].callFrameId, |
| expression: 'identity(0)' |
| }); |
| InspectorTest.logMessage(result); |
| InspectorTest.completeTest(); |
| })() |