From 8819cc933e26449751535bc48ba2f10852c9b96d Mon Sep 17 00:00:00 2001 From: David Karnok Date: Wed, 8 Feb 2017 11:06:33 +0100 Subject: [PATCH] 2.x: wrap undeliverable errors (#5080) * 2.x: wrap undeliverable errors * Add CompositeException to isBug, add test for isBug --- .../ProtocolViolationException.java | 35 +++++++++++++++ .../exceptions/UndeliverableException.java | 35 +++++++++++++++ .../disposables/DisposableHelper.java | 3 +- .../subscriptions/SubscriptionHelper.java | 5 ++- .../io/reactivex/plugins/RxJavaPlugins.java | 45 +++++++++++++++++++ src/test/java/io/reactivex/TestHelper.java | 42 ++++++++++++++++- .../flowable/FlowableCollectTest.java | 8 +++- .../reactivex/flowable/FlowableScanTests.java | 15 +++++-- .../flowable/FlowableSubscriberTest.java | 2 +- .../CancellableDisposableTest.java | 2 +- .../disposables/ObserverFullArbiterTest.java | 4 +- .../observers/LambdaObserverTest.java | 2 +- .../completable/CompletableAmbTest.java | 2 +- .../completable/CompletableConcatTest.java | 2 +- .../completable/CompletableDisposeOnTest.java | 2 +- .../completable/CompletableDoFinallyTest.java | 2 +- .../CompletableMergeIterableTest.java | 2 +- .../completable/CompletableMergeTest.java | 10 ++--- .../completable/CompletablePeekTest.java | 2 +- .../completable/CompletableTimeoutTest.java | 2 +- .../completable/CompletableUsingTest.java | 4 +- .../flowable/BlockingFlowableLatestTest.java | 2 +- .../flowable/BlockingFlowableNextTest.java | 2 +- .../operators/flowable/FlowableAllTest.java | 4 +- .../operators/flowable/FlowableAmbTest.java | 2 +- .../operators/flowable/FlowableAnyTest.java | 4 +- .../flowable/FlowableBlockingTest.java | 2 +- .../flowable/FlowableCombineLatestTest.java | 2 +- .../flowable/FlowableConcatMapEagerTest.java | 6 +-- .../flowable/FlowableConcatTest.java | 4 +- .../flowable/FlowableDebounceTest.java | 2 +- .../flowable/FlowableDematerializeTest.java | 4 +- .../flowable/FlowableDistinctTest.java | 2 +- .../FlowableDistinctUntilChangedTest.java | 2 +- .../flowable/FlowableDoFinallyTest.java | 4 +- .../flowable/FlowableDoOnEachTest.java | 14 +++--- .../flowable/FlowableDoOnLifecycleTest.java | 4 +- .../flowable/FlowableElementAtTest.java | 6 +-- .../flowable/FlowableFilterTest.java | 10 ++--- .../flowable/FlowableFlatMapMaybeTest.java | 4 +- .../flowable/FlowableFlatMapSingleTest.java | 4 +- .../flowable/FlowableGenerateTest.java | 4 +- .../flowable/FlowableGroupJoinTest.java | 4 +- .../operators/flowable/FlowableJoinTest.java | 4 +- .../operators/flowable/FlowableMapTest.java | 6 +-- .../flowable/FlowableObserveOnTest.java | 2 +- .../flowable/FlowablePublishTest.java | 4 +- .../flowable/FlowableReduceTest.java | 2 +- .../flowable/FlowableReplayTest.java | 2 +- .../flowable/FlowableSequenceEqualTest.java | 4 +- .../flowable/FlowableSingleTest.java | 2 +- .../flowable/FlowableSwitchTest.java | 4 +- .../FlowableTakeUntilPredicateTest.java | 2 +- .../flowable/FlowableThrottleFirstTest.java | 2 +- .../flowable/FlowableTimeoutTests.java | 4 +- .../FlowableTimeoutWithSelectorTest.java | 4 +- .../flowable/FlowableUnsubscribeOnTest.java | 2 +- .../operators/flowable/FlowableUsingTest.java | 2 +- .../flowable/FlowableWithLatestFromTest.java | 4 +- .../flowable/FlowableZipIterableTest.java | 2 +- .../operators/flowable/FlowableZipTest.java | 2 +- .../operators/maybe/MaybeAmbTest.java | 2 +- .../maybe/MaybeCallbackObserverTest.java | 4 +- .../operators/maybe/MaybeConcatArrayTest.java | 2 +- .../maybe/MaybeDelaySubscriptionTest.java | 2 +- .../maybe/MaybeDoAfterSuccessTest.java | 2 +- .../operators/maybe/MaybeDoFinallyTest.java | 4 +- .../operators/maybe/MaybeFromActionTest.java | 2 +- .../maybe/MaybeFromCallableTest.java | 2 +- .../maybe/MaybeFromRunnableTest.java | 4 +- .../operators/maybe/MaybeMergeArrayTest.java | 2 +- .../operators/maybe/MaybePeekTest.java | 4 +- .../maybe/MaybeTakeUntilPublisherTest.java | 2 +- .../operators/maybe/MaybeTakeUntilTest.java | 2 +- .../operators/maybe/MaybeUsingTest.java | 4 +- .../operators/maybe/MaybeZipArrayTest.java | 2 +- .../operators/maybe/MaybeZipIterableTest.java | 2 +- .../BlockingObservableLatestTest.java | 2 +- .../BlockingObservableNextTest.java | 2 +- .../observable/ObservableAllTest.java | 4 +- .../observable/ObservableAmbTest.java | 2 +- .../observable/ObservableAnyTest.java | 4 +- .../observable/ObservableCollectTest.java | 8 +++- .../ObservableCombineLatestTest.java | 2 +- .../ObservableConcatMapEagerTest.java | 2 +- .../observable/ObservableConcatMapTest.java | 6 +-- .../observable/ObservableDebounceTest.java | 2 +- .../ObservableDematerializeTest.java | 4 +- .../observable/ObservableDistinctTest.java | 2 +- .../ObservableDistinctUntilChangedTest.java | 2 +- .../observable/ObservableDoFinallyTest.java | 4 +- .../observable/ObservableDoOnEachTest.java | 12 ++--- .../observable/ObservableElementAtTest.java | 6 +-- .../ObservableFlatMapMaybeTest.java | 4 +- .../ObservableFlatMapSingleTest.java | 4 +- .../observable/ObservableForEachTest.java | 2 +- .../ObservableFromCompletableTest.java | 2 +- .../observable/ObservableGenerateTest.java | 4 +- .../observable/ObservableGroupJoinTest.java | 4 +- .../observable/ObservableJoinTest.java | 4 +- .../observable/ObservableObserveOnTest.java | 2 +- .../observable/ObservablePublishTest.java | 4 +- .../observable/ObservableReplayTest.java | 2 +- .../observable/ObservableSingleTest.java | 2 +- .../observable/ObservableSwitchTest.java | 4 +- .../ObservableTakeUntilPredicateTest.java | 2 +- .../ObservableThrottleFirstTest.java | 2 +- .../observable/ObservableTimeoutTests.java | 4 +- .../ObservableTimeoutWithSelectorTest.java | 4 +- .../ObservableUnsubscribeOnTest.java | 2 +- .../observable/ObservableUsingTest.java | 2 +- .../ObservableWithLatestFromTest.java | 2 +- .../observable/ObservableZipIterableTest.java | 2 +- .../operators/single/SingleAmbTest.java | 4 +- .../operators/single/SingleDelayTest.java | 4 +- .../single/SingleDoAfterSuccessTest.java | 2 +- .../operators/single/SingleDoFinallyTest.java | 2 +- .../operators/single/SingleDoOnTest.java | 4 +- .../operators/single/SingleEqualsTest.java | 2 +- .../single/SingleFromPublisherTest.java | 2 +- .../operators/single/SingleTakeUntilTest.java | 2 +- .../operators/single/SingleUsingTest.java | 6 +-- .../operators/single/SingleZipArrayTest.java | 2 +- .../single/SingleZipIterableTest.java | 2 +- .../schedulers/ScheduledRunnableTest.java | 2 +- .../subscribers/EmptyComponentTest.java | 2 +- .../subscribers/FutureSubscriberTest.java | 2 +- .../subscribers/LambdaSubscriberTest.java | 2 +- .../subscriptions/FullArbiterTest.java | 4 +- .../java/io/reactivex/maybe/MaybeTest.java | 4 +- .../reactivex/observers/SafeObserverTest.java | 4 +- .../observers/SerializedObserverTest.java | 2 +- .../parallel/ParallelCollectTest.java | 2 +- .../parallel/ParallelFilterTest.java | 4 +- .../reactivex/parallel/ParallelMapTest.java | 4 +- .../reactivex/parallel/ParallelPeekTest.java | 10 ++--- .../parallel/ParallelReduceFullTest.java | 4 +- .../parallel/ParallelReduceTest.java | 2 +- .../reactivex/parallel/ParallelRunOnTest.java | 2 +- .../parallel/ParallelSortedJoinTest.java | 2 +- .../reactivex/plugins/RxJavaPluginsTest.java | 32 ++++++++++--- .../processors/BehaviorProcessorTest.java | 2 +- .../processors/SerializedProcessorTest.java | 4 +- .../processors/UnicastProcessorTest.java | 2 +- .../schedulers/ExecutorSchedulerTest.java | 12 ++--- .../reactivex/schedulers/SchedulerTest.java | 2 +- .../reactivex/single/SingleSubscribeTest.java | 4 +- .../subjects/BehaviorSubjectTest.java | 2 +- .../subjects/CompletableSubjectTest.java | 2 +- .../reactivex/subjects/MaybeSubjectTest.java | 2 +- .../subjects/SerializedSubjectTest.java | 4 +- .../reactivex/subjects/SingleSubjectTest.java | 2 +- .../subjects/UnicastSubjectTest.java | 4 +- .../subscribers/SafeSubscriberTest.java | 8 ++-- 154 files changed, 447 insertions(+), 255 deletions(-) create mode 100644 src/main/java/io/reactivex/exceptions/ProtocolViolationException.java create mode 100644 src/main/java/io/reactivex/exceptions/UndeliverableException.java diff --git a/src/main/java/io/reactivex/exceptions/ProtocolViolationException.java b/src/main/java/io/reactivex/exceptions/ProtocolViolationException.java new file mode 100644 index 0000000000..e5dda3c7df --- /dev/null +++ b/src/main/java/io/reactivex/exceptions/ProtocolViolationException.java @@ -0,0 +1,35 @@ +/** + * Copyright (c) 2016-present, RxJava Contributors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in + * compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License is + * distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See + * the License for the specific language governing permissions and limitations under the License. + */ + +package io.reactivex.exceptions; + +import io.reactivex.annotations.Experimental; + +/** + * Explicitly named exception to indicate a Reactive-Streams + * protocol violation. + * @since 2.0.6 - experimental + */ +@Experimental +public final class ProtocolViolationException extends IllegalStateException { + + private static final long serialVersionUID = 1644750035281290266L; + + /** + * Creates an instance with the given message. + * @param message the message + */ + public ProtocolViolationException(String message) { + super(message); + } +} diff --git a/src/main/java/io/reactivex/exceptions/UndeliverableException.java b/src/main/java/io/reactivex/exceptions/UndeliverableException.java new file mode 100644 index 0000000000..23bcd76743 --- /dev/null +++ b/src/main/java/io/reactivex/exceptions/UndeliverableException.java @@ -0,0 +1,35 @@ +/** + * Copyright (c) 2016-present, RxJava Contributors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in + * compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License is + * distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See + * the License for the specific language governing permissions and limitations under the License. + */ + +package io.reactivex.exceptions; + +import io.reactivex.annotations.Experimental; + +/** + * Wrapper for Throwable errors that are sent to `RxJavaPlugins.onError`. + * @since 2.0.6 - experimental + */ +@Experimental +public final class UndeliverableException extends IllegalStateException { + + private static final long serialVersionUID = 1644750035281290266L; + + /** + * Construct an instance by wrapping the given, non-null + * cause Throwable. + * @param cause the cause, not null + */ + public UndeliverableException(Throwable cause) { + super(cause); + } +} diff --git a/src/main/java/io/reactivex/internal/disposables/DisposableHelper.java b/src/main/java/io/reactivex/internal/disposables/DisposableHelper.java index 76fbbb2878..46f13bd743 100644 --- a/src/main/java/io/reactivex/internal/disposables/DisposableHelper.java +++ b/src/main/java/io/reactivex/internal/disposables/DisposableHelper.java @@ -16,6 +16,7 @@ import java.util.concurrent.atomic.AtomicReference; import io.reactivex.disposables.Disposable; +import io.reactivex.exceptions.ProtocolViolationException; import io.reactivex.internal.functions.ObjectHelper; import io.reactivex.plugins.RxJavaPlugins; @@ -152,7 +153,7 @@ public static boolean validate(Disposable current, Disposable next) { * Reports that the disposable is already set to the RxJavaPlugins error handler. */ public static void reportDisposableSet() { - RxJavaPlugins.onError(new IllegalStateException("Disposable already set!")); + RxJavaPlugins.onError(new ProtocolViolationException("Disposable already set!")); } /** diff --git a/src/main/java/io/reactivex/internal/subscriptions/SubscriptionHelper.java b/src/main/java/io/reactivex/internal/subscriptions/SubscriptionHelper.java index 638981bd22..d8c8f97cea 100644 --- a/src/main/java/io/reactivex/internal/subscriptions/SubscriptionHelper.java +++ b/src/main/java/io/reactivex/internal/subscriptions/SubscriptionHelper.java @@ -17,6 +17,7 @@ import org.reactivestreams.Subscription; +import io.reactivex.exceptions.ProtocolViolationException; import io.reactivex.internal.functions.ObjectHelper; import io.reactivex.internal.util.BackpressureHelper; import io.reactivex.plugins.RxJavaPlugins; @@ -67,7 +68,7 @@ public static boolean validate(Subscription current, Subscription next) { * which is an indication of a onSubscribe management bug. */ public static void reportSubscriptionSet() { - RxJavaPlugins.onError(new IllegalStateException("Subscription already set!")); + RxJavaPlugins.onError(new ProtocolViolationException("Subscription already set!")); } /** @@ -89,7 +90,7 @@ public static boolean validate(long n) { * @param n the overproduction amount */ public static void reportMoreProduced(long n) { - RxJavaPlugins.onError(new IllegalStateException("More produced than requested: " + n)); + RxJavaPlugins.onError(new ProtocolViolationException("More produced than requested: " + n)); } /** * Check if the given subscription is the common cancelled subscription. diff --git a/src/main/java/io/reactivex/plugins/RxJavaPlugins.java b/src/main/java/io/reactivex/plugins/RxJavaPlugins.java index f0db6f59c3..e94e1b2ff4 100644 --- a/src/main/java/io/reactivex/plugins/RxJavaPlugins.java +++ b/src/main/java/io/reactivex/plugins/RxJavaPlugins.java @@ -25,6 +25,7 @@ import io.reactivex.annotations.Experimental; import io.reactivex.annotations.NonNull; import io.reactivex.annotations.Nullable; +import io.reactivex.exceptions.*; import io.reactivex.flowables.ConnectableFlowable; import io.reactivex.functions.BiFunction; import io.reactivex.functions.BooleanSupplier; @@ -360,6 +361,10 @@ public static void onError(@NonNull Throwable error) { if (error == null) { error = new NullPointerException("onError called with null. Null values are generally not allowed in 2.x operators and sources."); + } else { + if (!isBug(error)) { + error = new UndeliverableException(error); + } } if (f != null) { @@ -377,6 +382,46 @@ public static void onError(@NonNull Throwable error) { uncaught(error); } + /** + * Checks if the given error is one of the already named + * bug cases that should pass through {@link #onError(Throwable)} + * as is. + * @param error the error to check + * @return true if the error should pass throug, false if + * it may be wrapped into an UndeliverableException + */ + static boolean isBug(Throwable error) { + // user forgot to add the onError handler in subscribe + if (error instanceof OnErrorNotImplementedException) { + return true; + } + // the sender didn't honor the request amount + // it's either due to an operator bug or concurrent onNext + if (error instanceof MissingBackpressureException) { + return true; + } + // general protocol violations + // it's either due to an operator bug or concurrent onNext + if (error instanceof IllegalStateException) { + return true; + } + // nulls are generally not allowed + // likely an operator bug or missing null-check + if (error instanceof NullPointerException) { + return true; + } + // bad arguments, likely invalid user input + if (error instanceof IllegalArgumentException) { + return true; + } + // Crash while handling an exception + if (error instanceof CompositeException) { + return true; + } + // everything else is probably due to lifecycle limits + return false; + } + static void uncaught(@NonNull Throwable error) { Thread currentThread = Thread.currentThread(); UncaughtExceptionHandler handler = currentThread.getUncaughtExceptionHandler(); diff --git a/src/test/java/io/reactivex/TestHelper.java b/src/test/java/io/reactivex/TestHelper.java index 4d858c80bd..ff78cf47b3 100644 --- a/src/test/java/io/reactivex/TestHelper.java +++ b/src/test/java/io/reactivex/TestHelper.java @@ -154,6 +154,21 @@ public static void assertError(List list, int index, Class list, int index, Class clazz) { + Throwable ex = list.get(index); + if (!(ex instanceof UndeliverableException)) { + AssertionError err = new AssertionError("Outer exception UndeliverableException expected but got " + list.get(index)); + err.initCause(list.get(index)); + throw err; + } + ex = ex.getCause(); + if (!clazz.isInstance(ex)) { + AssertionError err = new AssertionError("Inner exception " + clazz + " expected but got " + list.get(index)); + err.initCause(list.get(index)); + throw err; + } + } + public static void assertError(List list, int index, Class clazz, String message) { Throwable ex = list.get(index); if (!clazz.isInstance(ex)) { @@ -168,6 +183,26 @@ public static void assertError(List list, int index, Class list, int index, Class clazz, String message) { + Throwable ex = list.get(index); + if (!(ex instanceof UndeliverableException)) { + AssertionError err = new AssertionError("Outer exception UndeliverableException expected but got " + list.get(index)); + err.initCause(list.get(index)); + throw err; + } + ex = ex.getCause(); + if (!clazz.isInstance(ex)) { + AssertionError err = new AssertionError("Inner exception " + clazz + " expected but got " + list.get(index)); + err.initCause(list.get(index)); + throw err; + } + if (!ObjectHelper.equals(message, ex.getMessage())) { + AssertionError err = new AssertionError("Message " + message + " expected but got " + ex.getMessage()); + err.initCause(ex); + throw err; + } + } + public static void assertError(TestObserver ts, int index, Class clazz) { Throwable ex = ts.errors().get(0); try { @@ -386,6 +421,9 @@ public void run() { * @return the list of Throwables */ public static List compositeList(Throwable ex) { + if (ex instanceof UndeliverableException) { + ex = ex.getCause(); + } return ((CompositeException)ex).getExceptions(); } @@ -2428,7 +2466,7 @@ protected void subscribeActual(Observer observer) { } } - assertError(errors, 0, TestException.class, "second"); + assertUndeliverable(errors, 0, TestException.class, "second"); } catch (AssertionError ex) { throw ex; } catch (Throwable ex) { @@ -2587,7 +2625,7 @@ protected void subscribeActual(Subscriber observer) { } } - assertError(errors, 0, TestException.class, "second"); + assertUndeliverable(errors, 0, TestException.class, "second"); } catch (AssertionError ex) { throw ex; } catch (Throwable ex) { diff --git a/src/test/java/io/reactivex/flowable/FlowableCollectTest.java b/src/test/java/io/reactivex/flowable/FlowableCollectTest.java index 8aac13cabf..ee88dfac53 100644 --- a/src/test/java/io/reactivex/flowable/FlowableCollectTest.java +++ b/src/test/java/io/reactivex/flowable/FlowableCollectTest.java @@ -120,7 +120,9 @@ public void testCollectorFailureDoesNotResultInTwoErrorEmissionsFlowable() { .test() // .assertError(e1) // .assertNotComplete(); - assertEquals(Arrays.asList(e2), list); + + assertEquals(1, list.size()); + assertEquals(e2, list.get(0).getCause()); } finally { RxJavaPlugins.reset(); } @@ -272,7 +274,9 @@ public void testCollectorFailureDoesNotResultInTwoErrorEmissions() { .test() // .assertError(e1) // .assertNotComplete(); - assertEquals(Arrays.asList(e2), list); + + assertEquals(1, list.size()); + assertEquals(e2, list.get(0).getCause()); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/flowable/FlowableScanTests.java b/src/test/java/io/reactivex/flowable/FlowableScanTests.java index 150923fe13..47285cc403 100644 --- a/src/test/java/io/reactivex/flowable/FlowableScanTests.java +++ b/src/test/java/io/reactivex/flowable/FlowableScanTests.java @@ -13,7 +13,7 @@ package io.reactivex.flowable; -import static org.junit.Assert.assertEquals; +import static org.junit.Assert.*; import java.util.*; import java.util.concurrent.*; @@ -21,7 +21,8 @@ import org.junit.Test; -import io.reactivex.Flowable; +import io.reactivex.*; +import io.reactivex.exceptions.UndeliverableException; import io.reactivex.flowable.FlowableEventStream.Event; import io.reactivex.functions.*; import io.reactivex.plugins.RxJavaPlugins; @@ -65,7 +66,10 @@ public void accept(Throwable t) throws Exception { .test() .assertNoValues() .assertError(e); - assertEquals(Arrays.asList(e2), list); + + assertEquals("" + list, 1, list.size()); + assertTrue("" + list, list.get(0) instanceof UndeliverableException); + assertEquals(e2, list.get(0).getCause()); } finally { RxJavaPlugins.reset(); } @@ -142,7 +146,10 @@ public void accept(Throwable t) throws Exception { .test() .assertValue(1) .assertError(e); - assertEquals(Arrays.asList(e2), list); + + assertEquals("" + list, 1, list.size()); + assertTrue("" + list, list.get(0) instanceof UndeliverableException); + assertEquals(e2, list.get(0).getCause()); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/flowable/FlowableSubscriberTest.java b/src/test/java/io/reactivex/flowable/FlowableSubscriberTest.java index 80b6bad75d..8bf2effaea 100644 --- a/src/test/java/io/reactivex/flowable/FlowableSubscriberTest.java +++ b/src/test/java/io/reactivex/flowable/FlowableSubscriberTest.java @@ -722,7 +722,7 @@ public void run() throws Exception { s.onComplete(); - TestHelper.assertError(list, 0, TestException.class, "Inner"); + TestHelper.assertUndeliverable(list, 0, TestException.class, "Inner"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/disposables/CancellableDisposableTest.java b/src/test/java/io/reactivex/internal/disposables/CancellableDisposableTest.java index afab369e3e..aedb7a716b 100644 --- a/src/test/java/io/reactivex/internal/disposables/CancellableDisposableTest.java +++ b/src/test/java/io/reactivex/internal/disposables/CancellableDisposableTest.java @@ -72,7 +72,7 @@ public void cancel() throws Exception { cd.dispose(); cd.dispose(); - TestHelper.assertError(list, 0, TestException.class); + TestHelper.assertUndeliverable(list, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/disposables/ObserverFullArbiterTest.java b/src/test/java/io/reactivex/internal/disposables/ObserverFullArbiterTest.java index 2c220d7e9a..48d3507d7c 100644 --- a/src/test/java/io/reactivex/internal/disposables/ObserverFullArbiterTest.java +++ b/src/test/java/io/reactivex/internal/disposables/ObserverFullArbiterTest.java @@ -73,7 +73,7 @@ public void errorAfterCancel() { try { fa.onError(new TestException(), bs); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -90,7 +90,7 @@ public void cancelAfterError() { fa.dispose(); fa.drain(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/observers/LambdaObserverTest.java b/src/test/java/io/reactivex/internal/observers/LambdaObserverTest.java index 0fa89ced8c..4683379f57 100644 --- a/src/test/java/io/reactivex/internal/observers/LambdaObserverTest.java +++ b/src/test/java/io/reactivex/internal/observers/LambdaObserverTest.java @@ -185,7 +185,7 @@ public void accept(Disposable s) throws Exception { assertTrue(o.isDisposed()); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/completable/CompletableAmbTest.java b/src/test/java/io/reactivex/internal/operators/completable/CompletableAmbTest.java index b7ea9efc64..194ca4f119 100644 --- a/src/test/java/io/reactivex/internal/operators/completable/CompletableAmbTest.java +++ b/src/test/java/io/reactivex/internal/operators/completable/CompletableAmbTest.java @@ -100,7 +100,7 @@ public void run() { to.assertFailure(TestException.class); if (!errors.isEmpty()) { - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } } finally { RxJavaPlugins.reset(); diff --git a/src/test/java/io/reactivex/internal/operators/completable/CompletableConcatTest.java b/src/test/java/io/reactivex/internal/operators/completable/CompletableConcatTest.java index 8806d3f66f..efc76109a5 100644 --- a/src/test/java/io/reactivex/internal/operators/completable/CompletableConcatTest.java +++ b/src/test/java/io/reactivex/internal/operators/completable/CompletableConcatTest.java @@ -104,7 +104,7 @@ public void run() { to.assertFailure(TestException.class); if (!errors.isEmpty()) { - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } } finally { RxJavaPlugins.reset(); diff --git a/src/test/java/io/reactivex/internal/operators/completable/CompletableDisposeOnTest.java b/src/test/java/io/reactivex/internal/operators/completable/CompletableDisposeOnTest.java index 9378e72a4d..a2f359edee 100644 --- a/src/test/java/io/reactivex/internal/operators/completable/CompletableDisposeOnTest.java +++ b/src/test/java/io/reactivex/internal/operators/completable/CompletableDisposeOnTest.java @@ -88,7 +88,7 @@ public void errorAfterCancel() { to.assertEmpty(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/completable/CompletableDoFinallyTest.java b/src/test/java/io/reactivex/internal/operators/completable/CompletableDoFinallyTest.java index 8bf557b57c..ad32e03612 100644 --- a/src/test/java/io/reactivex/internal/operators/completable/CompletableDoFinallyTest.java +++ b/src/test/java/io/reactivex/internal/operators/completable/CompletableDoFinallyTest.java @@ -84,7 +84,7 @@ public void run() throws Exception { .assertResult() .cancel(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/completable/CompletableMergeIterableTest.java b/src/test/java/io/reactivex/internal/operators/completable/CompletableMergeIterableTest.java index 5949a92fa7..934364adf5 100644 --- a/src/test/java/io/reactivex/internal/operators/completable/CompletableMergeIterableTest.java +++ b/src/test/java/io/reactivex/internal/operators/completable/CompletableMergeIterableTest.java @@ -57,7 +57,7 @@ public void run() { to.assertFailure(TestException.class); if (!errors.isEmpty()) { - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } } finally { RxJavaPlugins.reset(); diff --git a/src/test/java/io/reactivex/internal/operators/completable/CompletableMergeTest.java b/src/test/java/io/reactivex/internal/operators/completable/CompletableMergeTest.java index dbee8451ae..ba3bdf546f 100644 --- a/src/test/java/io/reactivex/internal/operators/completable/CompletableMergeTest.java +++ b/src/test/java/io/reactivex/internal/operators/completable/CompletableMergeTest.java @@ -94,7 +94,7 @@ protected void subscribeActual(CompletableObserver s) { co[0].onError(new TestException()); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -236,7 +236,7 @@ public void run() { to.assertFailure(TestException.class); if (!errors.isEmpty()) { - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } } } finally { @@ -396,7 +396,7 @@ protected void subscribeActual(Subscriber s) { .test() .assertFailureAndMessage(TestException.class, "First"); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } @@ -420,7 +420,7 @@ protected void subscribeActual(CompletableObserver s) { o[0].onError(new TestException("Second")); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } @@ -477,7 +477,7 @@ public void run() { to.assertFailure(TestException.class); if (!errors.isEmpty()) { - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } } finally { RxJavaPlugins.reset(); diff --git a/src/test/java/io/reactivex/internal/operators/completable/CompletablePeekTest.java b/src/test/java/io/reactivex/internal/operators/completable/CompletablePeekTest.java index f69928afb3..0094a932a5 100644 --- a/src/test/java/io/reactivex/internal/operators/completable/CompletablePeekTest.java +++ b/src/test/java/io/reactivex/internal/operators/completable/CompletablePeekTest.java @@ -38,7 +38,7 @@ public void run() throws Exception { .test() .assertResult(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/completable/CompletableTimeoutTest.java b/src/test/java/io/reactivex/internal/operators/completable/CompletableTimeoutTest.java index 92024f400e..35ec511859 100644 --- a/src/test/java/io/reactivex/internal/operators/completable/CompletableTimeoutTest.java +++ b/src/test/java/io/reactivex/internal/operators/completable/CompletableTimeoutTest.java @@ -138,7 +138,7 @@ public void run() { to.assertTerminated(); if (!errors.isEmpty()) { - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } } finally { diff --git a/src/test/java/io/reactivex/internal/operators/completable/CompletableUsingTest.java b/src/test/java/io/reactivex/internal/operators/completable/CompletableUsingTest.java index e8d7ff3440..f5e790731b 100644 --- a/src/test/java/io/reactivex/internal/operators/completable/CompletableUsingTest.java +++ b/src/test/java/io/reactivex/internal/operators/completable/CompletableUsingTest.java @@ -242,7 +242,7 @@ public void accept(Object d) throws Exception { .test() .assertFailureAndMessage(TestException.class, "Main"); - TestHelper.assertError(errors, 0, TestException.class, "Disposer"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Disposer"); } finally { RxJavaPlugins.reset(); } @@ -299,7 +299,7 @@ public void accept(Object d) throws Exception { to.cancel(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/BlockingFlowableLatestTest.java b/src/test/java/io/reactivex/internal/operators/flowable/BlockingFlowableLatestTest.java index 1573c33afd..92dcd3dd02 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/BlockingFlowableLatestTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/BlockingFlowableLatestTest.java @@ -226,7 +226,7 @@ public void onError() { try { ((Subscriber)it).onError(new TestException()); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/BlockingFlowableNextTest.java b/src/test/java/io/reactivex/internal/operators/flowable/BlockingFlowableNextTest.java index 99e5a2865d..bede727460 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/BlockingFlowableNextTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/BlockingFlowableNextTest.java @@ -348,7 +348,7 @@ public void nextObserverError() { try { no.onError(new TestException()); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableAllTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableAllTest.java index b2a559735f..8f184a92ec 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableAllTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableAllTest.java @@ -410,7 +410,7 @@ public boolean test(Integer v) throws Exception { .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -441,7 +441,7 @@ public boolean test(Integer v) throws Exception { .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableAmbTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableAmbTest.java index b4dfc11446..f3b7ec2d3e 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableAmbTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableAmbTest.java @@ -655,7 +655,7 @@ public void run() { to.assertFailure(TestException.class); if (!errors.isEmpty()) { - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } } } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableAnyTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableAnyTest.java index 13b7432cf7..7484568ac2 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableAnyTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableAnyTest.java @@ -604,7 +604,7 @@ public boolean test(Integer v) throws Exception { .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } @@ -629,7 +629,7 @@ protected void subscribeActual(Subscriber observer) { .test() .assertFailureAndMessage(TestException.class, "First"); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableBlockingTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableBlockingTest.java index 68f31849e1..f5de20dcb4 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableBlockingTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableBlockingTest.java @@ -249,7 +249,7 @@ public void subscribe(Subscriber s) { assertEquals(1, source.blockingFirst().intValue()); - TestHelper.assertError(list, 0, TestException.class); + TestHelper.assertUndeliverable(list, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableCombineLatestTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableCombineLatestTest.java index 52ad6ddf57..1fd39ccbab 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableCombineLatestTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableCombineLatestTest.java @@ -1310,7 +1310,7 @@ public void run() { } for (Throwable e : errors) { - assertTrue(e.toString(), e instanceof TestException); + assertTrue(e.toString(), e.getCause() instanceof TestException); } } finally { RxJavaPlugins.reset(); diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableConcatMapEagerTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableConcatMapEagerTest.java index 188ef0ffdc..8b99199c56 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableConcatMapEagerTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableConcatMapEagerTest.java @@ -900,7 +900,7 @@ public void run() { } else { to.assertError(TestException.class); if (!errors.isEmpty()) { - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } } } finally { @@ -1084,7 +1084,7 @@ protected void subscribeActual(Subscriber s) { sub[0].onError(new TestException("Second")); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } @@ -1112,7 +1112,7 @@ protected void subscribeActual(Subscriber s) { .test(0L) .assertFailure(MissingBackpressureException.class); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableConcatTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableConcatTest.java index dc0ddf2009..a0fc52d12d 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableConcatTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableConcatTest.java @@ -1413,7 +1413,7 @@ protected void subscribeActual(Subscriber s) { try { ts0[0].onError(new TestException("Second")); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -1439,7 +1439,7 @@ protected void subscribeActual(Subscriber s) { try { ts0[0].onError(new TestException("Second")); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableDebounceTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableDebounceTest.java index 3aa01a23d0..db108689ce 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableDebounceTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableDebounceTest.java @@ -350,7 +350,7 @@ protected void subscribeActual(Subscriber observer) { .test() .assertResult(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableDematerializeTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableDematerializeTest.java index 703e44491f..a3ae8aaf49 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableDematerializeTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableDematerializeTest.java @@ -170,8 +170,8 @@ protected void subscribeActual(Subscriber observer) { .test() .assertResult(); - TestHelper.assertError(errors, 0, TestException.class, "First"); - TestHelper.assertError(errors, 1, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "First"); + TestHelper.assertUndeliverable(errors, 1, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableDistinctTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableDistinctTest.java index 95f8d642cc..422a0f6397 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableDistinctTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableDistinctTest.java @@ -246,7 +246,7 @@ protected void subscribeActual(Subscriber observer) { .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableDistinctUntilChangedTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableDistinctUntilChangedTest.java index dba4156786..f63ded514c 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableDistinctUntilChangedTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableDistinctUntilChangedTest.java @@ -337,7 +337,7 @@ public boolean test(Integer a, Integer b) throws Exception { .test() .assertFailure(TestException.class, 1); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableDoFinallyTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableDoFinallyTest.java index 1459ab6a2d..b564ff81f5 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableDoFinallyTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableDoFinallyTest.java @@ -318,7 +318,7 @@ public void run() throws Exception { .assertResult(1) .cancel(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -340,7 +340,7 @@ public void run() throws Exception { .assertResult(1) .cancel(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableDoOnEachTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableDoOnEachTest.java index d3eec8c06d..fbd8f6a6c6 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableDoOnEachTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableDoOnEachTest.java @@ -248,7 +248,7 @@ public void accept(Object e) throws Exception { .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } @@ -275,7 +275,7 @@ public void run() throws Exception { .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } @@ -302,7 +302,7 @@ public void run() throws Exception { .test() .assertResult(); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } @@ -352,7 +352,7 @@ public void accept(Object e) throws Exception { .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } @@ -384,7 +384,7 @@ public void accept(Object e) throws Exception { .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } @@ -412,7 +412,7 @@ public void run() throws Exception { .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } @@ -456,7 +456,7 @@ public void run() throws Exception { .test() .assertResult(); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableDoOnLifecycleTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableDoOnLifecycleTest.java index 12bde59000..e4ce9d729f 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableDoOnLifecycleTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableDoOnLifecycleTest.java @@ -104,7 +104,7 @@ public void accept(long v) throws Exception { .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -127,7 +127,7 @@ public void run() throws Exception { .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableElementAtTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableElementAtTest.java index 09d74049a0..1b795665ad 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableElementAtTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableElementAtTest.java @@ -263,7 +263,7 @@ protected void subscribeActual(Subscriber subscriber) { .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -326,7 +326,7 @@ protected void subscribeActual(Observer observer) { .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -351,7 +351,7 @@ protected void subscribeActual(Subscriber observer) { .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableFilterTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableFilterTest.java index c7989c218a..5407d7a294 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableFilterTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableFilterTest.java @@ -371,7 +371,7 @@ public boolean test(Integer v) throws Exception { .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } @@ -407,7 +407,7 @@ public boolean test(Integer v) throws Exception { .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } @@ -477,7 +477,7 @@ public boolean test(Integer v) throws Exception { .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } @@ -508,7 +508,7 @@ public boolean test(Integer v) throws Exception { .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } @@ -540,7 +540,7 @@ public boolean test(Integer v) throws Exception { .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableFlatMapMaybeTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableFlatMapMaybeTest.java index 2beb03babd..7d7231d085 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableFlatMapMaybeTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableFlatMapMaybeTest.java @@ -391,7 +391,7 @@ protected void subscribeActual(Subscriber observer) { .test() .assertFailureAndMessage(TestException.class, "First"); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } @@ -413,7 +413,7 @@ protected void subscribeActual(MaybeObserver observer) { .test() .assertFailureAndMessage(TestException.class, "First"); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableFlatMapSingleTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableFlatMapSingleTest.java index 60ee393204..1ef5c2e3a0 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableFlatMapSingleTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableFlatMapSingleTest.java @@ -341,7 +341,7 @@ protected void subscribeActual(Subscriber observer) { .test() .assertFailureAndMessage(TestException.class, "First"); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } @@ -363,7 +363,7 @@ protected void subscribeActual(SingleObserver observer) { .test() .assertFailureAndMessage(TestException.class, "First"); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableGenerateTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableGenerateTest.java index a5141726a9..a90d91455a 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableGenerateTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableGenerateTest.java @@ -109,7 +109,7 @@ public void accept(Object d) throws Exception { .test() .assertResult(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -264,7 +264,7 @@ public void accept(Emitter e) throws Exception { .test(1) .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableGroupJoinTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableGroupJoinTest.java index 1cb123f03d..5d6ad27dfe 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableGroupJoinTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableGroupJoinTest.java @@ -568,7 +568,7 @@ public void run() { } if (!errors.isEmpty()) { - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } } finally { RxJavaPlugins.reset(); @@ -641,7 +641,7 @@ public void run() { } if (!errors.isEmpty()) { - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } } finally { RxJavaPlugins.reset(); diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableJoinTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableJoinTest.java index 441df66a64..a1512f577b 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableJoinTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableJoinTest.java @@ -404,7 +404,7 @@ public Integer apply(Integer a, Integer b) throws Exception { .test() .assertFailureAndMessage(TestException.class, "First"); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } @@ -441,7 +441,7 @@ public Integer apply(Integer a, Integer b) throws Exception { to .assertFailureAndMessage(TestException.class, "First"); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableMapTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableMapTest.java index d534fc4e18..96ec505433 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableMapTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableMapTest.java @@ -541,7 +541,7 @@ public Object apply(Integer v) throws Exception { .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } @@ -601,7 +601,7 @@ public boolean test(Integer v) throws Exception { .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } @@ -668,7 +668,7 @@ public boolean test(Integer v) throws Exception { .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableObserveOnTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableObserveOnTest.java index 5b61f110af..3052240fd7 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableObserveOnTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableObserveOnTest.java @@ -1179,7 +1179,7 @@ protected void subscribeActual(Subscriber observer) { to.assertResult(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowablePublishTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowablePublishTest.java index a713a3a920..79305861ad 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowablePublishTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowablePublishTest.java @@ -664,7 +664,7 @@ protected void subscribeActual(Subscriber observer) { .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -678,7 +678,7 @@ public void noErrorLoss() { co.connect(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableReduceTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableReduceTest.java index a814e0fe0d..e50d8faa57 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableReduceTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableReduceTest.java @@ -261,7 +261,7 @@ public Integer apply(Integer a, Integer b) throws Exception { .test() .assertFailureAndMessage(TestException.class, "Reducer"); - TestHelper.assertError(errors, 0, TestException.class, "Source"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Source"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableReplayTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableReplayTest.java index 68da937bee..e6752e4c99 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableReplayTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableReplayTest.java @@ -1443,7 +1443,7 @@ protected void subscribeActual(Subscriber observer) { .test() .assertFailureAndMessage(TestException.class, "First"); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableSequenceEqualTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableSequenceEqualTest.java index 3367ab9a10..7036ff3d9e 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableSequenceEqualTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableSequenceEqualTest.java @@ -477,7 +477,7 @@ protected void subscribeActual(Subscriber s) { .test() .assertFailureAndMessage(TestException.class, "First"); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } @@ -578,7 +578,7 @@ protected void subscribeActual(Subscriber s) { .test() .assertFailureAndMessage(TestException.class, "First"); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableSingleTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableSingleTest.java index b0b0ab0c28..67c5c83881 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableSingleTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableSingleTest.java @@ -721,7 +721,7 @@ public void singleElementOperatorDoNotSwallowExceptionWhenDone() { } }).singleElement().test().assertComplete(); - assertSame(exception, error.get()); + assertSame(exception, error.get().getCause()); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableSwitchTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableSwitchTest.java index 5a0deb5933..2bad160a63 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableSwitchTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableSwitchTest.java @@ -976,7 +976,7 @@ protected void subscribeActual(Subscriber observer) { .test() .assertResult(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -1016,7 +1016,7 @@ protected void subscribeActual(Subscriber observer) { .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableTakeUntilPredicateTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableTakeUntilPredicateTest.java index 224297f6e7..4060487c64 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableTakeUntilPredicateTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableTakeUntilPredicateTest.java @@ -202,7 +202,7 @@ protected void subscribeActual(Subscriber observer) { .test() .assertResult(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableThrottleFirstTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableThrottleFirstTest.java index a27bc78197..278b98a53a 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableThrottleFirstTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableThrottleFirstTest.java @@ -187,7 +187,7 @@ protected void subscribeActual(Subscriber observer) { .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableTimeoutTests.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableTimeoutTests.java index 73e4902bc6..0aa0318543 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableTimeoutTests.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableTimeoutTests.java @@ -451,7 +451,7 @@ protected void subscribeActual(Subscriber observer) { .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -477,7 +477,7 @@ protected void subscribeActual(Subscriber observer) { .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableTimeoutWithSelectorTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableTimeoutWithSelectorTest.java index b5ba4fdfec..77a5112305 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableTimeoutWithSelectorTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableTimeoutWithSelectorTest.java @@ -447,7 +447,7 @@ protected void subscribeActual(Subscriber observer) { to.assertFailureAndMessage(TestException.class, "First", 1); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } @@ -476,7 +476,7 @@ protected void subscribeActual(Subscriber observer) { to.assertFailureAndMessage(TestException.class, "First", 1); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableUnsubscribeOnTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableUnsubscribeOnTest.java index b6aadd7c8f..cc9218a1d8 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableUnsubscribeOnTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableUnsubscribeOnTest.java @@ -263,7 +263,7 @@ protected void subscribeActual(Subscriber observer) { .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableUsingTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableUsingTest.java index 7b860b891c..94b9efd998 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableUsingTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableUsingTest.java @@ -622,7 +622,7 @@ public void accept(Object e) throws Exception { .test() .assertResult(); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableWithLatestFromTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableWithLatestFromTest.java index 904cc2db2a..67c578b462 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableWithLatestFromTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableWithLatestFromTest.java @@ -649,7 +649,7 @@ public Object apply(Integer a, Integer b, Integer c) throws Exception { .test() .assertFailureAndMessage(TestException.class, "First"); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } @@ -676,7 +676,7 @@ public Integer apply(Integer a, Integer b) throws Exception { .test() .assertFailureAndMessage(TestException.class, "First"); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableZipIterableTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableZipIterableTest.java index 5fcfd4c239..c273d8be14 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableZipIterableTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableZipIterableTest.java @@ -424,7 +424,7 @@ public Object apply(Integer a, Integer b) throws Exception { .test() .assertResult(2); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/flowable/FlowableZipTest.java b/src/test/java/io/reactivex/internal/operators/flowable/FlowableZipTest.java index b80d7dbd5e..f78c209036 100644 --- a/src/test/java/io/reactivex/internal/operators/flowable/FlowableZipTest.java +++ b/src/test/java/io/reactivex/internal/operators/flowable/FlowableZipTest.java @@ -1654,7 +1654,7 @@ public Object apply(Object a, Object b) throws Exception { sub[0].onError(new TestException("Second")); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/maybe/MaybeAmbTest.java b/src/test/java/io/reactivex/internal/operators/maybe/MaybeAmbTest.java index 925b6dc0ac..de8120f227 100644 --- a/src/test/java/io/reactivex/internal/operators/maybe/MaybeAmbTest.java +++ b/src/test/java/io/reactivex/internal/operators/maybe/MaybeAmbTest.java @@ -101,7 +101,7 @@ public void run() { to.assertFailure(TestException.class); if (!errors.isEmpty()) { - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } } finally { RxJavaPlugins.reset(); diff --git a/src/test/java/io/reactivex/internal/operators/maybe/MaybeCallbackObserverTest.java b/src/test/java/io/reactivex/internal/operators/maybe/MaybeCallbackObserverTest.java index 4106a86bd8..5a85c2f69d 100644 --- a/src/test/java/io/reactivex/internal/operators/maybe/MaybeCallbackObserverTest.java +++ b/src/test/java/io/reactivex/internal/operators/maybe/MaybeCallbackObserverTest.java @@ -63,7 +63,7 @@ public void accept(Object v) throws Exception { mo.onSuccess(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -116,7 +116,7 @@ public void run() throws Exception { mo.onComplete(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/maybe/MaybeConcatArrayTest.java b/src/test/java/io/reactivex/internal/operators/maybe/MaybeConcatArrayTest.java index 248c4efd80..479c29140e 100644 --- a/src/test/java/io/reactivex/internal/operators/maybe/MaybeConcatArrayTest.java +++ b/src/test/java/io/reactivex/internal/operators/maybe/MaybeConcatArrayTest.java @@ -151,7 +151,7 @@ protected void subscribeActual(MaybeObserver observer) { o[0].onError(new TestException()); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/maybe/MaybeDelaySubscriptionTest.java b/src/test/java/io/reactivex/internal/operators/maybe/MaybeDelaySubscriptionTest.java index 0cadd6bfb6..a684ff68ff 100644 --- a/src/test/java/io/reactivex/internal/operators/maybe/MaybeDelaySubscriptionTest.java +++ b/src/test/java/io/reactivex/internal/operators/maybe/MaybeDelaySubscriptionTest.java @@ -135,7 +135,7 @@ protected void subscribeActual(Subscriber observer) { .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/maybe/MaybeDoAfterSuccessTest.java b/src/test/java/io/reactivex/internal/operators/maybe/MaybeDoAfterSuccessTest.java index 1ac5ce5b88..cee3a213f2 100644 --- a/src/test/java/io/reactivex/internal/operators/maybe/MaybeDoAfterSuccessTest.java +++ b/src/test/java/io/reactivex/internal/operators/maybe/MaybeDoAfterSuccessTest.java @@ -128,7 +128,7 @@ public void accept(Integer e) throws Exception { .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/maybe/MaybeDoFinallyTest.java b/src/test/java/io/reactivex/internal/operators/maybe/MaybeDoFinallyTest.java index 1a65337b6d..bdfeee055b 100644 --- a/src/test/java/io/reactivex/internal/operators/maybe/MaybeDoFinallyTest.java +++ b/src/test/java/io/reactivex/internal/operators/maybe/MaybeDoFinallyTest.java @@ -134,7 +134,7 @@ public void run() throws Exception { .assertResult(1) .cancel(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -156,7 +156,7 @@ public void run() throws Exception { .assertResult(1) .cancel(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/maybe/MaybeFromActionTest.java b/src/test/java/io/reactivex/internal/operators/maybe/MaybeFromActionTest.java index 00858cae3c..a8e3d18c22 100644 --- a/src/test/java/io/reactivex/internal/operators/maybe/MaybeFromActionTest.java +++ b/src/test/java/io/reactivex/internal/operators/maybe/MaybeFromActionTest.java @@ -151,7 +151,7 @@ public void run() throws Exception { Thread.sleep(100); } - TestHelper.assertError(errors, 0, InterruptedException.class); + TestHelper.assertUndeliverable(errors, 0, InterruptedException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/maybe/MaybeFromCallableTest.java b/src/test/java/io/reactivex/internal/operators/maybe/MaybeFromCallableTest.java index ecfe4d8ce7..71e2061693 100644 --- a/src/test/java/io/reactivex/internal/operators/maybe/MaybeFromCallableTest.java +++ b/src/test/java/io/reactivex/internal/operators/maybe/MaybeFromCallableTest.java @@ -155,7 +155,7 @@ public Integer call() throws Exception { Thread.sleep(100); } - TestHelper.assertError(errors, 0, InterruptedException.class); + TestHelper.assertUndeliverable(errors, 0, InterruptedException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/maybe/MaybeFromRunnableTest.java b/src/test/java/io/reactivex/internal/operators/maybe/MaybeFromRunnableTest.java index 4c8c608496..339ab5018e 100644 --- a/src/test/java/io/reactivex/internal/operators/maybe/MaybeFromRunnableTest.java +++ b/src/test/java/io/reactivex/internal/operators/maybe/MaybeFromRunnableTest.java @@ -153,9 +153,9 @@ public void run() { Thread.sleep(100); } - TestHelper.assertError(errors, 0, RuntimeException.class); + TestHelper.assertUndeliverable(errors, 0, RuntimeException.class); - assertTrue(errors.get(0).toString(), errors.get(0).getCause() instanceof InterruptedException); + assertTrue(errors.get(0).toString(), errors.get(0).getCause().getCause() instanceof InterruptedException); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/maybe/MaybeMergeArrayTest.java b/src/test/java/io/reactivex/internal/operators/maybe/MaybeMergeArrayTest.java index 9c8d39454c..3711130e11 100644 --- a/src/test/java/io/reactivex/internal/operators/maybe/MaybeMergeArrayTest.java +++ b/src/test/java/io/reactivex/internal/operators/maybe/MaybeMergeArrayTest.java @@ -164,7 +164,7 @@ public void run() { ts.assertFailure(Throwable.class); if (!errors.isEmpty()) { - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } } finally { RxJavaPlugins.reset(); diff --git a/src/test/java/io/reactivex/internal/operators/maybe/MaybePeekTest.java b/src/test/java/io/reactivex/internal/operators/maybe/MaybePeekTest.java index d04718a691..ee3a793efa 100644 --- a/src/test/java/io/reactivex/internal/operators/maybe/MaybePeekTest.java +++ b/src/test/java/io/reactivex/internal/operators/maybe/MaybePeekTest.java @@ -68,7 +68,7 @@ public void accept(Throwable e) throws Exception { }) .test(); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); assertTrue("" + err, err[0] instanceof TestException); assertEquals("First", err[0].getMessage()); @@ -139,7 +139,7 @@ public void run() throws Exception { .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/maybe/MaybeTakeUntilPublisherTest.java b/src/test/java/io/reactivex/internal/operators/maybe/MaybeTakeUntilPublisherTest.java index 3461489425..c1c49886f3 100644 --- a/src/test/java/io/reactivex/internal/operators/maybe/MaybeTakeUntilPublisherTest.java +++ b/src/test/java/io/reactivex/internal/operators/maybe/MaybeTakeUntilPublisherTest.java @@ -148,7 +148,7 @@ public void run() { to.assertFailure(TestException.class); if (!errors.isEmpty()) { - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } } finally { diff --git a/src/test/java/io/reactivex/internal/operators/maybe/MaybeTakeUntilTest.java b/src/test/java/io/reactivex/internal/operators/maybe/MaybeTakeUntilTest.java index b143a6a1ca..3fd457172b 100644 --- a/src/test/java/io/reactivex/internal/operators/maybe/MaybeTakeUntilTest.java +++ b/src/test/java/io/reactivex/internal/operators/maybe/MaybeTakeUntilTest.java @@ -176,7 +176,7 @@ public void run() { to.assertFailure(TestException.class); if (!errors.isEmpty()) { - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } } finally { diff --git a/src/test/java/io/reactivex/internal/operators/maybe/MaybeUsingTest.java b/src/test/java/io/reactivex/internal/operators/maybe/MaybeUsingTest.java index 7fb3977c02..535495e35e 100644 --- a/src/test/java/io/reactivex/internal/operators/maybe/MaybeUsingTest.java +++ b/src/test/java/io/reactivex/internal/operators/maybe/MaybeUsingTest.java @@ -242,7 +242,7 @@ public void accept(Object d) throws Exception { .test() .assertFailureAndMessage(TestException.class, "Main"); - TestHelper.assertError(errors, 0, TestException.class, "Disposer"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Disposer"); } finally { RxJavaPlugins.reset(); } @@ -299,7 +299,7 @@ public void accept(Object d) throws Exception { to.cancel(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/maybe/MaybeZipArrayTest.java b/src/test/java/io/reactivex/internal/operators/maybe/MaybeZipArrayTest.java index 29c4c0cd67..504cc971a5 100644 --- a/src/test/java/io/reactivex/internal/operators/maybe/MaybeZipArrayTest.java +++ b/src/test/java/io/reactivex/internal/operators/maybe/MaybeZipArrayTest.java @@ -143,7 +143,7 @@ public void run() { to.assertFailure(TestException.class); if (!errors.isEmpty()) { - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } } finally { RxJavaPlugins.reset(); diff --git a/src/test/java/io/reactivex/internal/operators/maybe/MaybeZipIterableTest.java b/src/test/java/io/reactivex/internal/operators/maybe/MaybeZipIterableTest.java index ca5b15501c..8c3d8882cf 100644 --- a/src/test/java/io/reactivex/internal/operators/maybe/MaybeZipIterableTest.java +++ b/src/test/java/io/reactivex/internal/operators/maybe/MaybeZipIterableTest.java @@ -145,7 +145,7 @@ public void run() { to.assertFailure(TestException.class); if (!errors.isEmpty()) { - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } } finally { RxJavaPlugins.reset(); diff --git a/src/test/java/io/reactivex/internal/operators/observable/BlockingObservableLatestTest.java b/src/test/java/io/reactivex/internal/operators/observable/BlockingObservableLatestTest.java index ff7c7caa0a..cdd95c58f2 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/BlockingObservableLatestTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/BlockingObservableLatestTest.java @@ -221,7 +221,7 @@ public void onError() { try { ((Observer)it).onError(new TestException()); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/BlockingObservableNextTest.java b/src/test/java/io/reactivex/internal/operators/observable/BlockingObservableNextTest.java index e50681bd74..ce8ea429f3 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/BlockingObservableNextTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/BlockingObservableNextTest.java @@ -348,7 +348,7 @@ public void nextObserverError() { try { no.onError(new TestException()); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableAllTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableAllTest.java index ac817857b7..29d2f8eff0 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableAllTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableAllTest.java @@ -330,7 +330,7 @@ public boolean test(Integer v) throws Exception { .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -360,7 +360,7 @@ public boolean test(Integer v) throws Exception { .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableAmbTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableAmbTest.java index 5018db3c26..fd3d5aafc7 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableAmbTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableAmbTest.java @@ -359,7 +359,7 @@ public void run() { to.assertFailure(TestException.class); if (!errors.isEmpty()) { - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } } } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableAnyTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableAnyTest.java index 129221ff2e..3ad9314430 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableAnyTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableAnyTest.java @@ -533,7 +533,7 @@ public boolean test(Integer v) throws Exception { .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } @@ -558,7 +558,7 @@ protected void subscribeActual(Observer observer) { .test() .assertFailureAndMessage(TestException.class, "First"); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableCollectTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableCollectTest.java index 2030da8685..c970391047 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableCollectTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableCollectTest.java @@ -95,7 +95,9 @@ public void testCollectorFailureDoesNotResultInTwoErrorEmissionsObservable() { .test() // .assertError(e1) // .assertNotComplete(); - assertEquals(Arrays.asList(e2), list); + + assertEquals(1, list.size()); + assertEquals(e2, list.get(0).getCause()); } finally { RxJavaPlugins.reset(); } @@ -218,7 +220,9 @@ public void testCollectorFailureDoesNotResultInTwoErrorEmissions() { .test() // .assertError(e1) // .assertNotComplete(); - assertEquals(Arrays.asList(e2), list); + + assertEquals(1, list.size()); + assertEquals(e2, list.get(0).getCause()); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableCombineLatestTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableCombineLatestTest.java index a265128173..0938934939 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableCombineLatestTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableCombineLatestTest.java @@ -1010,7 +1010,7 @@ public void run() { } for (Throwable e : errors) { - assertTrue(e.toString(), e instanceof TestException); + assertTrue(e.toString(), e.getCause() instanceof TestException); } } finally { RxJavaPlugins.reset(); diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableConcatMapEagerTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableConcatMapEagerTest.java index fdd321178f..c1d6b5a27f 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableConcatMapEagerTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableConcatMapEagerTest.java @@ -851,7 +851,7 @@ public void run() { } else { to.assertError(TestException.class); if (!errors.isEmpty()) { - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } } } finally { diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableConcatMapTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableConcatMapTest.java index 4802e4312b..efa9951efe 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableConcatMapTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableConcatMapTest.java @@ -164,7 +164,7 @@ public ObservableSource apply(Integer v) throws Exception { .test() .assertResult(1, 2); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -195,7 +195,7 @@ public ObservableSource apply(Integer v) throws Exception { .test() .assertResult(1, 2); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -362,7 +362,7 @@ protected void subscribeActual(Observer observer) { o[0].onError(new TestException()); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableDebounceTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableDebounceTest.java index 432b09116f..39588be465 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableDebounceTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableDebounceTest.java @@ -337,7 +337,7 @@ protected void subscribeActual(Observer observer) { .test() .assertResult(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableDematerializeTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableDematerializeTest.java index 821a860c99..c72ae018cc 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableDematerializeTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableDematerializeTest.java @@ -169,8 +169,8 @@ protected void subscribeActual(Observer observer) { .test() .assertResult(); - TestHelper.assertError(errors, 0, TestException.class, "First"); - TestHelper.assertError(errors, 1, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "First"); + TestHelper.assertUndeliverable(errors, 1, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableDistinctTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableDistinctTest.java index 1237b2382c..299a5c3010 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableDistinctTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableDistinctTest.java @@ -247,7 +247,7 @@ protected void subscribeActual(Observer observer) { .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableDistinctUntilChangedTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableDistinctUntilChangedTest.java index b02c54fc8a..c519e3d036 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableDistinctUntilChangedTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableDistinctUntilChangedTest.java @@ -243,7 +243,7 @@ public boolean test(Integer a, Integer b) throws Exception { .test() .assertFailure(TestException.class, 1); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableDoFinallyTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableDoFinallyTest.java index bedc7518e0..27ae321f4f 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableDoFinallyTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableDoFinallyTest.java @@ -320,7 +320,7 @@ public void run() throws Exception { .assertResult(1) .cancel(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -342,7 +342,7 @@ public void run() throws Exception { .assertResult(1) .cancel(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableDoOnEachTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableDoOnEachTest.java index c6c6d2ea95..e1640677a7 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableDoOnEachTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableDoOnEachTest.java @@ -247,7 +247,7 @@ public void accept(Object e) throws Exception { .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } @@ -274,7 +274,7 @@ public void run() throws Exception { .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } @@ -301,7 +301,7 @@ public void run() throws Exception { .test() .assertResult(); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } @@ -351,7 +351,7 @@ public void accept(Object e) throws Exception { .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } @@ -379,7 +379,7 @@ public void run() throws Exception { .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } @@ -423,7 +423,7 @@ public void run() throws Exception { .test() .assertResult(); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableElementAtTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableElementAtTest.java index 6eb7f509ef..d76be9b478 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableElementAtTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableElementAtTest.java @@ -245,7 +245,7 @@ protected void subscribeActual(Observer observer) { .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -270,7 +270,7 @@ protected void subscribeActual(Observer observer) { .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -295,7 +295,7 @@ protected void subscribeActual(Observer observer) { .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableFlatMapMaybeTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableFlatMapMaybeTest.java index da918a176f..d2f77576a3 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableFlatMapMaybeTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableFlatMapMaybeTest.java @@ -332,7 +332,7 @@ protected void subscribeActual(Observer observer) { .test() .assertFailureAndMessage(TestException.class, "First"); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } @@ -354,7 +354,7 @@ protected void subscribeActual(MaybeObserver observer) { .test() .assertFailureAndMessage(TestException.class, "First"); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableFlatMapSingleTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableFlatMapSingleTest.java index 5fd2b1ce56..4a56c61795 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableFlatMapSingleTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableFlatMapSingleTest.java @@ -282,7 +282,7 @@ protected void subscribeActual(Observer observer) { .test() .assertFailureAndMessage(TestException.class, "First"); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } @@ -304,7 +304,7 @@ protected void subscribeActual(SingleObserver observer) { .test() .assertFailureAndMessage(TestException.class, "First"); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableForEachTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableForEachTest.java index 745c34b5cb..960f0acdde 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableForEachTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableForEachTest.java @@ -154,7 +154,7 @@ public void run() throws Exception { } }); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableFromCompletableTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableFromCompletableTest.java index bad973a013..0defa55503 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableFromCompletableTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableFromCompletableTest.java @@ -76,7 +76,7 @@ public Integer call() throws Exception { to.assertEmpty(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableGenerateTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableGenerateTest.java index b88822f9f4..467f9ebefa 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableGenerateTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableGenerateTest.java @@ -107,7 +107,7 @@ public void accept(Object d) throws Exception { .test() .assertResult(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -175,7 +175,7 @@ public void accept(Emitter e) throws Exception { .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableGroupJoinTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableGroupJoinTest.java index 56b3db5882..c23628c4bb 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableGroupJoinTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableGroupJoinTest.java @@ -569,7 +569,7 @@ public void run() { } if (!errors.isEmpty()) { - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } } finally { RxJavaPlugins.reset(); @@ -642,7 +642,7 @@ public void run() { } if (!errors.isEmpty()) { - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } } finally { RxJavaPlugins.reset(); diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableJoinTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableJoinTest.java index a1ee6305ed..8ced523827 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableJoinTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableJoinTest.java @@ -403,7 +403,7 @@ public Integer apply(Integer a, Integer b) throws Exception { .test() .assertFailureAndMessage(TestException.class, "First"); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } @@ -440,7 +440,7 @@ public Integer apply(Integer a, Integer b) throws Exception { to .assertFailureAndMessage(TestException.class, "First"); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableObserveOnTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableObserveOnTest.java index 809bfe861f..21460f2b21 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableObserveOnTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableObserveOnTest.java @@ -510,7 +510,7 @@ protected void subscribeActual(Observer observer) { to.assertResult(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservablePublishTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservablePublishTest.java index b19d26edb8..695f9c8e00 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservablePublishTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservablePublishTest.java @@ -598,7 +598,7 @@ protected void subscribeActual(Observer observer) { .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -612,7 +612,7 @@ public void noErrorLoss() { co.connect(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableReplayTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableReplayTest.java index 7d3fa0504d..b0f3bf103d 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableReplayTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableReplayTest.java @@ -1310,7 +1310,7 @@ protected void subscribeActual(Observer observer) { .test() .assertFailureAndMessage(TestException.class, "First"); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableSingleTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableSingleTest.java index 009a08d1f1..a0a6b841cc 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableSingleTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableSingleTest.java @@ -479,7 +479,7 @@ public void singleElementOperatorDoNotSwallowExceptionWhenDone() { } }).singleElement().test().assertComplete(); - assertSame(exception, error.get()); + assertSame(exception, error.get().getCause()); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableSwitchTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableSwitchTest.java index a965865627..c725767201 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableSwitchTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableSwitchTest.java @@ -800,7 +800,7 @@ protected void subscribeActual(Observer observer) { .test() .assertResult(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -840,7 +840,7 @@ protected void subscribeActual(Observer observer) { .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableTakeUntilPredicateTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableTakeUntilPredicateTest.java index 7e2cfcf7d4..6e3614525b 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableTakeUntilPredicateTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableTakeUntilPredicateTest.java @@ -186,7 +186,7 @@ protected void subscribeActual(Observer observer) { .test() .assertResult(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableThrottleFirstTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableThrottleFirstTest.java index d7adae3f43..c2a1176f41 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableThrottleFirstTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableThrottleFirstTest.java @@ -184,7 +184,7 @@ protected void subscribeActual(Observer observer) { .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableTimeoutTests.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableTimeoutTests.java index ac57b2f6bf..b32903164d 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableTimeoutTests.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableTimeoutTests.java @@ -450,7 +450,7 @@ protected void subscribeActual(Observer observer) { .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -476,7 +476,7 @@ protected void subscribeActual(Observer observer) { .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableTimeoutWithSelectorTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableTimeoutWithSelectorTest.java index b4303f2fef..a76affd787 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableTimeoutWithSelectorTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableTimeoutWithSelectorTest.java @@ -448,7 +448,7 @@ protected void subscribeActual(Observer observer) { to.assertFailureAndMessage(TestException.class, "First", 1); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } @@ -477,7 +477,7 @@ protected void subscribeActual(Observer observer) { to.assertFailureAndMessage(TestException.class, "First", 1); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableUnsubscribeOnTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableUnsubscribeOnTest.java index 3003c71ea3..744c585646 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableUnsubscribeOnTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableUnsubscribeOnTest.java @@ -252,7 +252,7 @@ protected void subscribeActual(Observer observer) { .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableUsingTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableUsingTest.java index f7af68e5c1..aa677806bf 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableUsingTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableUsingTest.java @@ -552,7 +552,7 @@ public void accept(Object e) throws Exception { .test() .assertResult(); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableWithLatestFromTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableWithLatestFromTest.java index c243b495e8..a27f4ad37a 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableWithLatestFromTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableWithLatestFromTest.java @@ -615,7 +615,7 @@ public Object apply(Integer a, Integer b, Integer c) throws Exception { .test() .assertFailureAndMessage(TestException.class, "First"); - TestHelper.assertError(errors, 0, TestException.class, "Second"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Second"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/observable/ObservableZipIterableTest.java b/src/test/java/io/reactivex/internal/operators/observable/ObservableZipIterableTest.java index 835e7bede4..971359d8ad 100644 --- a/src/test/java/io/reactivex/internal/operators/observable/ObservableZipIterableTest.java +++ b/src/test/java/io/reactivex/internal/operators/observable/ObservableZipIterableTest.java @@ -425,7 +425,7 @@ public Object apply(Integer a, Integer b) throws Exception { .test() .assertResult(2); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/single/SingleAmbTest.java b/src/test/java/io/reactivex/internal/operators/single/SingleAmbTest.java index 41aa56255b..feb9abd77d 100644 --- a/src/test/java/io/reactivex/internal/operators/single/SingleAmbTest.java +++ b/src/test/java/io/reactivex/internal/operators/single/SingleAmbTest.java @@ -202,7 +202,7 @@ public void run() { TestHelper.race(r1, r2, Schedulers.single()); if (!errors.isEmpty()) { - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } } finally { RxJavaPlugins.reset(); @@ -243,7 +243,7 @@ public void run() { TestHelper.race(r1, r2, Schedulers.single()); if (!errors.isEmpty()) { - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } } finally { RxJavaPlugins.reset(); diff --git a/src/test/java/io/reactivex/internal/operators/single/SingleDelayTest.java b/src/test/java/io/reactivex/internal/operators/single/SingleDelayTest.java index 512d975330..b5e02388fb 100644 --- a/src/test/java/io/reactivex/internal/operators/single/SingleDelayTest.java +++ b/src/test/java/io/reactivex/internal/operators/single/SingleDelayTest.java @@ -161,7 +161,7 @@ protected void subscribeActual(Subscriber s) { .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -197,7 +197,7 @@ protected void subscribeActual(Observer s) { .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/single/SingleDoAfterSuccessTest.java b/src/test/java/io/reactivex/internal/operators/single/SingleDoAfterSuccessTest.java index 786ee30eb0..7dbe7729c6 100644 --- a/src/test/java/io/reactivex/internal/operators/single/SingleDoAfterSuccessTest.java +++ b/src/test/java/io/reactivex/internal/operators/single/SingleDoAfterSuccessTest.java @@ -107,7 +107,7 @@ public void accept(Integer e) throws Exception { .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/single/SingleDoFinallyTest.java b/src/test/java/io/reactivex/internal/operators/single/SingleDoFinallyTest.java index 782a6adec3..0e24a53a50 100644 --- a/src/test/java/io/reactivex/internal/operators/single/SingleDoFinallyTest.java +++ b/src/test/java/io/reactivex/internal/operators/single/SingleDoFinallyTest.java @@ -84,7 +84,7 @@ public void run() throws Exception { .assertResult(1) .cancel(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/single/SingleDoOnTest.java b/src/test/java/io/reactivex/internal/operators/single/SingleDoOnTest.java index f8420da8d3..87aa548a25 100644 --- a/src/test/java/io/reactivex/internal/operators/single/SingleDoOnTest.java +++ b/src/test/java/io/reactivex/internal/operators/single/SingleDoOnTest.java @@ -147,7 +147,7 @@ public void accept(Disposable s) throws Exception { .test() .assertFailureAndMessage(TestException.class, "Inner"); - TestHelper.assertError(errors, 0, TestException.class, "Outer"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Outer"); } finally { RxJavaPlugins.reset(); } @@ -292,7 +292,7 @@ public void run() throws Exception { .test() .cancel(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/single/SingleEqualsTest.java b/src/test/java/io/reactivex/internal/operators/single/SingleEqualsTest.java index 12ac8293a4..796e9621ea 100644 --- a/src/test/java/io/reactivex/internal/operators/single/SingleEqualsTest.java +++ b/src/test/java/io/reactivex/internal/operators/single/SingleEqualsTest.java @@ -31,7 +31,7 @@ public void bothError() { .test() .assertFailureAndMessage(TestException.class, "One"); - TestHelper.assertError(errors, 0, TestException.class, "Two"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Two"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/single/SingleFromPublisherTest.java b/src/test/java/io/reactivex/internal/operators/single/SingleFromPublisherTest.java index bce93d3967..c6cc2f46d5 100644 --- a/src/test/java/io/reactivex/internal/operators/single/SingleFromPublisherTest.java +++ b/src/test/java/io/reactivex/internal/operators/single/SingleFromPublisherTest.java @@ -101,7 +101,7 @@ protected void subscribeActual(Subscriber s) { .assertResult(1); TestHelper.assertError(errors, 0, IllegalStateException.class, "Subscription already set!"); - TestHelper.assertError(errors, 1, TestException.class); + TestHelper.assertUndeliverable(errors, 1, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/single/SingleTakeUntilTest.java b/src/test/java/io/reactivex/internal/operators/single/SingleTakeUntilTest.java index 4acb272b32..a253f2edb7 100644 --- a/src/test/java/io/reactivex/internal/operators/single/SingleTakeUntilTest.java +++ b/src/test/java/io/reactivex/internal/operators/single/SingleTakeUntilTest.java @@ -253,7 +253,7 @@ public void run() { to.assertFailure(TestException.class); if (!errors.isEmpty()) { - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } } finally { RxJavaPlugins.reset(); diff --git a/src/test/java/io/reactivex/internal/operators/single/SingleUsingTest.java b/src/test/java/io/reactivex/internal/operators/single/SingleUsingTest.java index 637cf7edce..5a278fbae0 100644 --- a/src/test/java/io/reactivex/internal/operators/single/SingleUsingTest.java +++ b/src/test/java/io/reactivex/internal/operators/single/SingleUsingTest.java @@ -121,7 +121,7 @@ public void noneagerMapperThrowsDisposerThrows() { .test() .assertFailureAndMessage(TestException.class, "Mapper"); - TestHelper.assertError(errors, 0, TestException.class, "Disposer"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Disposer"); } finally { RxJavaPlugins.reset(); } @@ -175,7 +175,7 @@ public void disposerThrowsNonEager() { Single.using(Functions.justCallable(Disposables.empty()), mapper, disposerThrows, false) .test() .assertResult(1); - TestHelper.assertError(errors, 0, TestException.class, "Disposer"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Disposer"); } finally { RxJavaPlugins.reset(); } @@ -212,7 +212,7 @@ public SingleSource apply(Disposable v) throws Exception { }, disposerThrows, false) .test() .assertFailure(TestException.class); - TestHelper.assertError(errors, 0, TestException.class, "Disposer"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Disposer"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/operators/single/SingleZipArrayTest.java b/src/test/java/io/reactivex/internal/operators/single/SingleZipArrayTest.java index fe3e7e7f77..e56f7c0022 100644 --- a/src/test/java/io/reactivex/internal/operators/single/SingleZipArrayTest.java +++ b/src/test/java/io/reactivex/internal/operators/single/SingleZipArrayTest.java @@ -143,7 +143,7 @@ public void run() { to.assertFailure(TestException.class); if (!errors.isEmpty()) { - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } } finally { RxJavaPlugins.reset(); diff --git a/src/test/java/io/reactivex/internal/operators/single/SingleZipIterableTest.java b/src/test/java/io/reactivex/internal/operators/single/SingleZipIterableTest.java index 5b8f00d1b0..31e8bc73d3 100644 --- a/src/test/java/io/reactivex/internal/operators/single/SingleZipIterableTest.java +++ b/src/test/java/io/reactivex/internal/operators/single/SingleZipIterableTest.java @@ -145,7 +145,7 @@ public void run() { to.assertFailure(TestException.class); if (!errors.isEmpty()) { - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } } finally { RxJavaPlugins.reset(); diff --git a/src/test/java/io/reactivex/internal/schedulers/ScheduledRunnableTest.java b/src/test/java/io/reactivex/internal/schedulers/ScheduledRunnableTest.java index 38a2cb2901..0a93375f86 100644 --- a/src/test/java/io/reactivex/internal/schedulers/ScheduledRunnableTest.java +++ b/src/test/java/io/reactivex/internal/schedulers/ScheduledRunnableTest.java @@ -212,7 +212,7 @@ public void run() { assertEquals(0, set.size()); - TestHelper.assertError(errors, 0, TestException.class, "First"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "First"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/subscribers/EmptyComponentTest.java b/src/test/java/io/reactivex/internal/subscribers/EmptyComponentTest.java index 5457ed532f..750b09663d 100644 --- a/src/test/java/io/reactivex/internal/subscribers/EmptyComponentTest.java +++ b/src/test/java/io/reactivex/internal/subscribers/EmptyComponentTest.java @@ -67,7 +67,7 @@ public void normal() { c.cancel(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/subscribers/FutureSubscriberTest.java b/src/test/java/io/reactivex/internal/subscribers/FutureSubscriberTest.java index 589c595511..fe86307cc6 100644 --- a/src/test/java/io/reactivex/internal/subscribers/FutureSubscriberTest.java +++ b/src/test/java/io/reactivex/internal/subscribers/FutureSubscriberTest.java @@ -87,7 +87,7 @@ public void onError() throws Exception { assertEquals("One", ex.getCause().getMessage()); } - TestHelper.assertError(errors, 0, TestException.class, "Two"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Two"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/subscribers/LambdaSubscriberTest.java b/src/test/java/io/reactivex/internal/subscribers/LambdaSubscriberTest.java index c26c25f237..71f64924e7 100644 --- a/src/test/java/io/reactivex/internal/subscribers/LambdaSubscriberTest.java +++ b/src/test/java/io/reactivex/internal/subscribers/LambdaSubscriberTest.java @@ -187,7 +187,7 @@ public void accept(Subscription s) throws Exception { assertTrue(o.isDisposed()); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/internal/subscriptions/FullArbiterTest.java b/src/test/java/io/reactivex/internal/subscriptions/FullArbiterTest.java index 2292f8da20..e5dd5d20ce 100644 --- a/src/test/java/io/reactivex/internal/subscriptions/FullArbiterTest.java +++ b/src/test/java/io/reactivex/internal/subscriptions/FullArbiterTest.java @@ -89,7 +89,7 @@ public void errorAfterCancel() { try { fa.onError(new TestException(), bs); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -106,7 +106,7 @@ public void cancelAfterError() { fa.cancel(); fa.drain(); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/maybe/MaybeTest.java b/src/test/java/io/reactivex/maybe/MaybeTest.java index e5e1a1b644..e715b37c1e 100644 --- a/src/test/java/io/reactivex/maybe/MaybeTest.java +++ b/src/test/java/io/reactivex/maybe/MaybeTest.java @@ -872,7 +872,7 @@ public void run() throws Exception { .assertNoErrors() .assertNotComplete(); - TestHelper.assertError(list, 0, TestException.class); + TestHelper.assertUndeliverable(list, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -2679,7 +2679,7 @@ public void sequenceEqual() { try { Maybe.sequenceEqual(Maybe.error(new TestException("One")), Maybe.error(new TestException("Two"))).test().assertFailureAndMessage(TestException.class, "One"); - TestHelper.assertError(errors, 0, TestException.class, "Two"); + TestHelper.assertUndeliverable(errors, 0, TestException.class, "Two"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/observers/SafeObserverTest.java b/src/test/java/io/reactivex/observers/SafeObserverTest.java index cf3c044f27..cf92a7139c 100644 --- a/src/test/java/io/reactivex/observers/SafeObserverTest.java +++ b/src/test/java/io/reactivex/observers/SafeObserverTest.java @@ -736,7 +736,7 @@ public void onSubscribeCrashes() { SafeObserver so = cd.toSafe(); so.onSubscribe(cd); - TestHelper.assertError(list, 0, TestException.class, "onSubscribe()"); + TestHelper.assertUndeliverable(list, 0, TestException.class, "onSubscribe()"); } finally { RxJavaPlugins.reset(); } @@ -872,7 +872,7 @@ public void onCompleteteCrash() { so.onComplete(); - TestHelper.assertError(list, 0, TestException.class, "onComplete()"); + TestHelper.assertUndeliverable(list, 0, TestException.class, "onComplete()"); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/observers/SerializedObserverTest.java b/src/test/java/io/reactivex/observers/SerializedObserverTest.java index 59d2f9106a..f330ce0b37 100644 --- a/src/test/java/io/reactivex/observers/SerializedObserverTest.java +++ b/src/test/java/io/reactivex/observers/SerializedObserverTest.java @@ -1219,7 +1219,7 @@ public void run() { } for (Throwable e : errors) { - assertTrue(e.toString(), e instanceof TestException); + assertTrue(e.toString(), e.getCause() instanceof TestException); } } finally { RxJavaPlugins.reset(); diff --git a/src/test/java/io/reactivex/parallel/ParallelCollectTest.java b/src/test/java/io/reactivex/parallel/ParallelCollectTest.java index 41c76f37df..4072a5c575 100644 --- a/src/test/java/io/reactivex/parallel/ParallelCollectTest.java +++ b/src/test/java/io/reactivex/parallel/ParallelCollectTest.java @@ -161,7 +161,7 @@ public void accept(List a, Object b) throws Exception { assertFalse(errors.isEmpty()); for (Throwable ex : errors) { - assertTrue(ex.toString(), ex instanceof TestException); + assertTrue(ex.toString(), ex.getCause() instanceof TestException); } } finally { RxJavaPlugins.reset(); diff --git a/src/test/java/io/reactivex/parallel/ParallelFilterTest.java b/src/test/java/io/reactivex/parallel/ParallelFilterTest.java index 1d93d5bb4d..c1a248fb7e 100644 --- a/src/test/java/io/reactivex/parallel/ParallelFilterTest.java +++ b/src/test/java/io/reactivex/parallel/ParallelFilterTest.java @@ -66,7 +66,7 @@ public void doubleError() { assertFalse(errors.isEmpty()); for (Throwable ex : errors) { - assertTrue(ex.toString(), ex instanceof TestException); + assertTrue(ex.toString(), ex.getCause() instanceof TestException); } } finally { RxJavaPlugins.reset(); @@ -86,7 +86,7 @@ public void doubleError2() { assertFalse(errors.isEmpty()); for (Throwable ex : errors) { - assertTrue(ex.toString(), ex instanceof TestException); + assertTrue(ex.toString(), ex.getCause() instanceof TestException); } } finally { RxJavaPlugins.reset(); diff --git a/src/test/java/io/reactivex/parallel/ParallelMapTest.java b/src/test/java/io/reactivex/parallel/ParallelMapTest.java index 1e7c158112..e739c3e925 100644 --- a/src/test/java/io/reactivex/parallel/ParallelMapTest.java +++ b/src/test/java/io/reactivex/parallel/ParallelMapTest.java @@ -93,7 +93,7 @@ public void doubleError() { assertFalse(errors.isEmpty()); for (Throwable ex : errors) { - assertTrue(ex.toString(), ex instanceof TestException); + assertTrue(ex.toString(), ex.getCause() instanceof TestException); } } finally { RxJavaPlugins.reset(); @@ -113,7 +113,7 @@ public void doubleError2() { assertFalse(errors.isEmpty()); for (Throwable ex : errors) { - assertTrue(ex.toString(), ex instanceof TestException); + assertTrue(ex.toString(), ex.getCause() instanceof TestException); } } finally { RxJavaPlugins.reset(); diff --git a/src/test/java/io/reactivex/parallel/ParallelPeekTest.java b/src/test/java/io/reactivex/parallel/ParallelPeekTest.java index 0ac327fb48..2eca0fe420 100644 --- a/src/test/java/io/reactivex/parallel/ParallelPeekTest.java +++ b/src/test/java/io/reactivex/parallel/ParallelPeekTest.java @@ -62,7 +62,7 @@ public void doubleError() { assertFalse(errors.isEmpty()); for (Throwable ex : errors) { - assertTrue(ex.toString(), ex instanceof TestException); + assertTrue(ex.toString(), ex.getCause() instanceof TestException); } } finally { RxJavaPlugins.reset(); @@ -89,7 +89,7 @@ public void accept(long n) throws Exception { assertFalse(errors.isEmpty()); for (Throwable ex : errors) { - assertTrue(ex.toString(), ex instanceof TestException); + assertTrue(ex.toString(), ex.getCause() instanceof TestException); } } finally { RxJavaPlugins.reset(); @@ -116,7 +116,7 @@ public void run() throws Exception { assertFalse(errors.isEmpty()); for (Throwable ex : errors) { - assertTrue(ex.toString(), ex instanceof TestException); + assertTrue(ex.toString(), ex.getCause() instanceof TestException); } } finally { RxJavaPlugins.reset(); @@ -158,7 +158,7 @@ public void run() throws Exception { assertFalse(errors.isEmpty()); for (Throwable ex : errors) { - assertTrue(ex.toString(), ex instanceof TestException); + assertTrue(ex.toString(), ex.getCause() instanceof TestException); } } finally { RxJavaPlugins.reset(); @@ -185,7 +185,7 @@ public void run() throws Exception { assertFalse(errors.isEmpty()); for (Throwable ex : errors) { - assertTrue(ex.toString(), ex instanceof TestException); + assertTrue(ex.toString(), ex.getCause() instanceof TestException); } } finally { RxJavaPlugins.reset(); diff --git a/src/test/java/io/reactivex/parallel/ParallelReduceFullTest.java b/src/test/java/io/reactivex/parallel/ParallelReduceFullTest.java index e083b1394e..f296c286d7 100644 --- a/src/test/java/io/reactivex/parallel/ParallelReduceFullTest.java +++ b/src/test/java/io/reactivex/parallel/ParallelReduceFullTest.java @@ -88,7 +88,7 @@ public Integer apply(Integer a, Integer b) throws Exception { .test() .assertFailure(IOException.class); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -124,7 +124,7 @@ public Object apply(Object a, Object b) throws Exception { assertFalse(errors.isEmpty()); for (Throwable ex : errors) { - assertTrue(ex.toString(), ex instanceof TestException); + assertTrue(ex.toString(), ex.getCause() instanceof TestException); } } finally { RxJavaPlugins.reset(); diff --git a/src/test/java/io/reactivex/parallel/ParallelReduceTest.java b/src/test/java/io/reactivex/parallel/ParallelReduceTest.java index a7f3905976..bd679e7e92 100644 --- a/src/test/java/io/reactivex/parallel/ParallelReduceTest.java +++ b/src/test/java/io/reactivex/parallel/ParallelReduceTest.java @@ -166,7 +166,7 @@ public List apply(List a, Object b) throws Exception { assertFalse(errors.isEmpty()); for (Throwable ex : errors) { - assertTrue(ex.toString(), ex instanceof TestException); + assertTrue(ex.toString(), ex.getCause() instanceof TestException); } } finally { RxJavaPlugins.reset(); diff --git a/src/test/java/io/reactivex/parallel/ParallelRunOnTest.java b/src/test/java/io/reactivex/parallel/ParallelRunOnTest.java index 32a821f4a4..863c80e104 100644 --- a/src/test/java/io/reactivex/parallel/ParallelRunOnTest.java +++ b/src/test/java/io/reactivex/parallel/ParallelRunOnTest.java @@ -52,7 +52,7 @@ public void doubleError() { assertFalse(errors.isEmpty()); for (Throwable ex : errors) { - assertTrue(ex.toString(), ex instanceof TestException); + assertTrue(ex.toString(), ex.getCause() instanceof TestException); } } finally { RxJavaPlugins.reset(); diff --git a/src/test/java/io/reactivex/parallel/ParallelSortedJoinTest.java b/src/test/java/io/reactivex/parallel/ParallelSortedJoinTest.java index f1b783e2eb..99e336d338 100644 --- a/src/test/java/io/reactivex/parallel/ParallelSortedJoinTest.java +++ b/src/test/java/io/reactivex/parallel/ParallelSortedJoinTest.java @@ -92,7 +92,7 @@ public void error2() { .test() .assertFailure(IOException.class); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/plugins/RxJavaPluginsTest.java b/src/test/java/io/reactivex/plugins/RxJavaPluginsTest.java index 38e73d29fc..a8a998285e 100644 --- a/src/test/java/io/reactivex/plugins/RxJavaPluginsTest.java +++ b/src/test/java/io/reactivex/plugins/RxJavaPluginsTest.java @@ -18,7 +18,7 @@ import static org.junit.Assert.*; -import java.io.IOException; +import java.io.*; import java.lang.Thread.UncaughtExceptionHandler; import java.lang.reflect.*; import java.util.*; @@ -33,7 +33,7 @@ import io.reactivex.Observer; import io.reactivex.Scheduler.Worker; import io.reactivex.disposables.*; -import io.reactivex.exceptions.TestException; +import io.reactivex.exceptions.*; import io.reactivex.flowables.ConnectableFlowable; import io.reactivex.functions.*; import io.reactivex.internal.functions.Functions; @@ -1032,7 +1032,7 @@ public void accept(Throwable t) { RxJavaPlugins.onError(new TestException("Forced failure")); assertEquals(1, list.size()); - assertTestException(list, 0, "Forced failure"); + assertUndeliverableTestException(list, 0, "Forced failure"); } finally { RxJavaPlugins.reset(); } @@ -1087,7 +1087,7 @@ public void uncaughtException(Thread t, Throwable e) { RxJavaPlugins.onError(new TestException("Forced failure 3")); assertEquals(1, list.size()); - assertTestException(list, 0, "Forced failure"); + assertUndeliverableTestException(list, 0, "Forced failure"); } finally { RxJavaPlugins.reset(); Thread.currentThread().setUncaughtExceptionHandler(null); @@ -1119,7 +1119,7 @@ public void uncaughtException(Thread t, Throwable e) { assertEquals(2, list.size()); assertTestException(list, 0, "Forced failure 2"); - assertTestException(list, 1, "Forced failure"); + assertUndeliverableTestException(list, 1, "Forced failure"); Thread.currentThread().setUncaughtExceptionHandler(null); @@ -1527,6 +1527,11 @@ static void assertTestException(List list, int index, String message) assertEquals(message, list.get(index).getMessage()); } + static void assertUndeliverableTestException(List list, int index, String message) { + assertTrue(list.get(index).toString(), list.get(index).getCause() instanceof TestException); + assertEquals(message, list.get(index).getCause().getMessage()); + } + static void assertNPE(List list, int index) { assertTrue(list.get(index).toString(), list.get(index) instanceof NullPointerException); } @@ -2233,4 +2238,21 @@ public ParallelFlowable apply(ParallelFlowable pf) throws Exception { .test() .assertResult(1); } + + @Test + public void isBug() { + assertFalse(RxJavaPlugins.isBug(new RuntimeException())); + assertFalse(RxJavaPlugins.isBug(new IOException())); + assertFalse(RxJavaPlugins.isBug(new InterruptedException())); + assertFalse(RxJavaPlugins.isBug(new InterruptedIOException())); + + assertTrue(RxJavaPlugins.isBug(new NullPointerException())); + assertTrue(RxJavaPlugins.isBug(new IllegalArgumentException())); + assertTrue(RxJavaPlugins.isBug(new IllegalStateException())); + assertTrue(RxJavaPlugins.isBug(new MissingBackpressureException())); + assertTrue(RxJavaPlugins.isBug(new ProtocolViolationException(""))); + assertTrue(RxJavaPlugins.isBug(new UndeliverableException(new TestException()))); + assertTrue(RxJavaPlugins.isBug(new CompositeException(new TestException()))); + assertTrue(RxJavaPlugins.isBug(new OnErrorNotImplementedException(new TestException()))); + } } diff --git a/src/test/java/io/reactivex/processors/BehaviorProcessorTest.java b/src/test/java/io/reactivex/processors/BehaviorProcessorTest.java index 54349a1f48..f91c8f98b1 100644 --- a/src/test/java/io/reactivex/processors/BehaviorProcessorTest.java +++ b/src/test/java/io/reactivex/processors/BehaviorProcessorTest.java @@ -614,7 +614,7 @@ public void onErrorAfterComplete() { try { p.onError(new TestException()); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/processors/SerializedProcessorTest.java b/src/test/java/io/reactivex/processors/SerializedProcessorTest.java index 10e939c49f..ba981bde07 100644 --- a/src/test/java/io/reactivex/processors/SerializedProcessorTest.java +++ b/src/test/java/io/reactivex/processors/SerializedProcessorTest.java @@ -419,7 +419,7 @@ public void normal() { try { s.onError(new TestException()); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -636,7 +636,7 @@ public void run() { ts.assertFailure(TestException.class); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/processors/UnicastProcessorTest.java b/src/test/java/io/reactivex/processors/UnicastProcessorTest.java index 919dc24906..5758d448af 100644 --- a/src/test/java/io/reactivex/processors/UnicastProcessorTest.java +++ b/src/test/java/io/reactivex/processors/UnicastProcessorTest.java @@ -184,7 +184,7 @@ public void afterDone() { try { p.onError(new TestException()); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/schedulers/ExecutorSchedulerTest.java b/src/test/java/io/reactivex/schedulers/ExecutorSchedulerTest.java index a6af466daa..c0a19efa5e 100644 --- a/src/test/java/io/reactivex/schedulers/ExecutorSchedulerTest.java +++ b/src/test/java/io/reactivex/schedulers/ExecutorSchedulerTest.java @@ -345,9 +345,9 @@ public void rejectingExecutor() { assertSame(EmptyDisposable.INSTANCE, s.schedulePeriodicallyDirect(Functions.EMPTY_RUNNABLE, 10, 10, TimeUnit.MILLISECONDS)); - TestHelper.assertError(errors, 0, RejectedExecutionException.class); - TestHelper.assertError(errors, 1, RejectedExecutionException.class); - TestHelper.assertError(errors, 2, RejectedExecutionException.class); + TestHelper.assertUndeliverable(errors, 0, RejectedExecutionException.class); + TestHelper.assertUndeliverable(errors, 1, RejectedExecutionException.class); + TestHelper.assertUndeliverable(errors, 2, RejectedExecutionException.class); } finally { RxJavaPlugins.reset(); } @@ -370,9 +370,9 @@ public void rejectingExecutorWorker() { s = Schedulers.from(exec).createWorker(); assertSame(EmptyDisposable.INSTANCE, s.schedulePeriodically(Functions.EMPTY_RUNNABLE, 10, 10, TimeUnit.MILLISECONDS)); - TestHelper.assertError(errors, 0, RejectedExecutionException.class); - TestHelper.assertError(errors, 1, RejectedExecutionException.class); - TestHelper.assertError(errors, 2, RejectedExecutionException.class); + TestHelper.assertUndeliverable(errors, 0, RejectedExecutionException.class); + TestHelper.assertUndeliverable(errors, 1, RejectedExecutionException.class); + TestHelper.assertUndeliverable(errors, 2, RejectedExecutionException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/schedulers/SchedulerTest.java b/src/test/java/io/reactivex/schedulers/SchedulerTest.java index 0962d35080..8c2b534991 100644 --- a/src/test/java/io/reactivex/schedulers/SchedulerTest.java +++ b/src/test/java/io/reactivex/schedulers/SchedulerTest.java @@ -234,7 +234,7 @@ public void run() { Thread.sleep(250); assertEquals(1, list.size()); - TestHelper.assertError(list, 0, TestException.class, null); + TestHelper.assertUndeliverable(list, 0, TestException.class, null); } finally { RxJavaPlugins.reset(); diff --git a/src/test/java/io/reactivex/single/SingleSubscribeTest.java b/src/test/java/io/reactivex/single/SingleSubscribeTest.java index 4665803459..9003fd3008 100644 --- a/src/test/java/io/reactivex/single/SingleSubscribeTest.java +++ b/src/test/java/io/reactivex/single/SingleSubscribeTest.java @@ -140,7 +140,7 @@ public void accept(Integer t) throws Exception { } }); - TestHelper.assertError(list, 0, TestException.class); + TestHelper.assertUndeliverable(list, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -181,7 +181,7 @@ public void accept(Integer t, Throwable e) throws Exception { } }); - TestHelper.assertError(list, 0, TestException.class); + TestHelper.assertUndeliverable(list, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/subjects/BehaviorSubjectTest.java b/src/test/java/io/reactivex/subjects/BehaviorSubjectTest.java index 4935983abd..c3965c6e3f 100644 --- a/src/test/java/io/reactivex/subjects/BehaviorSubjectTest.java +++ b/src/test/java/io/reactivex/subjects/BehaviorSubjectTest.java @@ -663,7 +663,7 @@ public void onErrorAfterComplete() { try { p.onError(new TestException()); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/subjects/CompletableSubjectTest.java b/src/test/java/io/reactivex/subjects/CompletableSubjectTest.java index 8e88a3c1ba..c2c13fd5d3 100644 --- a/src/test/java/io/reactivex/subjects/CompletableSubjectTest.java +++ b/src/test/java/io/reactivex/subjects/CompletableSubjectTest.java @@ -40,7 +40,7 @@ public void once() { try { cs.onError(new IOException()); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/subjects/MaybeSubjectTest.java b/src/test/java/io/reactivex/subjects/MaybeSubjectTest.java index f23e9d0579..8d40960d19 100644 --- a/src/test/java/io/reactivex/subjects/MaybeSubjectTest.java +++ b/src/test/java/io/reactivex/subjects/MaybeSubjectTest.java @@ -83,7 +83,7 @@ public void once() { try { ms.onError(new IOException()); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/subjects/SerializedSubjectTest.java b/src/test/java/io/reactivex/subjects/SerializedSubjectTest.java index 4385cd2074..7328c494ca 100644 --- a/src/test/java/io/reactivex/subjects/SerializedSubjectTest.java +++ b/src/test/java/io/reactivex/subjects/SerializedSubjectTest.java @@ -420,7 +420,7 @@ public void normal() { try { s.onError(new TestException()); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -637,7 +637,7 @@ public void run() { ts.assertFailure(TestException.class); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/subjects/SingleSubjectTest.java b/src/test/java/io/reactivex/subjects/SingleSubjectTest.java index 912aaec089..1ddf762f51 100644 --- a/src/test/java/io/reactivex/subjects/SingleSubjectTest.java +++ b/src/test/java/io/reactivex/subjects/SingleSubjectTest.java @@ -80,7 +80,7 @@ public void once() { try { ss.onError(new IOException()); - TestHelper.assertError(errors, 0, IOException.class); + TestHelper.assertUndeliverable(errors, 0, IOException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/subjects/UnicastSubjectTest.java b/src/test/java/io/reactivex/subjects/UnicastSubjectTest.java index 2f4f8d9373..7cf8f8c374 100644 --- a/src/test/java/io/reactivex/subjects/UnicastSubjectTest.java +++ b/src/test/java/io/reactivex/subjects/UnicastSubjectTest.java @@ -235,7 +235,7 @@ public void afterDone() { try { p.onError(new TestException()); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -341,7 +341,7 @@ public void dispose() { try { us.onError(new TestException()); - TestHelper.assertError(errors, 0, TestException.class); + TestHelper.assertUndeliverable(errors, 0, TestException.class); } finally { RxJavaPlugins.reset(); } diff --git a/src/test/java/io/reactivex/subscribers/SafeSubscriberTest.java b/src/test/java/io/reactivex/subscribers/SafeSubscriberTest.java index 3de86e32d9..9686476fc3 100644 --- a/src/test/java/io/reactivex/subscribers/SafeSubscriberTest.java +++ b/src/test/java/io/reactivex/subscribers/SafeSubscriberTest.java @@ -871,7 +871,7 @@ public void onSubscribeCrashes() { SafeSubscriber so = cd.toSafe(); so.onSubscribe(cd); - TestHelper.assertError(list, 0, TestException.class, "onSubscribe()"); + TestHelper.assertUndeliverable(list, 0, TestException.class, "onSubscribe()"); } finally { RxJavaPlugins.reset(); } @@ -1007,7 +1007,7 @@ public void onCompleteteCrash() { so.onComplete(); - TestHelper.assertError(list, 0, TestException.class, "onComplete()"); + TestHelper.assertUndeliverable(list, 0, TestException.class, "onComplete()"); } finally { RxJavaPlugins.reset(); } @@ -1062,7 +1062,7 @@ public void requestCrash() { so.request(1); - TestHelper.assertError(list, 0, TestException.class); + TestHelper.assertUndeliverable(list, 0, TestException.class); } finally { RxJavaPlugins.reset(); } @@ -1079,7 +1079,7 @@ public void cancelCrash() { so.cancel(); - TestHelper.assertError(list, 0, TestException.class); + TestHelper.assertUndeliverable(list, 0, TestException.class); } finally { RxJavaPlugins.reset(); }