File tree Expand file tree Collapse file tree 1 file changed +14
-10
lines changed
Expand file tree Collapse file tree 1 file changed +14
-10
lines changed Original file line number Diff line number Diff line change @@ -104,27 +104,31 @@ public async Task YieldAsync_MultipleCalls_ShouldAllCompleteFast()
104104 public async Task YieldAsync_WhenPaused_ShouldWaitForResume ( )
105105 {
106106 // Arrange
107- TaskCompletionSource < bool > tcs = new ( ) ;
107+ TaskCompletionSource < bool > pausedTcs = new ( ) ;
108108 OwnRequest ? capturedRequest = null ;
109109 using OwnRequest request = CreateParallelRequest ( async token =>
110110 {
111- tcs . SetResult ( true ) ;
112- await capturedRequest ! . YieldAsync ( ) ;
111+ capturedRequest ! . Pause ( ) ;
112+ pausedTcs . SetResult ( true ) ;
113+ // This yield should wait because we're paused
114+ await capturedRequest . YieldAsync ( ) ;
113115 return true ;
114116 } ) ;
115117 capturedRequest = request ;
116118
117- await tcs . Task ; // Wait for request to start
118-
119- // Act
120- request . Pause ( ) ;
121- ValueTask yieldTask = request . YieldAsync ( ) ;
119+ await pausedTcs . Task ;
122120
123121 // Assert
124- yieldTask . IsCompleted . Should ( ) . BeFalse ( "Should wait when paused" ) ;
122+ request . State . Should ( ) . Be ( RequestState . Paused ) ;
123+ await Task . Delay ( 200 ) ;
124+ request . State . Should ( ) . Be ( RequestState . Paused ) ;
125125
126+ // Act
126127 request . Start ( ) ;
127- await Task . Delay ( 50 ) ; // Give time for resume
128+ await Task . Delay ( 100 ) ; // Give time to complete
129+
130+ // Assert - should complete successfully
131+ request . State . Should ( ) . Be ( RequestState . Completed ) ;
128132 }
129133
130134 [ Test ]
You can’t perform that action at this time.
0 commit comments