コード例 #1
0
 public void Setup()
 {
     _runner     = new ProcessRunnerSpy();
     _filesystem = new MockFileSystem();
     _filesystem.AddFile("myProgram.exe", new MockFileData(string.Empty));
     _executablePath = "myProgram.exe";
     _sut            = new RunProcessTask(_runner, _filesystem)
     {
         ExecutablePath = _executablePath
     };
 }
コード例 #2
0
        public void GivenExecutableThatExitsWithCodeOne__WhenCallingRun__ShouldThrowProcessFailedException()
        {
            ProcessRunnerStub runner = new ProcessRunnerStub {
                ExitCode = 1
            };
            RunProcessTask sut = new RunProcessTask(runner, _filesystem)
            {
                ExecutablePath = _executablePath
            };

            sut.Run();
        }
コード例 #3
0
        public void GivenFailingProcessButAllowedToFail__WhenCallingRun__ShouldNotThrowProcessFailedException()
        {
            ProcessRunnerStub runner = new ProcessRunnerStub {
                ExitCode = 1
            };
            RunProcessTask sut = new RunProcessTask(runner, _filesystem)
            {
                ExecutablePath = _executablePath, AllowedToFail = true
            };

            sut.Run();
        }
コード例 #4
0
        GivenPathToExecutable__WhenCallingRun__ShouldCallStartFirst_Then_BlockUntilFinished_Then_CheckExitCode()
        {
            CallOrderVerifyingProcessRunnerMock runner = new CallOrderVerifyingProcessRunnerMock();

            const string   executablePath = "myProgram.exe";
            RunProcessTask sut            = new RunProcessTask(runner, _filesystem)
            {
                ExecutablePath = executablePath
            };

            sut.Run();

            runner.Verify();
        }
コード例 #5
0
        public void WhenBuildingRunProcessTaskWithExePathAndArguments__ShouldReturnConfiguredTask()
        {
            RunProcessTaskBuilder sut = new RunProcessTaskBuilder(new MockFileSystem());

            RunProcessTask task = (RunProcessTask)sut
                                  .With("Id", TaskId)
                                  .With("Name", TaskName)
                                  .With("ExecutablePath", PathToExe)
                                  .With("Arguments", Args)
                                  .With("WorkingDirectory", WorkingDirectory)
                                  .With("AllowedToFail", AllowedToFail)
                                  .Build();

            Assert.AreEqual(TaskId, task.Id);
            Assert.AreEqual(TaskName, task.Name);
            Assert.AreEqual(PathToExe, task.ExecutablePath);
            Assert.AreEqual(Args, task.Arguments);
            Assert.AreEqual(WorkingDirectory, task.WorkingDirectory);
            Assert.AreEqual(AllowedToFail, task.AllowedToFail);
        }
コード例 #6
0
 public RunProcessTaskBuilder(IFileSystem fileSystem = null)
 {
     _runProcessTask = new RunProcessTask(new ProcessRunner(), fileSystem ?? new FileSystem());
 }