public void AuditSinkPropagatesExceptions() { var expected = new Exception("Test"); var api = new TestIngestionApi(_ => throw expected); var sink = new SeqAuditSink(api); var thrown = Assert.Throws <AggregateException>(() => sink.Emit(Some.InformationEvent())); Assert.Equal(expected, thrown.GetBaseException()); }
public void AuditSinkDisposesIngestionApi() { var api = new TestIngestionApi(); var sink = new SeqAuditSink(api); Assert.False(api.IsDisposed); sink.Dispose(); Assert.True(api.IsDisposed); }
public async Task AuditSinkEmitsIndividualEvents() { LogEvent evt1 = Some.InformationEvent("first"), evt2 = Some.InformationEvent("second"); var api = new TestIngestionApi(); var sink = new SeqAuditSink(api); sink.Emit(evt1); sink.Emit(evt2); var first = await api.GetPayloadAsync(); Assert.Contains("first", first.Payload); var second = await api.GetPayloadAsync(); Assert.Contains("second", second.Payload); }