public async Task exceptions_thrown_by_router_dont_break_other_messages() { _router.DeliverToLocalProcessors(_sut.Envelopes[0]).Throws(new Exception("router exception")); _sut.Add(); _sut.StartReceiving(_router); _sut.Next(); _router.Received(2).DeliverToLocalProcessors(Arg.Any <EnvelopeToClient>()); _sut.Handled.Should().Be(_sut.Envelopes[1]); }
protected void Callback(object state) { var items = GetMessages(); items.ForEach(async env => { try { await _dispatcher.DeliverToLocalProcessors(env).ConfigureFalse(); MarkAsHandled(env); } catch (Exception ex) { this.LogError(ex); } }); }