예제 #1
0
 public void TestConsoleLogger()
 {
     TheLog.AddProvider(new ConsoleProvider(), LogLevel.Info);
     _logger.Info("Info");   // will be shown
     _logger.Trace("Trace"); // will be ignored
     _logger.Error("Error"); // will be shown
 }
예제 #2
0
        public void TestFiltering()
        {
            var inMemoryProvider = new InMemoryDatabaseProvider();

            TheLog.AddProvider(inMemoryProvider, LogLevel.Info);

            TheLog.Info("Test");
            TheLog.Trace("Test2");
            TheLog.Error("Test");

            Assert.AreEqual(2, inMemoryProvider.Messages.Count);
        }
예제 #3
0
        public void TestFramework()
        {
            var inMemoryProvider = new InMemoryDatabaseProvider();

            TheLog.AddProvider(inMemoryProvider, LogLevel.Trace);

            TheLog.Info("Test");
            TheLog.Trace("Test2");
            TheLog.Error("Test");

            Assert.AreEqual(3, inMemoryProvider.Messages.Count);

            inMemoryProvider.ClearLog();
            Assert.AreEqual(0, inMemoryProvider.Messages.Count);

            TheLog.Log(LogLevel.Info, "Message");
            Assert.AreEqual(1, inMemoryProvider.Messages.Count);
        }
예제 #4
0
        public void TestClassLogger()
        {
            var inMemoryProvider = new InMemoryDatabaseProvider();

            TheLog.AddProvider(inMemoryProvider, LogLevel.Info);
            TheLog.FilterThreshold = LogLevel.Info;

            _logger.Info("Test");
            _logger.Trace("Test2");
            _logger.Error("Test");

            Assert.AreEqual(2, inMemoryProvider.Messages.Count);
            Assert.IsTrue(inMemoryProvider.Messages[0].LogMessage.Category.Contains("LoggingTests"));

            inMemoryProvider.ClearLog();
            _logger.Error("Test", "ABC");
            Assert.IsTrue(inMemoryProvider.Messages[0].LogMessage.Category.Contains("LoggingTests"));
            Assert.IsTrue(inMemoryProvider.Messages[0].LogMessage.Category.Contains("ABC"));
        }
예제 #5
0
        public void TestEventProvider()
        {
            var x            = 0;
            var eventHandler = new EventProvider();

            eventHandler.MessageReceived += (a, b) =>
            {
                x++;
                Assert.AreEqual(LogLevel.Info, b.LogMessage.LogLevel);
            };

            TheLog.FilterThreshold = LogLevel.Trace;
            TheLog.AddProvider(eventHandler, LogLevel.Trace);

            Assert.AreEqual(0, x);
            _logger.Info("Yeah");

            Assert.AreEqual(1, x);
        }
예제 #6
0
파일: Program.cs 프로젝트: mbrenn/MAEDN
        private static void Main()
        {
            // Initializes the log
            TheLog.FilterThreshold = LogLevel.Trace;
            TheLog.AddProvider(new ConsoleProvider(), LogLevel.Error);
            TheLog.AddProvider(new FileProvider("maednlog.txt", true));

            for (var n = 0; n < 1000; n++)
            {
                // Runs the game
                var gameLogic = new MaednLogic(new MaednConfiguration
                {
                    NumberOfPlayers = 4
                });
                gameLogic.Run();
            }

            TheLog.Fatal("Done");
            Console.ReadKey();
        }
예제 #7
0
        public void TestLogLevel()
        {
            var database = new InMemoryDatabaseProvider();

            TheLog.FilterThreshold = LogLevel.Trace;
            TheLog.AddProvider(database, LogLevel.Trace);

            TheLog.Trace("Test");
            Assert.AreEqual(LogLevel.Trace, database.Messages[database.Messages.Count - 1].LogMessage.LogLevel);
            TheLog.Debug("Test");
            Assert.AreEqual(LogLevel.Debug, database.Messages[database.Messages.Count - 1].LogMessage.LogLevel);
            TheLog.Info("Test");
            Assert.AreEqual(LogLevel.Info, database.Messages[database.Messages.Count - 1].LogMessage.LogLevel);
            TheLog.Warn("Test");
            Assert.AreEqual(LogLevel.Warn, database.Messages[database.Messages.Count - 1].LogMessage.LogLevel);
            TheLog.Error("Test");
            Assert.AreEqual(LogLevel.Error, database.Messages[database.Messages.Count - 1].LogMessage.LogLevel);
            TheLog.Fatal("Test");
            Assert.AreEqual(LogLevel.Fatal, database.Messages[database.Messages.Count - 1].LogMessage.LogLevel);
        }
예제 #8
0
        public void TestFileLogging()
        {
            using (var fileProvider = new FileProvider("./test.txt", true))
            {
                TheLog.AddProvider(fileProvider, LogLevel.Info);
                _logger.Info("Info");   // will be shown
                _logger.Trace("Trace"); // will be ignored
                _logger.Error("Error"); // will be shown
            }

            var lines = File.ReadAllLines("./test.txt");

            Assert.AreEqual(2, lines.Length);
            Assert.IsTrue(lines[0].Contains("Info"));
            Assert.IsTrue(lines[1].Contains("Error"));
            TheLog.ClearProviders();

            using (var fileProvider = new FileProvider("./test.txt", false))
            {
                TheLog.AddProvider(fileProvider, LogLevel.Info);
                _logger.Info("Info");   // will be shown
                _logger.Trace("Trace"); // will be ignored
                _logger.Error("Error"); // will be shown
            }

            lines = File.ReadAllLines("./test.txt");
            Assert.AreEqual(4, lines.Length);
            TheLog.ClearProviders();

            using (var fileProvider = new FileProvider("./test.txt", true))
            {
                TheLog.AddProvider(fileProvider, LogLevel.Info);
                _logger.Info("Info");   // will be shown
                _logger.Trace("Trace"); // will be ignored
                _logger.Error("Error"); // will be shown
            }

            lines = File.ReadAllLines("./test.txt");
            Assert.AreEqual(2, lines.Length);
            TheLog.ClearProviders();
        }
예제 #9
0
        static void Main(string[] args)
        {
            TheLog.AddProvider(new ConsoleProvider(), LogLevel.Trace);
            TheLog.AddProvider(new FileProvider("test.log", true), LogLevel.Info);
            TheLog.Trace("Not added");
            Thread.Sleep(100);
            TheLog.Debug("This is a debug message");
            Thread.Sleep(80);
            TheLog.Info("We have an info message.");
            Thread.Sleep(80);
            TheLog.Warn("We have a warn");
            Thread.Sleep(80);
            TheLog.Error("Error Occured....");
            Thread.Sleep(80);
            TheLog.Fatal("We have to quit the application due to loss of O².");
            Thread.Sleep(80);
            new WorkingMan().Work();

            System.Console.WriteLine("Press key");
            System.Console.ReadKey();
        }
예제 #10
0
        public void TestClassLoggerLevel()
        {
            TheLog.FilterThreshold = LogLevel.Trace;
            TheLog.AddProvider(InMemoryDatabaseProvider.TheOne, LogLevel.Trace);
            var database = InMemoryDatabaseProvider.TheOne;

            var classLogger = new ClassLogger(typeof(LoggingTests));

            classLogger.Trace("Test");
            Assert.AreEqual(LogLevel.Trace, database.Messages[database.Messages.Count - 1].LogMessage.LogLevel);
            classLogger.Debug("Test");
            Assert.AreEqual(LogLevel.Debug, database.Messages[database.Messages.Count - 1].LogMessage.LogLevel);
            classLogger.Info("Test");
            Assert.AreEqual(LogLevel.Info, database.Messages[database.Messages.Count - 1].LogMessage.LogLevel);
            classLogger.Warn("Test");
            Assert.AreEqual(LogLevel.Warn, database.Messages[database.Messages.Count - 1].LogMessage.LogLevel);
            classLogger.Error("Test");
            Assert.AreEqual(LogLevel.Error, database.Messages[database.Messages.Count - 1].LogMessage.LogLevel);
            classLogger.Fatal("Test");
            Assert.AreEqual(LogLevel.Fatal, database.Messages[database.Messages.Count - 1].LogMessage.LogLevel);

            classLogger.Log(LogLevel.Debug, "Message");
            Assert.AreEqual(LogLevel.Debug, database.Messages[database.Messages.Count - 1].LogMessage.LogLevel);
        }
예제 #11
0
 public void TestDebug()
 {
     TheLog.FilterThreshold = LogLevel.Trace;
     TheLog.AddProvider(new DebugProvider(), LogLevel.Trace);
     _logger.Info("Yeah");
 }