The following issues were found
src/main/java/io/reactivex/rxjava3/internal/operators/flowable/FlowableScanSeed.java
38 issues
Line: 31
import io.reactivex.rxjava3.plugins.RxJavaPlugins;
public final class FlowableScanSeed<T, R> extends AbstractFlowableWithUpstream<T, R> {
final BiFunction<R, ? super T, R> accumulator;
final Supplier<R> seedSupplier;
public FlowableScanSeed(Flowable<T> source, Supplier<R> seedSupplier, BiFunction<R, ? super T, R> accumulator) {
super(source);
this.accumulator = accumulator;
Reported by PMD.
Line: 32
public final class FlowableScanSeed<T, R> extends AbstractFlowableWithUpstream<T, R> {
final BiFunction<R, ? super T, R> accumulator;
final Supplier<R> seedSupplier;
public FlowableScanSeed(Flowable<T> source, Supplier<R> seedSupplier, BiFunction<R, ? super T, R> accumulator) {
super(source);
this.accumulator = accumulator;
this.seedSupplier = seedSupplier;
Reported by PMD.
Line: 46
try {
r = Objects.requireNonNull(seedSupplier.get(), "The seed supplied is null");
} catch (Throwable e) {
Exceptions.throwIfFatal(e);
EmptySubscription.error(e, s);
return;
}
Reported by PMD.
Line: 55
source.subscribe(new ScanSeedSubscriber<>(s, accumulator, r, bufferSize()));
}
static final class ScanSeedSubscriber<T, R>
extends AtomicInteger
implements FlowableSubscriber<T>, Subscription {
private static final long serialVersionUID = -1776795561228106469L;
final Subscriber<? super R> downstream;
Reported by PMD.
Line: 55
source.subscribe(new ScanSeedSubscriber<>(s, accumulator, r, bufferSize()));
}
static final class ScanSeedSubscriber<T, R>
extends AtomicInteger
implements FlowableSubscriber<T>, Subscription {
private static final long serialVersionUID = -1776795561228106469L;
final Subscriber<? super R> downstream;
Reported by PMD.
Line: 60
implements FlowableSubscriber<T>, Subscription {
private static final long serialVersionUID = -1776795561228106469L;
final Subscriber<? super R> downstream;
final BiFunction<R, ? super T, R> accumulator;
final SimplePlainQueue<R> queue;
Reported by PMD.
Line: 62
final Subscriber<? super R> downstream;
final BiFunction<R, ? super T, R> accumulator;
final SimplePlainQueue<R> queue;
final AtomicLong requested;
Reported by PMD.
Line: 64
final BiFunction<R, ? super T, R> accumulator;
final SimplePlainQueue<R> queue;
final AtomicLong requested;
final int prefetch;
Reported by PMD.
Line: 66
final SimplePlainQueue<R> queue;
final AtomicLong requested;
final int prefetch;
final int limit;
Reported by PMD.
Line: 68
final AtomicLong requested;
final int prefetch;
final int limit;
volatile boolean cancelled;
Reported by PMD.
src/test/java/io/reactivex/rxjava3/internal/operators/flowable/FlowableDelaySubscriptionOtherTest.java
38 issues
Line: 30
import io.reactivex.rxjava3.subscribers.TestSubscriber;
import io.reactivex.rxjava3.testsupport.TestHelper;
public class FlowableDelaySubscriptionOtherTest extends RxJavaTest {
@Test
public void noPrematureSubscription() {
PublishProcessor<Object> other = PublishProcessor.create();
TestSubscriber<Integer> ts = new TestSubscriber<>();
Reported by PMD.
Line: 53
ts.assertNoErrors();
ts.assertNoValues();
Assert.assertEquals("Premature subscription", 0, subscribed.get());
other.onNext(1);
Assert.assertEquals("No subscription", 1, subscribed.get());
Reported by PMD.
Line: 55
Assert.assertEquals("Premature subscription", 0, subscribed.get());
other.onNext(1);
Assert.assertEquals("No subscription", 1, subscribed.get());
ts.assertValue(1);
ts.assertNoErrors();
Reported by PMD.
Line: 57
other.onNext(1);
Assert.assertEquals("No subscription", 1, subscribed.get());
ts.assertValue(1);
ts.assertNoErrors();
ts.assertComplete();
}
Reported by PMD.
Line: 88
Assert.assertEquals("Premature subscription", 0, subscribed.get());
other.onNext(1);
other.onNext(2);
Assert.assertEquals("No subscription", 1, subscribed.get());
ts.assertValue(1);
Reported by PMD.
Line: 89
Assert.assertEquals("Premature subscription", 0, subscribed.get());
other.onNext(1);
other.onNext(2);
Assert.assertEquals("No subscription", 1, subscribed.get());
ts.assertValue(1);
ts.assertNoErrors();
Reported by PMD.
Line: 122
Assert.assertEquals("Premature subscription", 0, subscribed.get());
other.onComplete();
Assert.assertEquals("No subscription", 1, subscribed.get());
ts.assertValue(1);
ts.assertNoErrors();
Reported by PMD.
Line: 155
Assert.assertEquals("Premature subscription", 0, subscribed.get());
other.onComplete();
Assert.assertEquals("No subscription", 1, subscribed.get());
ts.assertNoValues();
ts.assertNotComplete();
Reported by PMD.
Line: 222
Assert.assertEquals("Premature subscription", 0, subscribed.get());
other.onNext(1);
Assert.assertEquals("No subscription", 1, subscribed.get());
Assert.assertFalse("Not unsubscribed from other", other.hasSubscribers());
Reported by PMD.
Line: 226
Assert.assertEquals("No subscription", 1, subscribed.get());
Assert.assertFalse("Not unsubscribed from other", other.hasSubscribers());
ts.assertNotComplete();
ts.assertNoErrors();
ts.assertNoValues();
Reported by PMD.
src/test/java/io/reactivex/rxjava3/internal/operators/maybe/MaybeIsEmptyTest.java
38 issues
Line: 26
import io.reactivex.rxjava3.processors.PublishProcessor;
import io.reactivex.rxjava3.testsupport.TestHelper;
public class MaybeIsEmptyTest extends RxJavaTest {
@Test
public void normal() {
Maybe.just(1)
.isEmpty()
Reported by PMD.
Line: 29
public class MaybeIsEmptyTest extends RxJavaTest {
@Test
public void normal() {
Maybe.just(1)
.isEmpty()
.test()
.assertResult(false);
}
Reported by PMD.
Line: 30
@Test
public void normal() {
Maybe.just(1)
.isEmpty()
.test()
.assertResult(false);
}
Reported by PMD.
Line: 30
@Test
public void normal() {
Maybe.just(1)
.isEmpty()
.test()
.assertResult(false);
}
Reported by PMD.
Line: 30
@Test
public void normal() {
Maybe.just(1)
.isEmpty()
.test()
.assertResult(false);
}
Reported by PMD.
Line: 37
}
@Test
public void empty() {
Maybe.empty()
.isEmpty()
.test()
.assertResult(true);
}
Reported by PMD.
Line: 38
@Test
public void empty() {
Maybe.empty()
.isEmpty()
.test()
.assertResult(true);
}
Reported by PMD.
Line: 38
@Test
public void empty() {
Maybe.empty()
.isEmpty()
.test()
.assertResult(true);
}
Reported by PMD.
Line: 38
@Test
public void empty() {
Maybe.empty()
.isEmpty()
.test()
.assertResult(true);
}
Reported by PMD.
Line: 45
}
@Test
public void error() {
Maybe.error(new TestException())
.isEmpty()
.test()
.assertFailure(TestException.class);
}
Reported by PMD.
src/test/java/io/reactivex/rxjava3/internal/jdk8/ObservableBlockingStreamTest.java
38 issues
Line: 32
@Test
public void empty() {
try (Stream<Integer> stream = Observable.<Integer>empty().blockingStream()) {
assertEquals(0, stream.toArray().length);
}
}
@Test
Reported by PMD.
Line: 32
@Test
public void empty() {
try (Stream<Integer> stream = Observable.<Integer>empty().blockingStream()) {
assertEquals(0, stream.toArray().length);
}
}
@Test
Reported by PMD.
Line: 33
@Test
public void empty() {
try (Stream<Integer> stream = Observable.<Integer>empty().blockingStream()) {
assertEquals(0, stream.toArray().length);
}
}
@Test
public void just() {
Reported by PMD.
Line: 33
@Test
public void empty() {
try (Stream<Integer> stream = Observable.<Integer>empty().blockingStream()) {
assertEquals(0, stream.toArray().length);
}
}
@Test
public void just() {
Reported by PMD.
Line: 39
@Test
public void just() {
try (Stream<Integer> stream = Observable.just(1).blockingStream()) {
assertArrayEquals(new Integer[] { 1 }, stream.toArray(Integer[]::new));
}
}
@Test
Reported by PMD.
Line: 40
@Test
public void just() {
try (Stream<Integer> stream = Observable.just(1).blockingStream()) {
assertArrayEquals(new Integer[] { 1 }, stream.toArray(Integer[]::new));
}
}
@Test
public void range() {
Reported by PMD.
Line: 46
@Test
public void range() {
try (Stream<Integer> stream = Observable.range(1, 5).blockingStream()) {
assertArrayEquals(new Integer[] { 1, 2, 3, 4, 5 }, stream.toArray(Integer[]::new));
}
}
@Test
Reported by PMD.
Line: 47
@Test
public void range() {
try (Stream<Integer> stream = Observable.range(1, 5).blockingStream()) {
assertArrayEquals(new Integer[] { 1, 2, 3, 4, 5 }, stream.toArray(Integer[]::new));
}
}
@Test
public void rangeBackpressured() {
Reported by PMD.
Line: 53
@Test
public void rangeBackpressured() {
try (Stream<Integer> stream = Observable.range(1, 5).blockingStream(1)) {
assertArrayEquals(new Integer[] { 1, 2, 3, 4, 5 }, stream.toArray(Integer[]::new));
}
}
@Test
Reported by PMD.
Line: 54
@Test
public void rangeBackpressured() {
try (Stream<Integer> stream = Observable.range(1, 5).blockingStream(1)) {
assertArrayEquals(new Integer[] { 1, 2, 3, 4, 5 }, stream.toArray(Integer[]::new));
}
}
@Test
public void rangeAsyncBackpressured() {
Reported by PMD.
src/main/java/io/reactivex/rxjava3/internal/operators/flowable/FlowableFlatMapMaybe.java
37 issues
Line: 37
*/
public final class FlowableFlatMapMaybe<T, R> extends AbstractFlowableWithUpstream<T, R> {
final Function<? super T, ? extends MaybeSource<? extends R>> mapper;
final boolean delayErrors;
final int maxConcurrency;
Reported by PMD.
Line: 39
final Function<? super T, ? extends MaybeSource<? extends R>> mapper;
final boolean delayErrors;
final int maxConcurrency;
public FlowableFlatMapMaybe(Flowable<T> source, Function<? super T, ? extends MaybeSource<? extends R>> mapper,
boolean delayError, int maxConcurrency) {
Reported by PMD.
Line: 41
final boolean delayErrors;
final int maxConcurrency;
public FlowableFlatMapMaybe(Flowable<T> source, Function<? super T, ? extends MaybeSource<? extends R>> mapper,
boolean delayError, int maxConcurrency) {
super(source);
this.mapper = mapper;
Reported by PMD.
Line: 56
source.subscribe(new FlatMapMaybeSubscriber<>(s, mapper, delayErrors, maxConcurrency));
}
static final class FlatMapMaybeSubscriber<T, R>
extends AtomicInteger
implements FlowableSubscriber<T>, Subscription {
private static final long serialVersionUID = 8600231336733376951L;
Reported by PMD.
Line: 56
source.subscribe(new FlatMapMaybeSubscriber<>(s, mapper, delayErrors, maxConcurrency));
}
static final class FlatMapMaybeSubscriber<T, R>
extends AtomicInteger
implements FlowableSubscriber<T>, Subscription {
private static final long serialVersionUID = 8600231336733376951L;
Reported by PMD.
Line: 58
static final class FlatMapMaybeSubscriber<T, R>
extends AtomicInteger
implements FlowableSubscriber<T>, Subscription {
private static final long serialVersionUID = 8600231336733376951L;
final Subscriber<? super R> downstream;
Reported by PMD.
Line: 62
private static final long serialVersionUID = 8600231336733376951L;
final Subscriber<? super R> downstream;
final boolean delayErrors;
final int maxConcurrency;
Reported by PMD.
Line: 64
final Subscriber<? super R> downstream;
final boolean delayErrors;
final int maxConcurrency;
final AtomicLong requested;
Reported by PMD.
Line: 66
final boolean delayErrors;
final int maxConcurrency;
final AtomicLong requested;
final CompositeDisposable set;
Reported by PMD.
Line: 68
final int maxConcurrency;
final AtomicLong requested;
final CompositeDisposable set;
final AtomicInteger active;
Reported by PMD.
src/test/java/io/reactivex/rxjava3/internal/operators/maybe/MaybeTimestampTest.java
37 issues
Line: 30
public class MaybeTimestampTest {
@Test
public void just() {
Maybe.just(1)
.timestamp()
.test()
.assertValueCount(1)
.assertNoErrors()
Reported by PMD.
Line: 31
@Test
public void just() {
Maybe.just(1)
.timestamp()
.test()
.assertValueCount(1)
.assertNoErrors()
.assertComplete();
Reported by PMD.
Line: 31
@Test
public void just() {
Maybe.just(1)
.timestamp()
.test()
.assertValueCount(1)
.assertNoErrors()
.assertComplete();
Reported by PMD.
Line: 31
@Test
public void just() {
Maybe.just(1)
.timestamp()
.test()
.assertValueCount(1)
.assertNoErrors()
.assertComplete();
Reported by PMD.
Line: 31
@Test
public void just() {
Maybe.just(1)
.timestamp()
.test()
.assertValueCount(1)
.assertNoErrors()
.assertComplete();
Reported by PMD.
Line: 31
@Test
public void just() {
Maybe.just(1)
.timestamp()
.test()
.assertValueCount(1)
.assertNoErrors()
.assertComplete();
Reported by PMD.
Line: 40
}
@Test
public void empty() {
Maybe.empty()
.timestamp()
.test()
.assertResult();
}
Reported by PMD.
Line: 41
@Test
public void empty() {
Maybe.empty()
.timestamp()
.test()
.assertResult();
}
Reported by PMD.
Line: 41
@Test
public void empty() {
Maybe.empty()
.timestamp()
.test()
.assertResult();
}
Reported by PMD.
Line: 41
@Test
public void empty() {
Maybe.empty()
.timestamp()
.test()
.assertResult();
}
Reported by PMD.
src/test/java/io/reactivex/rxjava3/internal/operators/maybe/MaybeTimeIntervalTest.java
37 issues
Line: 30
public class MaybeTimeIntervalTest {
@Test
public void just() {
Maybe.just(1)
.timeInterval()
.test()
.assertValueCount(1)
.assertNoErrors()
Reported by PMD.
Line: 31
@Test
public void just() {
Maybe.just(1)
.timeInterval()
.test()
.assertValueCount(1)
.assertNoErrors()
.assertComplete();
Reported by PMD.
Line: 31
@Test
public void just() {
Maybe.just(1)
.timeInterval()
.test()
.assertValueCount(1)
.assertNoErrors()
.assertComplete();
Reported by PMD.
Line: 31
@Test
public void just() {
Maybe.just(1)
.timeInterval()
.test()
.assertValueCount(1)
.assertNoErrors()
.assertComplete();
Reported by PMD.
Line: 31
@Test
public void just() {
Maybe.just(1)
.timeInterval()
.test()
.assertValueCount(1)
.assertNoErrors()
.assertComplete();
Reported by PMD.
Line: 31
@Test
public void just() {
Maybe.just(1)
.timeInterval()
.test()
.assertValueCount(1)
.assertNoErrors()
.assertComplete();
Reported by PMD.
Line: 40
}
@Test
public void empty() {
Maybe.empty()
.timeInterval()
.test()
.assertResult();
}
Reported by PMD.
Line: 41
@Test
public void empty() {
Maybe.empty()
.timeInterval()
.test()
.assertResult();
}
Reported by PMD.
Line: 41
@Test
public void empty() {
Maybe.empty()
.timeInterval()
.test()
.assertResult();
}
Reported by PMD.
Line: 41
@Test
public void empty() {
Maybe.empty()
.timeInterval()
.test()
.assertResult();
}
Reported by PMD.
src/main/java/io/reactivex/rxjava3/internal/operators/observable/ObservableBufferBoundary.java
37 issues
Line: 31
public final class ObservableBufferBoundary<T, U extends Collection<? super T>, Open, Close>
extends AbstractObservableWithUpstream<T, U> {
final Supplier<U> bufferSupplier;
final ObservableSource<? extends Open> bufferOpen;
final Function<? super Open, ? extends ObservableSource<? extends Close>> bufferClose;
public ObservableBufferBoundary(ObservableSource<T> source, ObservableSource<? extends Open> bufferOpen,
Function<? super Open, ? extends ObservableSource<? extends Close>> bufferClose, Supplier<U> bufferSupplier) {
Reported by PMD.
Line: 32
public final class ObservableBufferBoundary<T, U extends Collection<? super T>, Open, Close>
extends AbstractObservableWithUpstream<T, U> {
final Supplier<U> bufferSupplier;
final ObservableSource<? extends Open> bufferOpen;
final Function<? super Open, ? extends ObservableSource<? extends Close>> bufferClose;
public ObservableBufferBoundary(ObservableSource<T> source, ObservableSource<? extends Open> bufferOpen,
Function<? super Open, ? extends ObservableSource<? extends Close>> bufferClose, Supplier<U> bufferSupplier) {
super(source);
Reported by PMD.
Line: 33
extends AbstractObservableWithUpstream<T, U> {
final Supplier<U> bufferSupplier;
final ObservableSource<? extends Open> bufferOpen;
final Function<? super Open, ? extends ObservableSource<? extends Close>> bufferClose;
public ObservableBufferBoundary(ObservableSource<T> source, ObservableSource<? extends Open> bufferOpen,
Function<? super Open, ? extends ObservableSource<? extends Close>> bufferClose, Supplier<U> bufferSupplier) {
super(source);
this.bufferOpen = bufferOpen;
Reported by PMD.
Line: 58
private static final long serialVersionUID = -8466418554264089604L;
final Observer<? super C> downstream;
final Supplier<C> bufferSupplier;
final ObservableSource<? extends Open> bufferOpen;
Reported by PMD.
Line: 60
final Observer<? super C> downstream;
final Supplier<C> bufferSupplier;
final ObservableSource<? extends Open> bufferOpen;
final Function<? super Open, ? extends ObservableSource<? extends Close>> bufferClose;
Reported by PMD.
Line: 62
final Supplier<C> bufferSupplier;
final ObservableSource<? extends Open> bufferOpen;
final Function<? super Open, ? extends ObservableSource<? extends Close>> bufferClose;
final CompositeDisposable observers;
Reported by PMD.
Line: 64
final ObservableSource<? extends Open> bufferOpen;
final Function<? super Open, ? extends ObservableSource<? extends Close>> bufferClose;
final CompositeDisposable observers;
final AtomicReference<Disposable> upstream;
Reported by PMD.
Line: 66
final Function<? super Open, ? extends ObservableSource<? extends Close>> bufferClose;
final CompositeDisposable observers;
final AtomicReference<Disposable> upstream;
final AtomicThrowable errors;
Reported by PMD.
Line: 68
final CompositeDisposable observers;
final AtomicReference<Disposable> upstream;
final AtomicThrowable errors;
volatile boolean done;
Reported by PMD.
Line: 70
final AtomicReference<Disposable> upstream;
final AtomicThrowable errors;
volatile boolean done;
final SpscLinkedArrayQueue<C> queue;
Reported by PMD.
src/test/java/io/reactivex/rxjava3/internal/disposables/DisposableHelperTest.java
37 issues
Line: 30
public class DisposableHelperTest extends RxJavaTest {
@Test
public void enumMethods() {
assertEquals(1, DisposableHelper.values().length);
assertNotNull(DisposableHelper.valueOf("DISPOSED"));
}
@Test
Reported by PMD.
Line: 31
public class DisposableHelperTest extends RxJavaTest {
@Test
public void enumMethods() {
assertEquals(1, DisposableHelper.values().length);
assertNotNull(DisposableHelper.valueOf("DISPOSED"));
}
@Test
public void innerDisposed() {
Reported by PMD.
Line: 31
public class DisposableHelperTest extends RxJavaTest {
@Test
public void enumMethods() {
assertEquals(1, DisposableHelper.values().length);
assertNotNull(DisposableHelper.valueOf("DISPOSED"));
}
@Test
public void innerDisposed() {
Reported by PMD.
Line: 32
@Test
public void enumMethods() {
assertEquals(1, DisposableHelper.values().length);
assertNotNull(DisposableHelper.valueOf("DISPOSED"));
}
@Test
public void innerDisposed() {
assertTrue(DisposableHelper.DISPOSED.isDisposed());
Reported by PMD.
Line: 36
}
@Test
public void innerDisposed() {
assertTrue(DisposableHelper.DISPOSED.isDisposed());
DisposableHelper.DISPOSED.dispose();
assertTrue(DisposableHelper.DISPOSED.isDisposed());
}
Reported by PMD.
Line: 37
@Test
public void innerDisposed() {
assertTrue(DisposableHelper.DISPOSED.isDisposed());
DisposableHelper.DISPOSED.dispose();
assertTrue(DisposableHelper.DISPOSED.isDisposed());
}
@Test
Reported by PMD.
Line: 37
@Test
public void innerDisposed() {
assertTrue(DisposableHelper.DISPOSED.isDisposed());
DisposableHelper.DISPOSED.dispose();
assertTrue(DisposableHelper.DISPOSED.isDisposed());
}
@Test
Reported by PMD.
Line: 38
@Test
public void innerDisposed() {
assertTrue(DisposableHelper.DISPOSED.isDisposed());
DisposableHelper.DISPOSED.dispose();
assertTrue(DisposableHelper.DISPOSED.isDisposed());
}
@Test
public void validationNull() {
Reported by PMD.
Line: 39
public void innerDisposed() {
assertTrue(DisposableHelper.DISPOSED.isDisposed());
DisposableHelper.DISPOSED.dispose();
assertTrue(DisposableHelper.DISPOSED.isDisposed());
}
@Test
public void validationNull() {
List<Throwable> list = TestHelper.trackPluginErrors();
Reported by PMD.
Line: 39
public void innerDisposed() {
assertTrue(DisposableHelper.DISPOSED.isDisposed());
DisposableHelper.DISPOSED.dispose();
assertTrue(DisposableHelper.DISPOSED.isDisposed());
}
@Test
public void validationNull() {
List<Throwable> list = TestHelper.trackPluginErrors();
Reported by PMD.
src/test/java/io/reactivex/rxjava3/internal/operators/maybe/MaybeDoOnLifecycleTest.java
37 issues
Line: 33
@Test
public void success() throws Throwable {
@SuppressWarnings("unchecked")
Consumer<? super Disposable> onSubscribe = mock(Consumer.class);
Action onDispose = mock(Action.class);
Maybe.just(1)
.doOnLifecycle(onSubscribe, onDispose)
Reported by PMD.
Line: 37
Consumer<? super Disposable> onSubscribe = mock(Consumer.class);
Action onDispose = mock(Action.class);
Maybe.just(1)
.doOnLifecycle(onSubscribe, onDispose)
.test()
.assertResult(1);
verify(onSubscribe).accept(any());
Reported by PMD.
Line: 37
Consumer<? super Disposable> onSubscribe = mock(Consumer.class);
Action onDispose = mock(Action.class);
Maybe.just(1)
.doOnLifecycle(onSubscribe, onDispose)
.test()
.assertResult(1);
verify(onSubscribe).accept(any());
Reported by PMD.
Line: 37
Consumer<? super Disposable> onSubscribe = mock(Consumer.class);
Action onDispose = mock(Action.class);
Maybe.just(1)
.doOnLifecycle(onSubscribe, onDispose)
.test()
.assertResult(1);
verify(onSubscribe).accept(any());
Reported by PMD.
Line: 42
.test()
.assertResult(1);
verify(onSubscribe).accept(any());
verify(onDispose, never()).run();
}
@Test
public void empty() throws Throwable {
Reported by PMD.
Line: 43
.assertResult(1);
verify(onSubscribe).accept(any());
verify(onDispose, never()).run();
}
@Test
public void empty() throws Throwable {
@SuppressWarnings("unchecked")
Reported by PMD.
Line: 52
Consumer<? super Disposable> onSubscribe = mock(Consumer.class);
Action onDispose = mock(Action.class);
Maybe.empty()
.doOnLifecycle(onSubscribe, onDispose)
.test()
.assertResult();
verify(onSubscribe).accept(any());
Reported by PMD.
Line: 52
Consumer<? super Disposable> onSubscribe = mock(Consumer.class);
Action onDispose = mock(Action.class);
Maybe.empty()
.doOnLifecycle(onSubscribe, onDispose)
.test()
.assertResult();
verify(onSubscribe).accept(any());
Reported by PMD.
Line: 52
Consumer<? super Disposable> onSubscribe = mock(Consumer.class);
Action onDispose = mock(Action.class);
Maybe.empty()
.doOnLifecycle(onSubscribe, onDispose)
.test()
.assertResult();
verify(onSubscribe).accept(any());
Reported by PMD.
Line: 57
.test()
.assertResult();
verify(onSubscribe).accept(any());
verify(onDispose, never()).run();
}
@Test
public void error() throws Throwable {
Reported by PMD.