public static String[] CreateArgumentsForDelimitedTests(
      InputBuilder inputBuilder,
      DelimBuilder delimBuilder,
      String value,
      OutputBuilder outputBuilder,
      LogBuilder logBuilder)
        {
            var commandLineArgumentsBuilder = new CommandLineArgumentsBuilder();

              if (inputBuilder != null)
              {
            commandLineArgumentsBuilder = commandLineArgumentsBuilder.WithInput(inputBuilder);
              }

              if (delimBuilder != null)
              {
            commandLineArgumentsBuilder = commandLineArgumentsBuilder.WithDelim(delimBuilder);
              }

              commandLineArgumentsBuilder.WithInList(new InListBuilder()
                                              .HasValuesList(value));

              if (outputBuilder != null)
              {
            commandLineArgumentsBuilder = commandLineArgumentsBuilder.WithOutput(outputBuilder);
              }

              if (logBuilder != null)
              {
            commandLineArgumentsBuilder = commandLineArgumentsBuilder.WithLog(logBuilder);
              }

              return commandLineArgumentsBuilder.Build();
        }
 public CommandLineArgumentsBuilder WithOutput(OutputBuilder outputBuilder)
 {
     this.builders.Add(outputBuilder);
       return this;
 }
        public static OutputBuilder CreateOutputBuilder(String matchedOutputFilePath, String unmatchedOutputFilePath)
        {
            var outputBuilder = new OutputBuilder();

              if (matchedOutputFilePath != null)
              {
            outputBuilder = outputBuilder.HasMatchedOutputFile(matchedOutputFilePath);
              }

              if (unmatchedOutputFilePath != null)
              {
            outputBuilder = outputBuilder.HasUnmatchedOutputFile(unmatchedOutputFilePath);
              }

              return outputBuilder;
        }