示例#1
0
        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);
        }
示例#2
0
        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();
        }
示例#3
0
        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);
        }
示例#4
0
				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"));
				}