public void DoSomethingLogsUsingCorrectFormat() { // Arrange var loggerFactory = MELTBuilder.CreateLoggerFactory(); var logger = loggerFactory.CreateLogger <Sample>(); var sample = new Sample(logger); // Act sample.DoSomething(); // Assert var log = Assert.Single(loggerFactory.LogEntries); // Assert the the log format template Assert.Equal("The answer is {number}", log.Format); }
public void DoSomethingLogsCorrectParameter() { // Arrange var loggerFactory = MELTBuilder.CreateLoggerFactory(); var logger = loggerFactory.CreateLogger <Sample>(); var sample = new Sample(logger); // Act sample.DoSomething(); // Assert var log = Assert.Single(loggerFactory.LogEntries); // Assert specific parameters in the log entry LogValuesAssert.Contains("number", 42, log); }
public void DoSomethingLogsMessage() { // Arrange var loggerFactory = MELTBuilder.CreateLoggerFactory(); var logger = loggerFactory.CreateLogger <Sample>(); var sample = new Sample(logger); // Act sample.DoSomething(); // Assert var log = Assert.Single(loggerFactory.LogEntries); // Assert the message rendered by a default formatter Assert.Equal("The answer is 42", log.Message); }
public void DoMoreLogsFormat_NotCheckingNested() { // Arrange var loggerFactory = MELTBuilder.CreateLoggerFactory(options => options.FilterByTypeName <More>()); var sampleLogger = loggerFactory.CreateLogger <Sample>(); var moreLogger = loggerFactory.CreateLogger <More>(); var more = new More(new Sample(sampleLogger), moreLogger); // Act more.DoMore(); // Assert var log = Assert.Single(loggerFactory.LogEntries); Assert.Equal("More is less.", log.Format); }
public void DoMoreLogsMessage() { // Arrange var loggerFactory = MELTBuilder.CreateLoggerFactory(); var sampleLogger = loggerFactory.CreateLogger <Sample>(); var moreLogger = loggerFactory.CreateLogger <More>(); var more = new More(new Sample(sampleLogger), moreLogger); // Act more.DoMore(); // Assert Assert.Collection(loggerFactory.LogEntries, l => Assert.Equal("More is less.", l.Message), l => Assert.Equal("The answer is 42", l.Message)); }
public void DoExceptionalLogsException() { // Arrange var loggerFactory = MELTBuilder.CreateLoggerFactory(); var logger = loggerFactory.CreateLogger <Sample>(); var sample = new Sample(logger); // Act sample.DoExceptional(); // Assert var log = Assert.Single(loggerFactory.LogEntries); // Assert the message rendered by a default formatter Assert.Equal("There was a problem", log.Message); // Assert specific parameters in the log entry LogValuesAssert.Contains("error", "problem", log); // Assert the exception var exception = Assert.IsType <ArgumentNullException>(log.Exception); Assert.Equal("foo", exception.ParamName); }