@@ -8,7 +8,7 @@ const { Session } = require('inspector');
8
8
const path = require ( 'path' ) ;
9
9
const { pathToFileURL } = require ( 'url' ) ;
10
10
const { isMainThread, parentPort, Worker, workerData } =
11
- require ( 'worker_threads' ) ;
11
+ require ( 'worker_threads' ) ;
12
12
13
13
if ( ! workerData ) {
14
14
common . skipIfWorker ( ) ;
@@ -100,6 +100,17 @@ async function ensureListenerDoesNotInterrupt(session) {
100
100
}
101
101
102
102
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
+ ) ;
103
114
const sharedBuffer = new SharedArrayBuffer ( 1 ) ;
104
115
const arrayBuffer = new Uint8Array ( sharedBuffer ) ;
105
116
arrayBuffer [ 0 ] = 1 ;
@@ -121,6 +132,16 @@ async function childMain() {
121
132
await ( await startWorker ( true ) ) . onMessagesSent ;
122
133
const session = new Session ( ) ;
123
134
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
+ ) ;
124
145
await post ( session , 'Debugger.enable' ) ;
125
146
await post ( session , 'Runtime.enable' ) ;
126
147
await post ( session , 'Debugger.setBreakpointByUrl' , {
@@ -137,9 +158,9 @@ async function childMain() {
137
158
await new Promise ( ( resolve ) => setTimeout ( resolve , 50 ) ) ;
138
159
139
160
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' } ) ;
143
164
assert . strictEqual ( value , 100 ) ;
144
165
await post ( session , 'Debugger.resume' ) ;
145
166
await ensureListenerDoesNotInterrupt ( session ) ;
0 commit comments