Example #1
0
        public void Log_messages_with_unknown_Category_throws_ArgumentOutOfRangeException()
        {
            LogEvent logEvent = null;
            var      logger   = DelegatingSink.GetLogger(le => logEvent = le);

            const string message = "This is an Exception message";

            var target = new SerilogLoggerFacade(logger);

            Assert.Throws <ArgumentOutOfRangeException>(() => target.Log(message, (Category)(-1), Priority.None));
            Assert.Null(logEvent);
        }
Example #2
0
        private static void TestCategoryToLogEventLevelMap(Category category, LogEventLevel expectedLogEventLevel)
        {
            LogEvent logEvent = null;
            var      logger   = DelegatingSink.GetLogger(le => logEvent = le);

            var message = $"This is a {category} message";

            var target = new SerilogLoggerFacade(logger);

            target.Log(message, category, Priority.None);

            Assert.Equal(expectedLogEventLevel, logEvent.Level);
            Assert.Equal(message, logEvent.MessageTemplate.Text);
        }
Example #3
0
        public void Serilog_Log_Logger_is_used_by_default_if_no_ILogger_injected_via_constructor()
        {
            LogEvent logEvent = null;

            Log.Logger = DelegatingSink.GetLogger(le => logEvent = le);

            const string message = "This is a Debug message";

            var target = new SerilogLoggerFacade();

            target.Log(message, Category.Debug, Priority.None);

            Assert.Equal(LogEventLevel.Debug, logEvent.Level);
        }
Example #4
0
        public void Log_messages_have_SourceContext_set_to_SerilogLoggerFacade_FullName()
        {
            LogEvent logEvent = null;
            var      logger   = DelegatingSink.GetLogger(le => logEvent = le);

            var target = new SerilogLoggerFacade(logger);

            target.Log(string.Empty, Category.Exception, Priority.None);

            Assert.True(logEvent.Properties.ContainsKey("SourceContext"));

            var sourceContext = logEvent.Properties["SourceContext"].LiteralValue();

            Assert.Equal(typeof(SerilogLoggerFacade).FullName, sourceContext);
        }
Example #5
0
        private static void TestPriorityToPropertyMap(Priority priority, string propertyName, string expectedValue)
        {
            LogEvent logEvent = null;
            var      logger   = DelegatingSink.GetLogger(le => logEvent = le);

            var target = new SerilogLoggerFacade(logger);

            target.Log(string.Empty, Category.Exception, priority);

            Assert.True(logEvent.Properties.ContainsKey(propertyName));

            var priorityValue = logEvent.Properties[propertyName].LiteralValue();

            Assert.Equal(expectedValue, priorityValue);
        }
Example #6
0
        public void Log_messages_are_forwarded_to_another_Prism_ILoggerFacade_if_one_is_provided()
        {
            var logger       = new LoggerConfiguration().CreateLogger();
            var loggerFacade = new MockLoggerFacade();

            const string   message  = "This is an Exception message of High priority";
            const Category category = Category.Exception;
            const Priority priority = Priority.High;

            var target = new SerilogLoggerFacade(logger, loggerFacade);

            target.Log(message, category, priority);

            Assert.Equal(1, loggerFacade.Messages.Count);
            Assert.Equal(message, loggerFacade.Messages[0].Item1);
            Assert.Equal(category, loggerFacade.Messages[0].Item2);
            Assert.Equal(priority, loggerFacade.Messages[0].Item3);
        }