Skip to content

Commit d05fa97

Browse files
committed
Adding tests
1 parent 0ade4b2 commit d05fa97

File tree

1 file changed

+46
-0
lines changed

1 file changed

+46
-0
lines changed
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
using GitVersion.MSBuildTask;
2+
using NUnit.Framework;
3+
4+
namespace GitVersionTask.Tests
5+
{
6+
[TestFixture]
7+
public class FileHelperTests
8+
{
9+
[Test]
10+
[TestCase("C#", "cs")]
11+
[TestCase("F#", "fs")]
12+
[TestCase("VB", "vb")]
13+
[TestCase("XY", null)]
14+
public void GetFileExtensionShouldReturnCorrectExtension(string language, string expectedExtension)
15+
{
16+
if (expectedExtension != null)
17+
{
18+
Assert.That(FileHelper.GetFileExtension(language), Is.EqualTo(expectedExtension));
19+
}
20+
else
21+
{
22+
Assert.That(() => FileHelper.GetFileExtension(language), Throws.ArgumentException.With.Message.EqualTo($"Unknown language detected: '{language}'"));
23+
}
24+
}
25+
26+
[Test]
27+
public void GetFileWriteInfoShouldCreateConstantNamedFileWhenIntermediateOutputPath()
28+
{
29+
var fileInfo = FileHelper.GetFileWriteInfo("MyIntermediateOutputPath", "C#", "MyProject.csproj", "GeneratedVersionInformation");
30+
31+
Assert.That(fileInfo.WorkingDirectory, Is.EqualTo("MyIntermediateOutputPath"));
32+
Assert.That(fileInfo.FileName, Is.EqualTo("GeneratedVersionInformation.g.cs"));
33+
Assert.That(fileInfo.FileExtension, Is.EqualTo("cs"));
34+
}
35+
36+
[Test]
37+
public void GetFileWriteInfoShouldCreateRandomNamedFileWhenNoIntermediateOutputPath()
38+
{
39+
var fileInfo = FileHelper.GetFileWriteInfo(null, "C#", "MyProject.csproj", "GeneratedVersionInformation");
40+
41+
Assert.That(fileInfo.WorkingDirectory, Is.EqualTo(FileHelper.TempPath));
42+
Assert.That(fileInfo.FileName, Does.StartWith("GeneratedVersionInformation_MyProject_").And.EndsWith(".g.cs"));
43+
Assert.That(fileInfo.FileExtension, Is.EqualTo("cs"));
44+
}
45+
}
46+
}

0 commit comments

Comments
 (0)