Promise { public abstract void thenNothing();  abstract void thenNothing(); @NonNull abstract ActionHandle then(@NonNull ResultListener<R> listener); @NonNull abstract ActionHandle then(@NonNull ActorThread thread, @NonNull ResultListener<R> listener); @Nullable abstract R get(); @NonNull static Promise<R> wrap(@Nullable R result); @NonNull static Promise<R> wrap(@Nullable R result, @Nullable ResourceCleaner<R> cleaner); @NonNull static TestPromise<R> test(@Nullable R result); @NonNull static Promise<R> wrap(@NonNull MessageSender sender, @NonNull T message);  }
@Test public void verifyThenNothing_true_callThenNothing() { TestPromise<Object> promise = new TestPromise<>(mResult); promise.thenNothing(); Assert.assertTrue(promise.verifyThenNothing()); }
@Test public void verifyThenNothing_false_afterReset() { TestPromise<Object> promise = new TestPromise<>(mResult); promise.thenNothing(); promise.reset(); Assert.assertFalse(promise.verifyThenNothing()); }
@Test public void verifyThenNothing_doesNotIntersect_callThenNothing() { TestPromise<Object> promise = new TestPromise<>(mResult); promise.thenNothing(); Assert.assertFalse(promise.verifyThen()); Assert.assertFalse(promise.verifyThenWithThread()); Assert.assertFalse(promise.verifyForget()); Assert.assertFalse(promise.verifyGet()); }