nodejs-mozilla/test/parallel/test-inspector-console-top-...

32 lines
940 B
JavaScript

'use strict';
// Verify that the line containing console.log is reported as a top stack frame
// of the consoleAPICalled notification.
// Changing this will break many Inspector protocol clients, including
// debuggers that use that value for navigating from console messages to code.
const common = require('../common');
common.skipIfInspectorDisabled();
const assert = require('assert');
const { Session } = require('inspector');
const { basename } = require('path');
function logMessage() {
console.log('Log a message');
}
const session = new Session();
let topFrame;
session.once('Runtime.consoleAPICalled', (notification) => {
topFrame = (notification.params.stackTrace.callFrames[0]);
});
session.connect();
session.post('Runtime.enable');
logMessage(); // Triggers Inspector notification
session.disconnect();
assert.strictEqual(basename(topFrame.url), basename(__filename));
assert.strictEqual(topFrame.lineNumber, 15);