public void ShouldLogWithMultipleLoggersAtDifferentLevels() { var logger1 = NewLogger(); logger1.Level = LevelToLog.Debug; var logger2 = NewLogger(); logger2.Level = LevelToLog.Info; var logger = new DistributedLogger(new ILogger[] { logger1, logger2 }); // Returns false var shouldLog = logger.ShouldLog(new LogMessage(LevelToLog.Trace, "a")); Assert.IsFalse(shouldLog); // Returns true because logger1 will accept this message shouldLog = logger.ShouldLog(new LogMessage(LevelToLog.Debug, "b")); Assert.IsTrue(shouldLog); // Returns true because both loggers will accept this message shouldLog = logger.ShouldLog(new LogMessage(LevelToLog.Info, "c")); Assert.IsTrue(shouldLog); }
public void LogWithMultipleLoggersAtDifferentLevels() { var logger1 = NewLogger(); logger1.Level = LevelToLog.Debug; var logger2 = NewLogger(); logger2.Level = LevelToLog.Info; var logger = new DistributedLogger(new ILogger[] { logger1, logger2 }); // This message should not be logged by either logger var messageToLog = new LogMessage(LevelToLog.Trace, "a"); logger.Log(messageToLog); // This message should only be logged by loger1 messageToLog = new LogMessage(LevelToLog.Debug, "b"); logger.Log(messageToLog); // This message should be logged by both loggers messageToLog = new LogMessage(LevelToLog.Info, "c"); logger.Log(messageToLog); }
public void LevelWithMultipleLoggersWithDifferentLevels() { var logger1 = NewLogger(); logger1.Level = LevelToLog.Debug; var logger2 = NewLogger(); logger2.Level = LevelToLog.Warn; var logger = new DistributedLogger(new ILogger[] { logger1, logger2 }); // The level is the lowest of the two log levels, in this case LevelToLog.Debug var level = logger.Level; Assert.AreEqual(LevelToLog.Debug, level); }
public static void SetsDistributedLoggers() { // arrange var msbuild = new Derived(); var logger1 = new DistributedLogger( new Logger("C1.dll") { LoggerClass = "C1.Foo", LoggerParameters = "C1Bar;C1Baz" }, new Logger("F1.dll")); var logger2 = new DistributedLogger( new Logger("C2.dll") { LoggerClass = "C2.Foo" }, new Logger("F2.dll") { LoggerParameters = "F2Bar;F2Baz" }); msbuild.DistributedLoggers.Add(logger1); msbuild.DistributedLoggers.Add(logger2); var expectedArgs = "/distributedlogger:C1.Foo,C1.dll;C1Bar;C1Baz*F1.dll " + "/distributedlogger:C2.Foo,C2.dll*F2.dll;F2Bar;F2Baz"; // act var startInfo = msbuild.GetStartInfoPublic(); // assert startInfo.Arguments.Should().Be(expectedArgs); }