The implementation relied on a specific sequencing of events, which in case of slower hardware or random events would occasionally fail the assertions. This change introduces firm ordering and fixes an incorrect assertion, which assumed the Mono terminates without error, while in fact the RejectedExecutionException is propagated to the AssertSubscriber. In effect, the tests are no longer flaky.
The implementation relied on a specific sequencing of events, which in case of slower hardware or random events would occasionally fail the assertions. This change introduces firm ordering and fixes an incorrect assertion, which assumed the
Mono
terminates without error, while in fact theRejectedExecutionException
is propagated to theAssertSubscriber
. In effect, the tests are no longer flaky.