diff --git a/rxjava-core/src/test/java/rx/ObserveOnTests.java b/rxjava-core/src/test/java/rx/ObserveOnTests.java index 3f9e474787..72c1f1343d 100644 --- a/rxjava-core/src/test/java/rx/ObserveOnTests.java +++ b/rxjava-core/src/test/java/rx/ObserveOnTests.java @@ -35,7 +35,7 @@ public void testObserveOnWithNewThreadScheduler() { final AtomicInteger count = new AtomicInteger(); final int _multiple = 99; - Observable.range(1, 100000).map(new Func1() { + Observable.range(1, 1000).map(new Func1() { @Override public Integer call(Integer t1) { @@ -62,7 +62,7 @@ public void testObserveOnWithThreadPoolScheduler() { final AtomicInteger count = new AtomicInteger(); final int _multiple = 99; - Observable.range(1, 100000).map(new Func1() { + Observable.range(1, 1000).map(new Func1() { @Override public Integer call(Integer t1) { @@ -95,7 +95,7 @@ public void testObserveOnOrderingConcurrency() { final AtomicInteger count = new AtomicInteger(); final int _multiple = 99; - Observable.range(1, 10000).map(new Func1() { + Observable.range(1, 1000).map(new Func1() { @Override public Integer call(Integer t1) { diff --git a/rxjava-core/src/test/java/rx/schedulers/AbstractSchedulerTests.java b/rxjava-core/src/test/java/rx/schedulers/AbstractSchedulerTests.java index ddf4f959a6..07d430f625 100644 --- a/rxjava-core/src/test/java/rx/schedulers/AbstractSchedulerTests.java +++ b/rxjava-core/src/test/java/rx/schedulers/AbstractSchedulerTests.java @@ -205,16 +205,31 @@ public String call(String s) { assertTrue(strings.contains("names=>b-2")); } + /** + * The order of execution is nondeterministic. + * @throws InterruptedException + */ @SuppressWarnings("rawtypes") @Test public final void testSequenceOfActions() throws InterruptedException { final Scheduler scheduler = getScheduler(); - final CountDownLatch latch = new CountDownLatch(1); + final CountDownLatch latch = new CountDownLatch(2); final Action0 first = mock(Action0.class); final Action0 second = mock(Action0.class); - // make it wait until after the second is called + // make it wait until both the first and second are called + doAnswer(new Answer() { + + @Override + public Object answer(InvocationOnMock invocation) throws Throwable { + try { + return invocation.getMock(); + } finally { + latch.countDown(); + } + } + }).when(first).call(); doAnswer(new Answer() { @Override