public void Usage_against_single_file() { string inputFile = Path.Combine(Environment.CurrentDirectory, "AssemblyInfoExamples", "001", "Input.cs"); ITaskItem inputFileTaskItem = new TaskItem(inputFile); SemanticVersionStampAssemblyInfo semanticVersionStampAssemblyInfo = new SemanticVersionStampAssemblyInfo { BuildEngine = new FakeBuildEngine(), AssemblyInfoFiles = new[] { inputFileTaskItem }, BuildNumber = 12 }; Assert.True(semanticVersionStampAssemblyInfo.Execute()); }
public void Basic_stamping_works() { string inputFile = Path.Combine(Environment.CurrentDirectory, "AssemblyInfoExamples", "001", "Input.cs"); string expectedOutputFile = Path.Combine(Environment.CurrentDirectory, "AssemblyInfoExamples", "001", "ExpectedOutput.cs"); Assert.True(File.Exists(inputFile)); Assert.True(File.Exists(expectedOutputFile)); string tempFile = GetTempCsFile(inputFile); try { File.Copy(inputFile, tempFile, overwrite: true); ITaskItem inputFileTaskItem1 = new TaskItem(tempFile); SemanticVersionStampAssemblyInfo semanticVersionStampAssemblyInfo = new SemanticVersionStampAssemblyInfo { BuildEngine = new FakeBuildEngine(), AssemblyInfoFiles = new[] {inputFileTaskItem1}, BuildNumber = 1 }; semanticVersionStampAssemblyInfo.Execute(); string expectedOutput = File.ReadAllText(expectedOutputFile); string overwrittenFile = File.ReadAllText(tempFile); Assert.Equal(expectedOutput, overwrittenFile); } finally { File.Delete(tempFile); } }
public void Null_task_item_fails() { var fakeBuildEngine = new FakeBuildEngine(); SemanticVersionStampAssemblyInfo semanticVersionStampAssemblyInfo = new SemanticVersionStampAssemblyInfo { BuildEngine = fakeBuildEngine, AssemblyInfoFiles = new ITaskItem[4], BuildNumber = 3 }; Assert.False(semanticVersionStampAssemblyInfo.Execute()); Assert.True(fakeBuildEngine.LoggedError("Null value found in AssemblyInfoFiles")); }
public void Null_AssemblyInfoFiles_fails() { var fakeBuildEngine = new FakeBuildEngine(); SemanticVersionStampAssemblyInfo semanticVersionStampAssemblyInfo = new SemanticVersionStampAssemblyInfo { BuildEngine = fakeBuildEngine, BuildNumber = 3 }; Assert.False(semanticVersionStampAssemblyInfo.Execute()); Assert.True(fakeBuildEngine.LoggedError("AssemblyInfoFiles is required")); }
public void Negative_build_fails() { var fakeBuildEngine = new FakeBuildEngine(); SemanticVersionStampAssemblyInfo semanticVersionStampAssemblyInfo = new SemanticVersionStampAssemblyInfo { BuildEngine = fakeBuildEngine, AssemblyInfoFiles = new ITaskItem[] { new TaskItem("doesn't matter") }, BuildNumber = -3 }; Assert.False(semanticVersionStampAssemblyInfo.Execute()); Assert.True(fakeBuildEngine.LoggedError("BuildNumber must be non-negative")); }