@@ -95,7 +95,7 @@ test('owned connect returns a missed election without waiting for a late candida
9595
9696 assert . ok ( launched >= 1 , 'launchCandidate must run before the election ends' ) ;
9797 assert . equal ( result . kind , 'failed' ) ;
98- assert . equal ( ownedConnectFailure ( result ) , 'failed:startup_timeout' ) ;
98+ assert . equal ( connectFailure ( result ) , 'failed:startup_timeout' ) ;
9999 assert . equal ( spawnedSettled , false ) ;
100100
101101 resolveSpawned ( {
@@ -156,7 +156,7 @@ test('a late owned candidate stays alive after another client adopts it', {
156156 ) ;
157157
158158 assert . equal ( missed . kind , 'failed' ) ;
159- assert . equal ( ownedConnectFailure ( missed ) , 'failed:startup_timeout' ) ;
159+ assert . equal ( connectFailure ( missed ) , 'failed:startup_timeout' ) ;
160160
161161 const host = await waitForDefined (
162162 ( ) => launchedHost ,
@@ -184,12 +184,26 @@ test('a late owned candidate stays alive after another client adopts it', {
184184 ) ;
185185
186186 try {
187- assert . equal ( adopted . kind , 'connected' , adoptedConnectFailure ( adopted ) ) ;
187+ assert . equal ( adopted . kind , 'connected' , connectFailure ( adopted ) ) ;
188188 if ( adopted . kind !== 'connected' ) return ;
189189
190+ let released = 0 ;
191+ let settled = 0 ;
190192 lateDelivered = true ;
191- resolveLate ( host ) ;
193+ resolveLate ( {
194+ ...host ,
195+ releaseToEnvironment ( ) {
196+ released += 1 ;
197+ host . releaseToEnvironment ( ) ;
198+ } ,
199+ async settle ( timeoutMs ) {
200+ settled += 1 ;
201+ return host . settle ( timeoutMs ) ;
202+ } ,
203+ } ) ;
192204 await lateSpawned ;
205+ assert . equal ( released , 1 ) ;
206+ assert . equal ( settled , 0 ) ;
193207
194208 const diagnostics = await adopted . connection . queryHostDiagnostics ( ) ;
195209 assert . equal ( diagnostics . pid , host . pid ) ;
@@ -222,7 +236,7 @@ test('owned Host exits promptly after its first connection closes', async () =>
222236 { launchCandidate : launchOwnedRuntimeHostCandidate } ,
223237 ) ;
224238
225- assert . equal ( result . kind , 'connected' , ownedConnectFailure ( result ) ) ;
239+ assert . equal ( result . kind , 'connected' , connectFailure ( result ) ) ;
226240 if ( result . kind !== 'connected' ) return ;
227241 await result . connection . close ( ) ;
228242 assert . equal ( await result . host . settle ( 500 ) , true ) ;
@@ -298,17 +312,10 @@ test('pre-cancelled hosted execution does not start a Runtime Host', async () =>
298312 assert . deepEqual ( await readdir ( rootPath ) , [ ] ) ;
299313} ) ;
300314
301- function ownedConnectFailure (
302- result : Awaited < ReturnType < typeof connectOwnedRuntimeHostWithDependencies > > ,
303- ) : string {
304- if ( result . kind === 'connected' ) return 'connected' ;
305- if ( result . kind === 'failed' ) return `failed:${ result . reason } ` ;
306- if ( result . kind === 'upgrade_required' ) return 'upgrade_required' ;
307- return `incompatible:${ result . handshake . replacement } ` ;
308- }
309-
310- function adoptedConnectFailure (
311- result : Awaited < ReturnType < typeof connectOrSpawnRuntimeHostWithDependencies > > ,
315+ function connectFailure (
316+ result :
317+ | Awaited < ReturnType < typeof connectOwnedRuntimeHostWithDependencies > >
318+ | Awaited < ReturnType < typeof connectOrSpawnRuntimeHostWithDependencies > > ,
312319) : string {
313320 if ( result . kind === 'connected' ) return 'connected' ;
314321 if ( result . kind === 'failed' ) return `failed:${ result . reason } ` ;
0 commit comments