Skip to content

Commit 3e1ed1e

Browse files
cola119bengl
authored andcommitted
test: improve code coverage for inspector connection errors
PR-URL: #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>
1 parent 87b248e commit 3e1ed1e

File tree

1 file changed

+25
-4
lines changed

1 file changed

+25
-4
lines changed

test/parallel/test-inspector-connect-main-thread.js

+25-4
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ const { Session } = require('inspector');
88
const path = require('path');
99
const { pathToFileURL } = require('url');
1010
const { isMainThread, parentPort, Worker, workerData } =
11-
require('worker_threads');
11+
require('worker_threads');
1212

1313
if (!workerData) {
1414
common.skipIfWorker();
@@ -100,6 +100,17 @@ async function ensureListenerDoesNotInterrupt(session) {
100100
}
101101

102102
async function main() {
103+
assert.throws(
104+
() => {
105+
const session = new Session();
106+
session.connectToMainThread();
107+
},
108+
{
109+
code: 'ERR_INSPECTOR_NOT_WORKER',
110+
name: 'Error',
111+
message: 'Current thread is not a worker'
112+
}
113+
);
103114
const sharedBuffer = new SharedArrayBuffer(1);
104115
const arrayBuffer = new Uint8Array(sharedBuffer);
105116
arrayBuffer[0] = 1;
@@ -121,6 +132,16 @@ async function childMain() {
121132
await (await startWorker(true)).onMessagesSent;
122133
const session = new Session();
123134
session.connectToMainThread();
135+
assert.throws(
136+
() => {
137+
session.connectToMainThread();
138+
},
139+
{
140+
code: 'ERR_INSPECTOR_ALREADY_CONNECTED',
141+
name: 'Error',
142+
message: 'The inspector session is already connected'
143+
}
144+
);
124145
await post(session, 'Debugger.enable');
125146
await post(session, 'Runtime.enable');
126147
await post(session, 'Debugger.setBreakpointByUrl', {
@@ -137,9 +158,9 @@ async function childMain() {
137158
await new Promise((resolve) => setTimeout(resolve, 50));
138159

139160
const { result: { value } } =
140-
await post(session,
141-
'Debugger.evaluateOnCallFrame',
142-
{ callFrameId, expression: 'a * 100' });
161+
await post(session,
162+
'Debugger.evaluateOnCallFrame',
163+
{ callFrameId, expression: 'a * 100' });
143164
assert.strictEqual(value, 100);
144165
await post(session, 'Debugger.resume');
145166
await ensureListenerDoesNotInterrupt(session);

0 commit comments

Comments
 (0)