The following test case fails:
final AtomicBoolean atomicBoolean = new AtomicBoolean();
assertThat(atomicBoolean.get()).isFalse();
Completable.complete()
.doOnDispose(() -> atomicBoolean.set(true))
.test()
.assertResult()
.dispose();
assertThat(atomicBoolean.get()).isTrue(); // Fails
In my opinion this is a bit misleading and probably should not be the case. Is this working as intended?