Ejemplo n.º 1
0
        public void info_by_object()
        {
            var l1 = new RecordingLogListener {
                IsInfoEnabled = false, IsDebugEnabled = true
            };
            var l2 = new RecordingLogListener {
                IsDebugEnabled = false, IsInfoEnabled = true
            };
            var l3 = new RecordingLogListener {
                IsInfoEnabled = true
            };

            l1.ListensForTypes[typeof(Trace1)] = true;
            l2.ListensForTypes[typeof(Trace1)] = true;
            l3.ListensForTypes[typeof(Trace2)] = true;

            var logger = new Logger(new ILogListener[] { l1, l2, l3 }, NulloModifiers);

            var msg1 = new Trace1();
            var msg2 = new Trace1();

            logger.InfoMessage(msg1);
            logger.InfoMessage(() => msg2);

            l1.InfoMessages.Any().ShouldBeFalse(); // debugging is not enabled
            l2.InfoMessages.ShouldHaveTheSameElementsAs(msg1, msg2);
            l3.InfoMessages.Any().ShouldBeFalse(); // does not listen to Trace1
        }
Ejemplo n.º 2
0
        public void info_by_message_puts_a_time_stamp_on_it_2()
        {
            var l1 = new RecordingLogListener {
                IsInfoEnabled = true
            };
            var l2 = new RecordingLogListener {
                IsInfoEnabled = false, IsDebugEnabled = true
            };
            var l3 = new RecordingLogListener {
                IsInfoEnabled = true
            };

            l1.ListensForTypes[typeof(StringMessage)] = true;
            l2.ListensForTypes[typeof(StringMessage)] = true;
            l3.ListensForTypes[typeof(StringMessage)] = true;

            var systemTime = SystemTime.AtLocalTime(DateTime.Today.AddHours(8));
            var logger     = new Logger(new ILogListener[] { l1, l2, l3 }, new ILogModifier[] { new LogRecordModifier(systemTime) });

            var message = new StringMessage("something");

            logger.InfoMessage(message);

            message.Time.ShouldEqual(systemTime.UtcNow());
        }
Ejemplo n.º 3
0
        public void debugging_by_message_puts_a_time_stamp_on_it_2()
        {
            var l1 = new RecordingLogListener { IsInfoEnabled = true };
            var l2 = new RecordingLogListener { IsInfoEnabled = false, IsDebugEnabled = true };
            var l3 = new RecordingLogListener { IsInfoEnabled = true };

            l1.ListensForTypes[typeof(StringMessage)] = true;
            l2.ListensForTypes[typeof(StringMessage)] = true;
            l3.ListensForTypes[typeof(StringMessage)] = true;

            var systemTime = SystemTime.AtLocalTime(DateTime.Today.AddHours(8));
            var logger = new Logger(systemTime, new ILogListener[] { l1, l2, l3 });

            var message = new StringMessage("something");
            logger.DebugMessage(message);

            message.Time.ShouldEqual(systemTime.UtcNow());
        }
Ejemplo n.º 4
0
        public void debugging_by_object()
        {
            var l1 = new RecordingLogListener { IsInfoEnabled = true };
            var l2 = new RecordingLogListener { IsInfoEnabled = false, IsDebugEnabled = true };
            var l3 = new RecordingLogListener { IsInfoEnabled = true };

            l1.ListensForTypes[typeof(Trace1)] = true;
            l2.ListensForTypes[typeof(Trace1)] = true;
            l3.ListensForTypes[typeof(Trace2)] = true;

            var logger = new Logger(SystemTime.Default(), new ILogListener[] { l1, l2, l3 });

            var msg1 = new Trace1();
            var msg2 = new Trace1();

            logger.DebugMessage(msg1);
            logger.DebugMessage(() => msg2);

            l1.DebugMessages.Any().ShouldBeFalse(); // debugging is not enabled
            l2.DebugMessages.ShouldHaveTheSameElementsAs(msg1, msg2);
            l3.DebugMessages.Any().ShouldBeFalse(); // does not listen to Trace1
        }
Ejemplo n.º 5
0
        public void info_with_mixed_listeners()
        {
            var l1 = new RecordingLogListener {
                IsInfoEnabled = true
            };
            var l2 = new RecordingLogListener {
                IsInfoEnabled = false, IsDebugEnabled = true
            };
            var l3 = new RecordingLogListener {
                IsInfoEnabled = true
            };

            var logger = new Logger(new ILogListener[] { l1, l2, l3 }, NulloModifiers);

            logger.Info("message {0}", 1);
            logger.Info("message {0}", 2);
            logger.Info(() => "message 3");

            l1.InfoStrings.ShouldHaveTheSameElementsAs("message 1", "message 2", "message 3");
            l3.InfoStrings.ShouldHaveTheSameElementsAs("message 1", "message 2", "message 3");

            l2.InfoStrings.Any().ShouldBeFalse();
        }
Ejemplo n.º 6
0
        public void debug_with_mixed_listeners()
        {
            var l1 = new RecordingLogListener { IsDebugEnabled = true };
            var l2 = new RecordingLogListener { IsDebugEnabled = false, IsInfoEnabled = true };
            var l3 = new RecordingLogListener { IsDebugEnabled = true };

            var logger = new Logger(SystemTime.Default(), new ILogListener[] { l1, l2, l3 });

            logger.Debug("message {0}", 1);
            logger.Debug("message {0}", 2);
            logger.Debug(() => "message 3");

            l1.DebugStrings.ShouldHaveTheSameElementsAs("message 1", "message 2", "message 3");
            l3.DebugStrings.ShouldHaveTheSameElementsAs("message 1", "message 2", "message 3");

            l2.DebugStrings.Any().ShouldBeFalse();
        }
Ejemplo n.º 7
0
        public void info_with_mixed_listeners()
        {
            var l1 = new RecordingLogListener { IsInfoEnabled = true };
            var l2 = new RecordingLogListener { IsInfoEnabled = false, IsDebugEnabled = true };
            var l3 = new RecordingLogListener { IsInfoEnabled = true };

            var logger = new Logger(new ILogListener[] { l1, l2, l3 }, NulloModifiers);

            logger.Info("message {0}", 1);
            logger.Info("message {0}", 2);
            logger.Info(() => "message 3");

            l1.InfoStrings.ShouldHaveTheSameElementsAs("message 1", "message 2", "message 3");
            l3.InfoStrings.ShouldHaveTheSameElementsAs("message 1", "message 2", "message 3");

            l2.InfoStrings.Any().ShouldBeFalse();
        }