mirror of
https://github.com/zebrajr/node.git
synced 2026-01-15 12:15:26 +00:00
test: improve code coverage for inspector connection errors
PR-URL: https://github.com/nodejs/node/pull/42310 Refs: https://coverage.nodejs.org/coverage-457567f72ca73ef0/lib/inspector.js.html#L74 Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Michael Dawson <midawson@redhat.com>
This commit is contained in:
@@ -8,7 +8,7 @@ const { Session } = require('inspector');
|
||||
const path = require('path');
|
||||
const { pathToFileURL } = require('url');
|
||||
const { isMainThread, parentPort, Worker, workerData } =
|
||||
require('worker_threads');
|
||||
require('worker_threads');
|
||||
|
||||
if (!workerData) {
|
||||
common.skipIfWorker();
|
||||
@@ -100,6 +100,17 @@ async function ensureListenerDoesNotInterrupt(session) {
|
||||
}
|
||||
|
||||
async function main() {
|
||||
assert.throws(
|
||||
() => {
|
||||
const session = new Session();
|
||||
session.connectToMainThread();
|
||||
},
|
||||
{
|
||||
code: 'ERR_INSPECTOR_NOT_WORKER',
|
||||
name: 'Error',
|
||||
message: 'Current thread is not a worker'
|
||||
}
|
||||
);
|
||||
const sharedBuffer = new SharedArrayBuffer(1);
|
||||
const arrayBuffer = new Uint8Array(sharedBuffer);
|
||||
arrayBuffer[0] = 1;
|
||||
@@ -121,6 +132,16 @@ async function childMain() {
|
||||
await (await startWorker(true)).onMessagesSent;
|
||||
const session = new Session();
|
||||
session.connectToMainThread();
|
||||
assert.throws(
|
||||
() => {
|
||||
session.connectToMainThread();
|
||||
},
|
||||
{
|
||||
code: 'ERR_INSPECTOR_ALREADY_CONNECTED',
|
||||
name: 'Error',
|
||||
message: 'The inspector session is already connected'
|
||||
}
|
||||
);
|
||||
await post(session, 'Debugger.enable');
|
||||
await post(session, 'Runtime.enable');
|
||||
await post(session, 'Debugger.setBreakpointByUrl', {
|
||||
@@ -137,9 +158,9 @@ async function childMain() {
|
||||
await new Promise((resolve) => setTimeout(resolve, 50));
|
||||
|
||||
const { result: { value } } =
|
||||
await post(session,
|
||||
'Debugger.evaluateOnCallFrame',
|
||||
{ callFrameId, expression: 'a * 100' });
|
||||
await post(session,
|
||||
'Debugger.evaluateOnCallFrame',
|
||||
{ callFrameId, expression: 'a * 100' });
|
||||
assert.strictEqual(value, 100);
|
||||
await post(session, 'Debugger.resume');
|
||||
await ensureListenerDoesNotInterrupt(session);
|
||||
|
||||
Reference in New Issue
Block a user