node/deps/v8/test/inspector/debugger/evaluate-with-await-on-breakpoint.js
Michaël Zasso 270253c4e2
deps: update V8 to 9.7.106.18
PR-URL: https://github.com/nodejs/node/pull/40907
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
2022-01-20 10:38:37 +01:00

40 lines
1.2 KiB
JavaScript

// Copyright 2021 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('Test evaluating await expression on a breakpoint');
contextGroup.addScript(`
async function run() {
debugger;
}`);
InspectorTest.runAsyncTestSuite([async function testScopesPaused() {
Protocol.Debugger.enable();
Protocol.Runtime.evaluate({expression: 'run()'});
let {params: {callFrames}} =
await Protocol.Debugger.oncePaused(); // inside a.fn()
({result} = await Protocol.Debugger.evaluateOnCallFrame({
expression: 'await Promise.resolve(0)',
callFrameId: callFrames[0].callFrameId
}));
InspectorTest.log('Evaluating await expression');
InspectorTest.logObject(result);
({result} = await Protocol.Debugger.evaluateOnCallFrame({
expression:
'async function nested() { await fetch(\'http://google.com\'); } nested()',
callFrameId: callFrames[0].callFrameId
}));
InspectorTest.log('Evaluating await expression in async function');
InspectorTest.logObject(result);
Protocol.Debugger.resume();
Protocol.Debugger.disable();
}]);