Example #1
0
 protected virtual Process Start(string [] command, Action<ProcessStartInfo> initialize)
 {
     var startInfo = new ProcessStartInfo();
     startInfo.FileName = "git";
     startInfo.SetArguments(command);
     startInfo.CreateNoWindow = true;
     startInfo.UseShellExecute = false;
     startInfo.RedirectStandardError = true;
     initialize(startInfo);
     Trace.WriteLine("Starting process: " + startInfo.FileName + " " + startInfo.Arguments, "git command");
     var process = Process.Start(startInfo);
     process.ErrorDataReceived += StdErrReceived;
     process.BeginErrorReadLine();
     return process;
 }
Example #2
0
 public void ShouldSetProcessStartInfoArguments()
 {
     var info = new ProcessStartInfo();
     info.SetArguments("a", "b", "c");
     Assert.Equal("a b c", info.Arguments);
 }
Example #3
0
 public void ShouldQuoteSpacesInProcessStartInfoArguments()
 {
     var info = new ProcessStartInfo();
     info.SetArguments("a", "b c");
     Assert.Equal("a \"b c\"", info.Arguments);
 }
Example #4
0
 protected virtual GitProcess Start(string [] command, Action<ProcessStartInfo> initialize)
 {
     var startInfo = new ProcessStartInfo();
     startInfo.FileName = "git";
     startInfo.SetArguments(command);
     startInfo.CreateNoWindow = true;
     startInfo.UseShellExecute = false;
     startInfo.EnvironmentVariables["GIT_PAGER"] = "cat";
     RedirectStderr(startInfo);
     initialize(startInfo);
     Trace.WriteLine("Starting process: " + startInfo.FileName + " " + startInfo.Arguments, "git command");
     var process = new GitProcess(Process.Start(startInfo));
     process.ConsumeStandardError();
     return process;
 }