1
1
import { mkdirSync } from 'fs'
2
- import path from 'path '
2
+ import { createRequire } from 'module '
3
3
import { fileURLToPath } from 'node:url'
4
+ import path from 'path'
5
+ import { watch } from 'chokidar'
6
+ import { execa } from 'execa'
4
7
import { asyncExitHook , gracefulExit } from 'exit-hook'
5
8
import mergeOptions from 'merge-options'
6
9
import { nanoid } from 'nanoid'
7
- import { watch } from 'chokidar'
8
- import { execa } from 'execa'
9
10
import { premove } from 'premove'
10
- import { createPolka , findTests , log } from '../utils/index.js'
11
11
import * as DefaultRunners from '../test-runners.js'
12
+ import { createPolka , findTests , log } from '../utils/index.js'
12
13
import { build } from './utils.js'
13
14
14
15
const __dirname = path . dirname ( fileURLToPath ( import . meta. url ) )
15
16
const merge = mergeOptions . bind ( { ignoreUndefined : true } )
17
+ const require = createRequire ( import . meta. url )
16
18
17
19
/**
18
20
* @typedef {import('playwright-core').Page } Page
@@ -122,6 +124,7 @@ export class NodeRunner {
122
124
123
125
await this . #setupServer( )
124
126
await this . options . beforeTests ( this . env )
127
+ const sourceMapRegisterPath = require . resolve ( 'source-map-support/register' )
125
128
126
129
try {
127
130
const { outName } = await this . runTests ( )
@@ -138,7 +141,7 @@ export class NodeRunner {
138
141
this . dir ,
139
142
'node' ,
140
143
'-r' ,
141
- 'source-map-support/register' ,
144
+ sourceMapRegisterPath ,
142
145
path . join ( this . dir , outName ) ,
143
146
] ,
144
147
{
@@ -148,7 +151,7 @@ export class NodeRunner {
148
151
)
149
152
: execa (
150
153
'node' ,
151
- [ '-r' , 'source-map-support/register' , path . join ( this . dir , outName ) ] ,
154
+ [ '-r' , sourceMapRegisterPath , path . join ( this . dir , outName ) ] ,
152
155
{
153
156
preferLocal : true ,
154
157
stdio : 'inherit' ,
@@ -167,12 +170,13 @@ export class NodeRunner {
167
170
168
171
await this . #setupServer( )
169
172
await this . options . beforeTests ( this . env )
173
+ const sourceMapRegisterPath = require . resolve ( 'source-map-support/register' )
170
174
171
175
const { files, outName } = await this . runTests ( )
172
176
try {
173
177
await execa (
174
178
'node' ,
175
- [ '-r' , 'source-map-support/register' , path . join ( this . dir , outName ) ] ,
179
+ [ '-r' , sourceMapRegisterPath , path . join ( this . dir , outName ) ] ,
176
180
{
177
181
stdio : 'inherit' ,
178
182
}
@@ -190,7 +194,7 @@ export class NodeRunner {
190
194
const { files, outName } = await this . runTests ( )
191
195
await execa (
192
196
'node' ,
193
- [ '-r' , 'source-map-support/register' , path . join ( this . dir , outName ) ] ,
197
+ [ '-r' , sourceMapRegisterPath , path . join ( this . dir , outName ) ] ,
194
198
{
195
199
stdio : 'inherit' ,
196
200
}
0 commit comments