@@ -679,16 +679,22 @@ typealias TestPoolStateMachine = PoolStateMachine<
679679 #expect( leaseRequests [ i] . request == . none)
680680 }
681681
682- let connections = ( 0 ..< 5 ) . map { MockConnection ( id: $0) }
683- let connectedActions = ( 0 ..< 5 ) . map { stateMachine. connectionEstablished ( connections [ $0] , maxStreams: 1 ) }
682+ // only 4 connections are created as once 4 are created we have enough streams and connections available to serve
683+ // all requests
684+ let connections = ( 0 ..< 4 ) . map { MockConnection ( id: $0) }
685+ let connectedActions = ( 0 ..< 4 ) . map { stateMachine. connectionEstablished ( connections [ $0] , maxStreams: 1 ) }
684686 #expect( connectedActions [ 0 ] . connection == . makeConnectionsCancelAndScheduleTimers( . init( element: . init( connectionID: 3 ) ) , [ ] , [ ] ) )
685- #expect( connectedActions [ 1 ] . connection == . makeConnectionsCancelAndScheduleTimers ( . init ( element : . init ( connectionID : 4 ) ) , [ ] , [ ] ) )
687+ #expect( connectedActions [ 1 ] . connection == . cancelTimers ( [ ] ) )
686688 #expect( connectedActions [ 2 ] . connection == . cancelTimers( [ ] ) )
687689 #expect( connectedActions [ 3 ] . connection == . cancelTimers( [ ] ) )
688- #expect( connectedActions [ 4 ] . connection == . cancelTimers( [ ] ) )
689- for i in 0 ..< 5 {
690+ for i in 0 ..< 4 {
690691 #expect( connectedActions [ i] . request == . leaseConnection( [ requests [ i] ] , connections [ i] ) )
691692 }
693+ let releaseActions = ( 0 ..< 4 ) . map { stateMachine. releaseConnection ( connections [ $0] , streams: 1 ) }
694+ #expect( releaseActions [ 0 ] . request == . leaseConnection( [ requests [ 4 ] ] , connections [ 0 ] ) )
695+ #expect( releaseActions [ 1 ] . request == . none)
696+ #expect( releaseActions [ 2 ] . request == . none)
697+ #expect( releaseActions [ 3 ] . request == . none)
692698 }
693699
694700 @available ( macOS 13 . 0 , iOS 16 . 0 , tvOS 16 . 0 , watchOS 9 . 0 , * )
0 commit comments