public async Task CircuitBreaker_must_close_again_after_service_initialization() { breaker.Tell(ServiceEvent.Failed(LogId, 1, TestLogFailureException)); try { await breaker.Ask("a", Timeout); } catch (AggregateException e) when(e.Flatten().InnerException is EventLogUnavailableException) { // as expected } breaker.Tell(ServiceEvent.Initialized(LogId)); (await breaker.Ask("a", Timeout)).Should().Be("re-a"); }