public static void LogProcessor___Valid___Works() { // Arrange var configuration = new InMemoryLogConfig(LogInclusionKindToOriginsMaps.AnythingFromAnywhere); var processor = new InMemoryLogWriter(configuration); var infoCanary = A.Dummy <string>(); var errorCanary = new ArgumentException(A.Dummy <string>()); // Act processor.Log(infoCanary.ToLogEntry().ToLogItem(LogItemOrigin.ItsLogEntryPosted)); processor.Log(errorCanary.ToLogEntry().ToLogItem(LogItemOrigin.ItsLogEntryPosted)); // Assert processor.LoggedItems.Count.Should().Be(2); processor.LoggedItems.Single(_ => _.Context.Origin == LogItemOrigin.ItsLogEntryPosted.ToString() && _.Kind == LogItemKind.String).Subject.Summary.Should().Contain(infoCanary); processor.LoggedItems.Single(_ => _.Context.Origin == LogItemOrigin.ItsLogEntryPosted.ToString() && _.Kind == LogItemKind.Exception).Subject.Summary.Should().Contain(errorCanary.Message); }
public static void LogProcessor___Default_max_elements___Honored() { // Arrange var configuration = new InMemoryLogConfig(LogInclusionKindToOriginsMaps.AnythingFromAnywhere); var processor = new InMemoryLogWriter(configuration); var logCallCount = 1000; // Act Enumerable.Range(0, logCallCount).ToList().ForEach(_ => processor.Log("Hello".ToLogEntry().ToLogItem(LogItemOrigin.ItsLogEntryPosted))); // Assert processor.LoggedItems.Count.Should().Be(logCallCount); }
public static void LogProcessor___Purge___Works() { // Arrange var configuration = new InMemoryLogConfig(LogInclusionKindToOriginsMaps.AnythingFromAnywhere); var processor = new InMemoryLogWriter(configuration); var logCallCount = 10; Enumerable.Range(0, logCallCount).ToList().ForEach(_ => processor.Log("Hello".ToLogEntry().ToLogItem(LogItemOrigin.ItsLogEntryPosted))); // Act processor.PurgeAllLoggedItems(); // Assert processor.LoggedItems.Count.Should().Be(0); }