### Question:
AbstractSubscription implements Subscription { @Override public final void cancel() { if ((getAndBitwiseOrState(CANCELLED) & CANCELLED) == 0) { abort(true); } } protected  AbstractSubscription(Subscriber<? super T> downstream, Executor executor); @Override final void request(long n); @Override final void cancel(); final void signal(boolean force); final void signalError(Throwable error);  }### Answer:
@Test void abort_byCancellation() { var p = subscription(new TestSubscriber<>()); p.cancel(); p.cancel(); p.awaitAbort(); assertEquals(1, p.aborts); assertTrue(p.flowInterrupted); }