@@ -61,7 +61,6 @@ export class PlaywrightTestServer {
6161 private _model : TestModel ;
6262 private _testServerPromise : Promise < TestServerConnectionWrapper > | undefined ;
6363 private _config ?: JsonConfig ;
64- private _globalSetupEnv : { [ key : string ] : string | undefined } = { } ;
6564
6665 constructor ( vscode : vscodeTypes . VSCode , model : TestModel , options : PlaywrightTestOptions ) {
6766 this . _vscode = vscode ;
@@ -152,10 +151,10 @@ export class PlaywrightTestServer {
152151 const { connection } = await this . _testServer ( ) ;
153152 if ( ! connection )
154153 return 'failed' ;
155- return await this . _runGlobalHooksInServer ( connection , type , testListener , token , true ) ;
154+ return await this . _runGlobalHooksInServer ( connection , type , testListener , token ) ;
156155 }
157156
158- private async _runGlobalHooksInServer ( testServer : TestServerConnection , type : 'setup' | 'teardown' , testListener : reporterTypes . ReporterV2 , token : vscodeTypes . CancellationToken , saveEnv : boolean ) : Promise < 'passed' | 'failed' | 'interrupted' | 'timedout' > {
157+ private async _runGlobalHooksInServer ( testServer : TestServerConnection , type : 'setup' | 'teardown' , testListener : reporterTypes . ReporterV2 , token : vscodeTypes . CancellationToken ) : Promise < 'passed' | 'failed' | 'interrupted' | 'timedout' > {
159158 const teleReceiver = new TeleReporterReceiver ( testListener , {
160159 mergeProjects : true ,
161160 mergeTestCases : true ,
@@ -166,17 +165,13 @@ export class PlaywrightTestServer {
166165 try {
167166 if ( type === 'setup' && ( ! this . _config || this . _config . globalSetup ) )
168167 testListener . onStdOut ?.( '\x1b[2mRunning global setup if any\u2026\x1b[0m\n' ) ;
169- const result = await Promise . race ( [
170- type === 'setup' ? testServer . runGlobalSetup ( { } ) : testServer . runGlobalTeardown ( { } ) . then ( result => ( { ... result , env : [ ] } ) ) ,
168+ const { report , status } = await Promise . race ( [
169+ type === 'setup' ? testServer . runGlobalSetup ( { } ) : testServer . runGlobalTeardown ( { } ) ,
171170 new Promise < { status : 'interrupted' , report : [ ] } > ( f => token . onCancellationRequested ( ( ) => f ( { status : 'interrupted' , report : [ ] } ) ) ) ,
172171 ] ) ;
173- for ( const message of result . report )
172+ for ( const message of report )
174173 void teleReceiver . dispatch ( message ) ;
175- if ( type === 'setup' && saveEnv && 'env' in result )
176- this . _globalSetupEnv = Object . fromEntries ( result . env . map ( ( [ key , value ] ) => [ key , value ?? undefined ] ) ) ;
177- if ( type === 'teardown' && saveEnv )
178- this . _globalSetupEnv = { } ;
179- return result . status ;
174+ return status ;
180175 } finally {
181176 disposable . dispose ( ) ;
182177 }
@@ -263,7 +258,7 @@ export class PlaywrightTestServer {
263258 } ;
264259 }
265260
266- async debugTests ( request : vscodeTypes . TestRunRequest , runOptions : PlaywrightTestRunOptions , reporter : reporterTypes . ReporterV2 , token : vscodeTypes . CancellationToken , debugGlobalSetup : boolean ) : Promise < void > {
261+ async debugTests ( request : vscodeTypes . TestRunRequest , runOptions : PlaywrightTestRunOptions , reporter : reporterTypes . ReporterV2 , token : vscodeTypes . CancellationToken ) : Promise < void > {
267262 const addressPromise = new Promise < string > ( f => {
268263 const disposable = this . _options . onStdOut ( output => {
269264 const match = output . match ( / L i s t e n i n g o n ( .* ) / ) ;
@@ -308,7 +303,6 @@ export class PlaywrightTestServer {
308303 ...process . env ,
309304 CI : this . _options . isUnderTest ? undefined : process . env . CI ,
310305 ...this . _options . envProvider ( this . _model . config . configFile ) ,
311- ...( debugGlobalSetup ? { } : this . _globalSetupEnv ) ,
312306 // Reset VSCode's options that affect nested Electron.
313307 ELECTRON_RUN_AS_NODE : undefined ,
314308 FORCE_COLOR : '1' ,
@@ -335,11 +329,9 @@ export class PlaywrightTestServer {
335329 if ( ! locations && ! testIds )
336330 return ;
337331
338- if ( debugGlobalSetup ) {
339- const result = await this . _runGlobalHooksInServer ( debugTestServer , 'setup' , reporter , token , false ) ;
340- if ( result !== 'passed' )
341- return ;
342- }
332+ const result = await this . _runGlobalHooksInServer ( debugTestServer , 'setup' , reporter , token ) ;
333+ if ( result !== 'passed' )
334+ return ;
343335
344336 // Locations are regular expressions.
345337 const locationPatterns = locations ? locations . map ( escapeRegex ) : [ ] ;
@@ -364,8 +356,8 @@ export class PlaywrightTestServer {
364356 }
365357 } finally {
366358 disposables . forEach ( disposable => disposable . dispose ( ) ) ;
367- if ( debugGlobalSetup && ! token . isCancellationRequested && debugTestServer && ! debugTestServer . isClosed ( ) )
368- await this . _runGlobalHooksInServer ( debugTestServer , 'teardown' , reporter , token , false ) ;
359+ if ( ! token . isCancellationRequested && debugTestServer && ! debugTestServer . isClosed ( ) )
360+ await this . _runGlobalHooksInServer ( debugTestServer , 'teardown' , reporter , token ) ;
369361 if ( debugTestServer ) {
370362 // Should exit upon close automatically.
371363 debugTestServer . close ( ) ;
0 commit comments