public void MessageTests() { var logger = new MockLogger(); logger.Reset(); MessageTestExtensions.M0(logger); Assert.Null(logger.LastException); Assert.Equal(string.Empty, logger.LastFormattedString); Assert.Equal(LogLevel.Trace, logger.LastLogLevel); Assert.Equal(1, logger.CallCount); logger.Reset(); MessageTestExtensions.M1(logger); Assert.Null(logger.LastException); Assert.Equal(string.Empty, logger.LastFormattedString); Assert.Equal(LogLevel.Debug, logger.LastLogLevel); Assert.Equal(1, logger.CallCount); #if false logger.Reset(); MessageTestExtensions.M2(logger, "Foo", "Bar"); Assert.Null(logger.LastException); Assert.Equal("{\"p1\":\"Foo\",\"p2\":\"Bar\"}", logger.LastFormattedString); Assert.Equal(LogLevel.Trace, logger.LastLogLevel); Assert.Equal(1, logger.CallCount); logger.Reset(); MessageTestExtensions.M3(logger, "Foo", 42); Assert.Null(logger.LastException); Assert.Equal("{\"p1\":\"Foo\",\"p2\":\"42\"}", logger.LastFormattedString); Assert.Equal(LogLevel.Debug, logger.LastLogLevel); Assert.Equal(1, logger.CallCount); #endif }
public void MessageTests_SuppressWarning_WarnAsError_NoError() { // Diagnostics produced by source generators do not respect the /warnAsError or /noWarn compiler flags. // These are handled fine by the logger generator and generate warnings. Unfortunately, the warning suppression is // not being observed by the C# compiler at the moment, so having these here causes build warnings. #if false var logger = new MockLogger(); logger.Reset(); MessageTestExtensions.M2(logger, "Foo", "Bar"); Assert.Null(logger.LastException); Assert.Equal(string.Empty, logger.LastFormattedString); AssertLastState(logger, new KeyValuePair <string, object?>("p1", "Foo"), new KeyValuePair <string, object?>("p2", "Bar"), new KeyValuePair <string, object?>("{OriginalFormat}", string.Empty)); Assert.Equal(LogLevel.Trace, logger.LastLogLevel); Assert.Equal(1, logger.CallCount); logger.Reset(); MessageTestExtensions.M3(logger, "Foo", 42); Assert.Null(logger.LastException); Assert.Equal(string.Empty, logger.LastFormattedString); AssertLastState(logger, new KeyValuePair <string, object?>("p1", "Foo"), new KeyValuePair <string, object?>("p2", 42), new KeyValuePair <string, object?>("{OriginalFormat}", string.Empty)); Assert.Equal(LogLevel.Debug, logger.LastLogLevel); Assert.Equal(1, logger.CallCount); #endif }
public void MessageTests() { var logger = new MockLogger(); logger.Reset(); MessageTestExtensions.M0(logger); Assert.Null(logger.LastException); Assert.Equal(string.Empty, logger.LastFormattedString); Assert.Equal(LogLevel.Trace, logger.LastLogLevel); Assert.Equal(1, logger.CallCount); logger.Reset(); MessageTestExtensions.M1(logger); Assert.Null(logger.LastException); Assert.Equal(string.Empty, logger.LastFormattedString); Assert.Equal(LogLevel.Debug, logger.LastLogLevel); Assert.Equal(1, logger.CallCount); logger.Reset(); MessageTestExtensions.M5(logger, LogLevel.Trace); Assert.Null(logger.LastException); Assert.Equal(string.Empty, logger.LastFormattedString); Assert.Equal(LogLevel.Trace, logger.LastLogLevel); Assert.Equal(-1, logger.LastEventId.Id); Assert.Equal(1, logger.CallCount); logger.Reset(); MessageTestExtensions.M6(logger, LogLevel.Trace); Assert.Null(logger.LastException); Assert.Equal(string.Empty, logger.LastFormattedString); Assert.Equal(LogLevel.Trace, logger.LastLogLevel); Assert.Equal(6, logger.LastEventId.Id); Assert.Equal(1, logger.CallCount); }