public void CanReverseDuckTypeILogger() { var logger = new DirectSubmissionLogger("Test logger", null, _sink, _formatter, DirectSubmissionLogLevel.Debug); var proxy = (Microsoft.Extensions.Logging.ILogger)logger.DuckImplement(typeof(Microsoft.Extensions.Logging.ILogger)); proxy.BeginScope(123).Should().NotBeNull(); proxy.IsEnabled(LogLevel.Error).Should().BeTrue(); proxy.Log(LogLevel.Error, "This is my message with a {Parameter}", 123); }
public void ShouldNotEmitLogWhenNotEnabled() { var sink = new TestSink(); var formatter = LogSettingsHelper.GetFormatter(); var logger = new DirectSubmissionLogger( name: "TestLogger", scopeProvider: new NullScopeProvider(), sink: sink, logFormatter: formatter, minimumLogLevel: DirectSubmissionLogLevel.Information); var level = (int)DirectSubmissionLogLevel.Debug; logger.IsEnabled(level).Should().BeFalse(); logger.Log( logLevel: level, eventId: 123, state: "someValue", exception: null, (s, ex) => $"This is {s}"); sink.Events.Should().BeEmpty(); }