13
13
14
14
package io .reactivex .internal .operators .flowable ;
15
15
16
+ import static io .reactivex .internal .util .ExceptionHelper .timeoutMessage ;
16
17
import static org .junit .Assert .*;
17
18
import static org .mockito .ArgumentMatchers .*;
18
19
import static org .mockito .Mockito .*;
@@ -82,26 +83,24 @@ public void shouldNotTimeoutIfSecondOnNextWithinTimeout() {
82
83
83
84
@ Test
84
85
public void shouldTimeoutIfOnNextNotWithinTimeout () {
85
- Subscriber <String > subscriber = TestHelper .mockSubscriber ();
86
- TestSubscriber <String > ts = new TestSubscriber <String >(subscriber );
86
+ TestSubscriber <String > subscriber = new TestSubscriber <String >();
87
87
88
- withTimeout .subscribe (ts );
88
+ withTimeout .subscribe (subscriber );
89
89
90
90
testScheduler .advanceTimeBy (TIMEOUT + 1 , TimeUnit .SECONDS );
91
- verify (subscriber ).onError (any (TimeoutException .class ));
92
- ts .dispose ();
91
+ subscriber .assertFailureAndMessage (TimeoutException .class , timeoutMessage (TIMEOUT , TIME_UNIT ));
93
92
}
94
93
95
94
@ Test
96
95
public void shouldTimeoutIfSecondOnNextNotWithinTimeout () {
97
- Subscriber <String > subscriber = TestHelper . mockSubscriber ();
96
+ TestSubscriber <String > subscriber = new TestSubscriber < String > ();
98
97
TestSubscriber <String > ts = new TestSubscriber <String >(subscriber );
99
98
withTimeout .subscribe (subscriber );
100
99
testScheduler .advanceTimeBy (2 , TimeUnit .SECONDS );
101
100
underlyingSubject .onNext ("One" );
102
- verify ( subscriber ). onNext ("One" );
101
+ subscriber . assertValue ("One" );
103
102
testScheduler .advanceTimeBy (TIMEOUT + 1 , TimeUnit .SECONDS );
104
- verify ( subscriber ). onError ( any ( TimeoutException .class ) );
103
+ subscriber . assertFailureAndMessage ( TimeoutException .class , timeoutMessage ( TIMEOUT , TIME_UNIT ), "One" );
105
104
ts .dispose ();
106
105
}
107
106
@@ -235,8 +234,7 @@ public void shouldTimeoutIfSynchronizedFlowableEmitFirstOnNextNotWithinTimeout()
235
234
final CountDownLatch exit = new CountDownLatch (1 );
236
235
final CountDownLatch timeoutSetuped = new CountDownLatch (1 );
237
236
238
- final Subscriber <String > subscriber = TestHelper .mockSubscriber ();
239
- final TestSubscriber <String > ts = new TestSubscriber <String >(subscriber );
237
+ final TestSubscriber <String > subscriber = new TestSubscriber <String >();
240
238
241
239
new Thread (new Runnable () {
242
240
@@ -258,16 +256,14 @@ public void subscribe(Subscriber<? super String> subscriber) {
258
256
}
259
257
260
258
}).timeout (1 , TimeUnit .SECONDS , testScheduler )
261
- .subscribe (ts );
259
+ .subscribe (subscriber );
262
260
}
263
261
}).start ();
264
262
265
263
timeoutSetuped .await ();
266
264
testScheduler .advanceTimeBy (2 , TimeUnit .SECONDS );
267
265
268
- InOrder inOrder = inOrder (subscriber );
269
- inOrder .verify (subscriber , times (1 )).onError (isA (TimeoutException .class ));
270
- inOrder .verifyNoMoreInteractions ();
266
+ subscriber .assertFailureAndMessage (TimeoutException .class , timeoutMessage (1 , TimeUnit .SECONDS ));
271
267
272
268
exit .countDown (); // exit the thread
273
269
}
@@ -287,15 +283,12 @@ public void subscribe(Subscriber<? super String> subscriber) {
287
283
TestScheduler testScheduler = new TestScheduler ();
288
284
Flowable <String > observableWithTimeout = never .timeout (1000 , TimeUnit .MILLISECONDS , testScheduler );
289
285
290
- Subscriber <String > subscriber = TestHelper .mockSubscriber ();
291
- TestSubscriber <String > ts = new TestSubscriber <String >(subscriber );
292
- observableWithTimeout .subscribe (ts );
286
+ TestSubscriber <String > subscriber = new TestSubscriber <String >();
287
+ observableWithTimeout .subscribe (subscriber );
293
288
294
289
testScheduler .advanceTimeBy (2000 , TimeUnit .MILLISECONDS );
295
290
296
- InOrder inOrder = inOrder (subscriber );
297
- inOrder .verify (subscriber ).onError (isA (TimeoutException .class ));
298
- inOrder .verifyNoMoreInteractions ();
291
+ subscriber .assertFailureAndMessage (TimeoutException .class , timeoutMessage (1000 , TimeUnit .MILLISECONDS ));
299
292
300
293
verify (s , times (1 )).cancel ();
301
294
}
@@ -548,11 +541,13 @@ public void run() {
548
541
if (ts .valueCount () != 0 ) {
549
542
if (ts .errorCount () != 0 ) {
550
543
ts .assertFailure (TimeoutException .class , 1 );
544
+ ts .assertErrorMessage (timeoutMessage (1 , TimeUnit .SECONDS ));
551
545
} else {
552
546
ts .assertValuesOnly (1 );
553
547
}
554
548
} else {
555
549
ts .assertFailure (TimeoutException .class );
550
+ ts .assertErrorMessage (timeoutMessage (1 , TimeUnit .SECONDS ));
556
551
}
557
552
}
558
553
}
0 commit comments