File tree 1 file changed +18
-0
lines changed
src/test/java/rx/internal/operators
1 file changed +18
-0
lines changed Original file line number Diff line number Diff line change 23
23
import static org .mockito .Mockito .times ;
24
24
import static org .mockito .Mockito .verify ;
25
25
26
+ import java .util .Arrays ;
26
27
import java .util .concurrent .TimeUnit ;
27
28
28
29
import org .junit .Before ;
36
37
import rx .exceptions .TestException ;
37
38
import rx .functions .Action0 ;
38
39
import rx .functions .Func1 ;
40
+ import rx .observers .TestSubscriber ;
39
41
import rx .schedulers .TestScheduler ;
40
42
import rx .subjects .PublishSubject ;
41
43
@@ -287,4 +289,20 @@ public Observable<Integer> call(Integer t1) {
287
289
verify (o ).onCompleted ();
288
290
verify (o , never ()).onError (any (Throwable .class ));
289
291
}
292
+
293
+ @ Test
294
+ public void debounceWithTimeBackpressure () throws InterruptedException {
295
+ TestScheduler scheduler = new TestScheduler ();
296
+ TestSubscriber <Integer > subscriber = new TestSubscriber <Integer >();
297
+ Observable .merge (
298
+ Observable .just (1 ),
299
+ Observable .just (2 ).delay (10 , TimeUnit .MILLISECONDS , scheduler )
300
+ ).debounce (20 , TimeUnit .MILLISECONDS , scheduler ).take (1 ).subscribe (subscriber );
301
+
302
+ scheduler .advanceTimeBy (30 , TimeUnit .MILLISECONDS );
303
+
304
+ subscriber .assertReceivedOnNext (Arrays .asList (2 ));
305
+ subscriber .assertTerminalEvent ();
306
+ subscriber .assertNoErrors ();
307
+ }
290
308
}
You can’t perform that action at this time.
0 commit comments