static string GetLoggerArgument(int index, MSBuildFileLogger logger, ICakeEnvironment env) { if (index >= 10) { throw new InvalidOperationException("Too Many FileLoggers"); } var counter = index == 0 ? string.Empty : index.ToString(); var argument = string.Format("/fl{0}", counter); var parameters = logger.GetParameters(env); if (!string.IsNullOrWhiteSpace(parameters)) { argument = string.Format("{0} /flp{1}:{2}", argument, counter, parameters); } return(argument); }
public void Should_Add_Logger() { // Given var settings = new MSBuildSettings(); var fileLogger = new MSBuildFileLogger(); var fileLogger2 = new MSBuildFileLogger { LogFile = "A" }; // When settings.AddFileLogger(fileLogger); settings.AddFileLogger(fileLogger2); // Then var loggers = settings.FileLoggers.ToArray(); Assert.Equal(2, loggers.Length); Assert.Equal(fileLogger, loggers[0]); Assert.Equal(fileLogger2, loggers[1]); Assert.Equal("A", loggers[1].LogFile.FullPath); }