public void PopulateFromConfigurationUsingOnlyRequiredElementsAndCheckDefaultValues() { var task = new FakeTask(); const string xml = "<fake />"; NetReflector.Read(xml, task); Assert.AreEqual(FakeTask.defaultExecutable, task.Executable); Assert.AreEqual(string.Empty, task.ConfiguredBaseDirectory); Assert.AreEqual(string.Empty, task.BuildFile); Assert.AreEqual(null, task.Description); }
public void ExecuteRunsFakeWithDefaults() { var workingDir = Path.Combine(DefaultWorkingDirectory, "WorkingDir"); var artefactDir = Path.Combine(DefaultWorkingDirectoryWithSpaces, "ArtifactsDir"); var buildFile = Path.Combine(DefaultWorkingDirectory, "ccnet.fsx"); var result = GenerateResultMock(workingDir, artefactDir); var task = new FakeTask(executor); task.BuildFile = buildFile; SetupExecutorMock(executor, "FAKE.exe", string.Concat(StringUtil.AutoDoubleQuoteString(buildFile), " ", "logfile=", StringUtil.AutoDoubleQuoteString(Path.Combine(artefactDir, string.Format(FakeTask.logFilename, task.LogFileId)))), workingDir, 600000); Expect.Call(result.Status).PropertyBehavior(); mocks.ReplayAll(); result.Status = IntegrationStatus.Unknown; task.Run(result); mocks.VerifyAll(); }
public void PopulateFromReflector() { var task = new FakeTask(); const string xml = @" <fake> <executable>C:\FAKE.exe</executable> <baseDirectory>C:\</baseDirectory> <buildFile>mybuild.fx</buildFile> <description>Test description</description> </fake>"; NetReflector.Read(xml, task); Assert.AreEqual(@"C:\FAKE.exe", task.Executable); Assert.AreEqual(@"C:\", task.ConfiguredBaseDirectory); Assert.AreEqual("mybuild.fx", task.BuildFile); Assert.AreEqual("Test description", task.Description); }
public void ShouldFailIfProcessTimesOut() { ExecutorShouldTimeOut(executor); mocks.ReplayAll(); var task = new FakeTask(executor); var result = IntegrationResultMother.CreateUnknown(); task.Run(result); mocks.VerifyAll(); Assert.That(result.Status, Is.EqualTo(IntegrationStatus.Failure)); Assert.That(result.TaskOutput, Is.StringMatching("Command line '.*' timed out after \\d+ seconds")); }