== await().untilAsserted(...) with no ignoreExceptionsInstanceOf(...), against a resource that throws for its first 300ms (real failure, test since removed) == $ mvn -B -Dtest=ExceptionPropagatesImmediatelyTest test [ERROR] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.940 s <<< FAILURE! -- in com.ankurm.awaitility.ExceptionPropagatesImmediatelyTest com.ankurm.awaitility.ExceptionPropagatesImmediatelyTest.failsOnTheFirstPollInsteadOfWaiting -- Time elapsed: 0.946 s <<< ERROR! java.lang.IllegalStateException: resource is still warming up at com.ankurm.awaitility.FlakyStartupResource.value(FlakyStartupResource.java:26) at com.ankurm.awaitility.ExceptionPropagatesImmediatelyTest.lambda$failsOnTheFirstPollInsteadOfWaiting$0(ExceptionPropagatesImmediatelyTest.java:28) Note "Errors: 1", not a ConditionTimeoutException after the full atMost(1s) window: the exception from the very first poll propagated straight out instead of being retried.