node/test/parallel/test-debugger-probe-explicit-column.js
Joyee Cheung f30139e3b9
debugger: add more logs to probe mode
Add more log points in the probe mode and enable the debuglog
int the probe mode tests.

Signed-off-by: Joyee Cheung <joyeec9h3@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/63663
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Kohei Ueno <kohei.ueno119@gmail.com>
2026-06-01 20:36:47 +00:00

72 lines
2.1 KiB
JavaScript

// Tests that probes on the same line but different columns are hit separately.
'use strict';
const common = require('../common');
common.skipIfInspectorDisabled();
const fixtures = require('../common/fixtures');
const { spawnSyncAndAssert } = require('../common/child_process');
const { assertProbeJson } = require('../common/debugger-probe');
const cwd = fixtures.path('debugger');
const fixtureUrl = fixtures.fileURL('debugger', 'probe-multi-statement.js').href;
// col 3: acc === []
// col 16: acc === [1]
// col 29: acc === [1, 2]
spawnSyncAndAssert(process.execPath, [
'inspect',
'--json',
'--probe', 'probe-multi-statement.js:5:3',
'--expr', 'acc.length',
'--probe', 'probe-multi-statement.js:5:16',
'--expr', 'acc.length',
'--probe', 'probe-multi-statement.js:5:29',
'--expr', 'acc.length',
'probe-multi-statement.js',
], { cwd, env: { ...process.env, NODE_DEBUG: 'inspect_probe' } }, {
stdout(output) {
assertProbeJson(output, {
v: 2,
probes: [
{
expr: 'acc.length',
target: { suffix: 'probe-multi-statement.js', line: 5, column: 3 },
},
{
expr: 'acc.length',
target: { suffix: 'probe-multi-statement.js', line: 5, column: 16 },
},
{
expr: 'acc.length',
target: { suffix: 'probe-multi-statement.js', line: 5, column: 29 },
},
],
results: [
{
probe: 0,
event: 'hit',
hit: 1,
location: { url: fixtureUrl, line: 5, column: 3 },
result: { type: 'number', value: 0, description: '0' },
},
{
probe: 1,
event: 'hit',
hit: 1,
location: { url: fixtureUrl, line: 5, column: 16 },
result: { type: 'number', value: 1, description: '1' },
},
{
probe: 2,
event: 'hit',
hit: 1,
location: { url: fixtureUrl, line: 5, column: 29 },
result: { type: 'number', value: 2, description: '2' },
},
{ event: 'completed' },
],
});
},
trim: true,
});