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
        }
示例#2
0
        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
        }
示例#3
0
        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);
        }