예제 #1
0
        public void Should_not_group_events_with_different_log_levels_if_colors_are_enabled()
        {
            var settings = new ConsoleLogSettings {
                ColorsEnabled = true
            };

            var events = new[]
            {
                new LogEventInfo(CreateEvent(LogLevel.Info), settings),
                new LogEventInfo(CreateEvent(LogLevel.Warn), settings)
            };

            batcher.BatchEvents(events, 2).Should().HaveCount(2);
        }
예제 #2
0
        public void Should_only_group_consequent_events()
        {
            var settings = new ConsoleLogSettings {
                ColorsEnabled = true
            };

            var events = new[]
            {
                new LogEventInfo(CreateEvent(LogLevel.Info), settings),
                new LogEventInfo(CreateEvent(LogLevel.Warn), settings),
                new LogEventInfo(CreateEvent(LogLevel.Info), settings)
            };

            batcher.BatchEvents(events, events.Length).Should().HaveCount(3);
        }
예제 #3
0
        public ILog Build(BuildContext context)
        {
            if (!enabled)
            {
                context.LogDisabled("ConsoleLog");
                return(null);
            }

            var settings = new ConsoleLogSettings
            {
                ColorsEnabled = true
            };

            settingsCustomization.Customize(settings);

            var log = synchronous ? (ILog) new SynchronousConsoleLog(settings) : new ConsoleLog(settings);

            return(logCustomization.Customize(log));
        }
예제 #4
0
        public void Should_create_correct_batches()
        {
            var settings = new ConsoleLogSettings {
                ColorsEnabled = true
            };

            var events = new[]
            {
                new LogEventInfo(CreateEvent(LogLevel.Info), settings),
                new LogEventInfo(CreateEvent(LogLevel.Info), settings),
                new LogEventInfo(CreateEvent(LogLevel.Warn), settings),
                new LogEventInfo(CreateEvent(LogLevel.Warn), settings),
                new LogEventInfo(CreateEvent(LogLevel.Error), settings),
                new LogEventInfo(CreateEvent(LogLevel.Error), settings)
            };

            var batches = batcher.BatchEvents(events, events.Length).ToArray();

            batches.Should().HaveCount(3);
            batches[0].Should().Equal(events.Take(2));
            batches[1].Should().Equal(events.Skip(2).Take(2));
            batches[2].Should().Equal(events.Skip(4).Take(2));
        }
예제 #5
0
        public ILog Build(BuildContext context)
        {
            if (!enabled)
            {
                context.LogDisabled("ConsoleLog");
                return(null);
            }

            var settings = new ConsoleLogSettings
            {
                ColorsEnabled = true
            };

            settingsCustomization.Customize(settings);

            var log = synchronous ? (ILog) new SynchronousConsoleLog(settings) : new ConsoleLog(settings);

            if (minLevelProvider != null)
            {
                log = log.WithMinimumLevel(minLevelProvider);
            }

            return(logCustomization.Customize(log));
        }
예제 #6
0
 public void TestSetup()
 {
     settings = new ConsoleLogSettings();
 }
예제 #7
0
 private static LogEventInfo CreateLogEventInfo(ConsoleLogSettings settings = null)
 {
     return(new LogEventInfo(new LogEvent(LogLevel.Info, DateTimeOffset.Now, ""), settings ?? new ConsoleLogSettings {
         ColorsEnabled = true
     }));
 }