Example #1
0
        public void PluginLoaderLogger_Log_ExceptionMessage_TryingToLog_Ignored()
        {
            // Arrange
            var pluginLoaderLogger = CreatePluginLoaderLogger();

            var nvc = new NameValueCollection {
                { "PluginLoaderLogLevel", "Debug" }
            };

            _MockAppSettings.Setup(m => m.Settings).Returns(nvc);

            PluginLoaderLogLevel level = PluginLoaderLogLevel.Debug;

            var       msg = "msg1";
            Exception e   = new ArgumentOutOfRangeException("count", msg);

            _MockTextWriter.Setup(m => m.Write($"{level}: {msg}"))
            .Throws(e);

            // Act
            pluginLoaderLogger.Write(level, msg);

            // Assert
            _MockRepository.VerifyAll();
        }
Example #2
0
        public void PluginLoaderLogger_WriteLine_MessageAlreadyInQueue_WritesQueuedLineFirst()
        {
            // Arrange
            var pluginLoaderLogger = CreatePluginLoaderLogger();
            var logMessage         = new LogMessage(PluginLoaderLogLevel.Debug, $"prior message.{Environment.NewLine}");

            pluginLoaderLogger._LogMessages.Enqueue(logMessage);

            var nvc = new NameValueCollection {
                { "PluginLoaderLogLevel", "Debug" }
            };

            _MockAppSettings.Setup(m => m.Settings).Returns(nvc);

            var priorMsg = $"Debug: prior message.{Environment.NewLine}";
            PluginLoaderLogLevel level = PluginLoaderLogLevel.Debug;

            _MockTextWriter.Setup(m => m.Write(priorMsg));
            _MockTextWriter.Setup(m => m.Flush());
            string msg = "msg1";

            _MockTextWriter.Setup(m => m.Write($"Debug: {msg}{Environment.NewLine}"));
            _MockTextWriter.Setup(m => m.Flush());

            // Act
            pluginLoaderLogger.WriteLine(level, msg);

            // Assert
            _MockRepository.VerifyAll();
        }
 public void WriteLines(PluginLoaderLogLevel level, params string[] messages)
 {
     if (messages == null || !messages.Any())
     {
         return;
     }
     foreach (var msg in messages)
     {
         WriteLine(level, msg);
     }
 }
Example #4
0
        public void PluginLoaderLogger_Write_NullEmptyMsg_Ignored(string msg)
        {
            // Arrange
            var pluginLoaderLogger     = CreatePluginLoaderLogger();
            PluginLoaderLogLevel level = PluginLoaderLogLevel.Debug;

            // Act
            pluginLoaderLogger.Write(level, msg);

            // Assert
            _MockRepository.VerifyAll();
        }
 public void Write(PluginLoaderLogLevel level, string msg)
 {
     if (string.IsNullOrEmpty(msg))
     {
         return;
     }
     if (level >= LogLevel)
     {
         _LogMessages.Enqueue(new LogMessage(level, msg));
         WriteQueue();
     }
 }
Example #6
0
        public void PluginLoaderLogger_Write_LogLevel_Off()
        {
            // Arrange
            var pluginLoaderLogger     = CreatePluginLoaderLogger();
            PluginLoaderLogLevel level = PluginLoaderLogLevel.Debug;
            var msg = "msg1";
            var nvc = new NameValueCollection {
                { "PluginLoaderLogLevel", "Info" }
            };

            _MockAppSettings.Setup(m => m.Settings).Returns(nvc);

            // Act
            pluginLoaderLogger.Write(level, msg);

            // Assert
            _MockRepository.VerifyAll();
        }
Example #7
0
        public void PluginLoaderLogger_WriteLine_EmptyMsg_WritesNewLine()
        {
            // Arrange
            var pluginLoaderLogger = CreatePluginLoaderLogger();

            var nvc = new NameValueCollection {
                { "PluginLoaderLogLevel", "Debug" }
            };

            _MockAppSettings.Setup(m => m.Settings).Returns(nvc);

            PluginLoaderLogLevel level = PluginLoaderLogLevel.Debug;
            string msg = null;

            _MockTextWriter.Setup(m => m.Write($"Debug: {Environment.NewLine}"));
            _MockTextWriter.Setup(m => m.Flush());

            // Act
            pluginLoaderLogger.WriteLine(level, msg);

            // Assert
            _MockRepository.VerifyAll();
        }
Example #8
0
        public void PluginLoaderLogger_WriteLines_Written()
        {
            // Arrange
            var pluginLoaderLogger = CreatePluginLoaderLogger();

            var nvc = new NameValueCollection {
                { "PluginLoaderLogLevel", "Debug" }
            };

            _MockAppSettings.Setup(m => m.Settings).Returns(nvc);

            PluginLoaderLogLevel level = PluginLoaderLogLevel.Debug;

            string[] messages = new[] { "msg1", "msg2" };
            _MockTextWriter.Setup(m => m.Write($"Debug: msg1{Environment.NewLine}"));
            _MockTextWriter.Setup(m => m.Flush());
            _MockTextWriter.Setup(m => m.Write($"Debug: msg2{Environment.NewLine}"));

            // Act
            pluginLoaderLogger.WriteLines(level, messages);

            // Assert
            _MockRepository.VerifyAll();
        }
 public LogMessage(PluginLoaderLogLevel level, string message)
 {
     Level   = level;
     Message = message;
 }
 public void WriteLine(PluginLoaderLogLevel level, string msg)
 {
     Write(level, msg + Environment.NewLine);
 }