diff --git a/.gitignore b/.gitignore index c0722ac4b8..178add35c0 100644 --- a/.gitignore +++ b/.gitignore @@ -87,10 +87,11 @@ GitVersion.sln.ide/ Packages/ build/ site/ +/TestResult.xml ################ # Project Rider ################ .idea -*.sln.iml +*.sln.iml \ No newline at end of file diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000000..161938fd53 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,10 @@ +language: csharp +solution: src/GitVersion.sln +sudo: true +install: + - sudo nuget update -self + - nuget restore src/GitVersion.sln + - nuget install NUnit.Runners -Version 3.2.1 -OutputDirectory ./src/packages +script: + - xbuild "./src/GitVersion.sln" /property:Configuration="Debug" /verbosity:detailed + - mono --debug --runtime=v4.0.30319 ./src/packages/NUnit.ConsoleRunner.3.2.1/tools/nunit3-console.exe ./src/GitVersionTask.Tests/bin/Debug/GitVersionTask.Tests.dll ./src/GitVersionCore.Tests/bin/Debug/GitVersionCore.Tests.dll ./src/GitVersionTask.Tests/bin/Debug/GitVersionTask.Tests.dll ./src/GitVersionExe.Tests/bin/Debug/GitVersionExe.Tests.dll diff --git a/appveyor.yml b/appveyor.yml index 3a12c0b69e..46018c2de1 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -30,7 +30,7 @@ build_script: - cmd: appveyor PushArtifact "build\GitVersionTfsTaskBuild\gittools.gitversion-%GitVersion_SemVer%.vsix" test_script: - - nunit-console "src\GitVersionTask.Tests\bin\%CONFIGURATION%\GitVersionTask.Tests.dll" "src\GitVersionExe.Tests\bin\%CONFIGURATION%\GitVersionExe.Tests.dll" "src\GitVersionCore.Tests\bin\%CONFIGURATION%\GitVersionCore.Tests.dll" /noshadow + - nunit3-console "src\GitVersionTask.Tests\bin\%CONFIGURATION%\GitVersionTask.Tests.dll" "src\GitVersionExe.Tests\bin\%CONFIGURATION%\GitVersionExe.Tests.dll" "src\GitVersionCore.Tests\bin\%CONFIGURATION%\GitVersionCore.Tests.dll" cache: - src\packages -> **\packages.config # preserve "packages" directory in the root of build folder but will reset it if packages.config is modified diff --git a/src/GitVersion.sln b/src/GitVersion.sln index 40edb86d9b..21be8e6c7c 100644 --- a/src/GitVersion.sln +++ b/src/GitVersion.sln @@ -13,6 +13,7 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GitVersionCore.Tests", "Git EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{3EFFC5D6-88D0-49D9-BB53-E1B7EB49DD45}" ProjectSection(SolutionItems) = preProject + ..\.travis.yml = ..\.travis.yml ..\appveyor.yml = ..\appveyor.yml ..\BREAKING CHANGES.md = ..\BREAKING CHANGES.md ..\Build.cmd = ..\Build.cmd diff --git a/src/GitVersionCore.Tests/GitVersionCore.Tests.csproj b/src/GitVersionCore.Tests/GitVersionCore.Tests.csproj index 914aa94967..b96a38ec6f 100644 --- a/src/GitVersionCore.Tests/GitVersionCore.Tests.csproj +++ b/src/GitVersionCore.Tests/GitVersionCore.Tests.csproj @@ -1,6 +1,6 @@  - + Debug @@ -50,8 +50,8 @@ ..\packages\GitTools.Testing.1.1.0\lib\net4\GitTools.Testing.dll True - - ..\packages\LibGit2Sharp.0.22.0\lib\net40\LibGit2Sharp.dll + + ..\packages\LibGit2Sharp.0.23.0-pre20150419160303\lib\net40\LibGit2Sharp.dll True @@ -66,9 +66,9 @@ ..\packages\NUnitTestAdapter.2.0.0\lib\nunit.core.interfaces.dll True - - False - ..\packages\NUnit.2.6.4\lib\nunit.framework.dll + + ..\packages\NUnit.3.2.1\lib\net45\nunit.framework.dll + True ..\packages\NUnitTestAdapter.2.0.0\lib\nunit.util.dll @@ -193,8 +193,8 @@ This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - + \ No newline at end of file diff --git a/src/GitVersionCore.Tests/Mocks/MockBranch.cs b/src/GitVersionCore.Tests/Mocks/MockBranch.cs index 174da040ea..6dd8a39eed 100644 --- a/src/GitVersionCore.Tests/Mocks/MockBranch.cs +++ b/src/GitVersionCore.Tests/Mocks/MockBranch.cs @@ -1,3 +1,4 @@ +using System; using System.Collections; using System.Collections.Generic; using System.Linq; @@ -5,14 +6,14 @@ public class MockBranch : Branch, ICollection { - public MockBranch(string name) + public MockBranch(string friendlyName) { - this.name = name; - canonicalName = name; + this.friendlyName = friendlyName; + this.canonicalName = friendlyName; } - public MockBranch(string name, string canonicalName) + public MockBranch(string friendlyName, string canonicalName) { - this.name = name; + this.friendlyName = friendlyName; this.canonicalName = canonicalName; } @@ -21,9 +22,9 @@ public MockBranch() } MockCommitLog commits = new MockCommitLog(); - string name; + string friendlyName; string canonicalName; - public override string FriendlyName { get { return name; } } + public override string FriendlyName { get { return friendlyName; } } public override ICommitLog Commits { get { return commits; } } public override Commit Tip { get { return commits.First(); } } public override bool IsTracking { get { return true; } } @@ -35,7 +36,7 @@ public override string CanonicalName public override int GetHashCode() { - return name.GetHashCode(); + return this.friendlyName.GetHashCode(); } public override bool Equals(object obj) diff --git a/src/GitVersionCore.Tests/Mocks/MockBranchCollection.cs b/src/GitVersionCore.Tests/Mocks/MockBranchCollection.cs index 540166aeca..d7fdf41441 100644 --- a/src/GitVersionCore.Tests/Mocks/MockBranchCollection.cs +++ b/src/GitVersionCore.Tests/Mocks/MockBranchCollection.cs @@ -11,9 +11,9 @@ public override IEnumerator GetEnumerator() return Branches.GetEnumerator(); } - public override Branch this[string name] + public override Branch this[string friendlyName] { - get { return Branches.FirstOrDefault(x => x.FriendlyName == name); } + get { return Branches.FirstOrDefault(x => x.FriendlyName == friendlyName); } } public void Add(Branch item) diff --git a/src/GitVersionCore.Tests/Mocks/MockRepository.cs b/src/GitVersionCore.Tests/Mocks/MockRepository.cs index efee409966..b10691906c 100644 --- a/src/GitVersionCore.Tests/Mocks/MockRepository.cs +++ b/src/GitVersionCore.Tests/Mocks/MockRepository.cs @@ -97,8 +97,6 @@ public void Reset(ResetMode resetMode, Commit commit, CheckoutOptions options) throw new NotImplementedException(); } - public Dictionary LookupResults { get; set; } - public Commit Commit(string message, Signature author, Signature committer, bool amendPreviousCommit = false) { throw new NotImplementedException(); diff --git a/src/GitVersionCore.Tests/Mocks/MockTag.cs b/src/GitVersionCore.Tests/Mocks/MockTag.cs index a4816ff377..cb4065e38e 100644 --- a/src/GitVersionCore.Tests/Mocks/MockTag.cs +++ b/src/GitVersionCore.Tests/Mocks/MockTag.cs @@ -1,3 +1,5 @@ +using System; + using LibGit2Sharp; public class MockTag : Tag diff --git a/src/GitVersionCore.Tests/app.config b/src/GitVersionCore.Tests/app.config index b1d2a5a3c8..c24557fb8a 100644 --- a/src/GitVersionCore.Tests/app.config +++ b/src/GitVersionCore.Tests/app.config @@ -6,6 +6,10 @@ + + + + \ No newline at end of file diff --git a/src/GitVersionCore.Tests/packages.config b/src/GitVersionCore.Tests/packages.config index 716e1572f8..64850ea5be 100644 --- a/src/GitVersionCore.Tests/packages.config +++ b/src/GitVersionCore.Tests/packages.config @@ -4,11 +4,11 @@ - - + + - + diff --git a/src/GitVersionCore/GitVersionCore.csproj b/src/GitVersionCore/GitVersionCore.csproj index 0a8e7ddd8e..f2792ac12d 100644 --- a/src/GitVersionCore/GitVersionCore.csproj +++ b/src/GitVersionCore/GitVersionCore.csproj @@ -1,6 +1,6 @@  - + Debug @@ -46,8 +46,8 @@ ..\packages\JetBrainsAnnotations.Fody.1.0.4.0\Lib\JetBrains.Annotations.dll False - - ..\packages\LibGit2Sharp.0.22.0\lib\net40\LibGit2Sharp.dll + + ..\packages\LibGit2Sharp.0.23.0-pre20150419160303\lib\net40\LibGit2Sharp.dll True @@ -171,6 +171,7 @@ + Designer @@ -183,8 +184,8 @@ This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - + @@ -198,7 +199,7 @@ - + diff --git a/src/GitVersionCore/app.config b/src/GitVersionCore/app.config new file mode 100644 index 0000000000..b57ccf84c3 --- /dev/null +++ b/src/GitVersionCore/app.config @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/src/GitVersionCore/packages.config b/src/GitVersionCore/packages.config index c4122be15d..aafec85572 100644 --- a/src/GitVersionCore/packages.config +++ b/src/GitVersionCore/packages.config @@ -4,8 +4,8 @@ - - + + diff --git a/src/GitVersionExe.Tests/GitVersionExe.Tests.csproj b/src/GitVersionExe.Tests/GitVersionExe.Tests.csproj index 30bbfcd843..bbfdee8cea 100644 --- a/src/GitVersionExe.Tests/GitVersionExe.Tests.csproj +++ b/src/GitVersionExe.Tests/GitVersionExe.Tests.csproj @@ -1,6 +1,6 @@  - + Debug @@ -43,8 +43,8 @@ ..\packages\GitTools.Testing.1.1.0\lib\net4\GitTools.Testing.dll True - - ..\packages\LibGit2Sharp.0.22.0\lib\net40\LibGit2Sharp.dll + + ..\packages\LibGit2Sharp.0.23.0-pre20150419160303\lib\net40\LibGit2Sharp.dll True @@ -59,9 +59,9 @@ ..\packages\NUnitTestAdapter.2.0.0\lib\nunit.core.interfaces.dll True - - False - ..\packages\NUnit.2.6.4\lib\nunit.framework.dll + + ..\packages\NUnit.3.2.1\lib\net45\nunit.framework.dll + True ..\packages\NUnitTestAdapter.2.0.0\lib\nunit.util.dll @@ -129,6 +129,6 @@ This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - + \ No newline at end of file diff --git a/src/GitVersionExe.Tests/app.config b/src/GitVersionExe.Tests/app.config index b1d2a5a3c8..c24557fb8a 100644 --- a/src/GitVersionExe.Tests/app.config +++ b/src/GitVersionExe.Tests/app.config @@ -6,6 +6,10 @@ + + + + \ No newline at end of file diff --git a/src/GitVersionExe.Tests/packages.config b/src/GitVersionExe.Tests/packages.config index e2133b0c62..996730901b 100644 --- a/src/GitVersionExe.Tests/packages.config +++ b/src/GitVersionExe.Tests/packages.config @@ -2,10 +2,10 @@ - - + + - + \ No newline at end of file diff --git a/src/GitVersionExe/GitVersionExe.csproj b/src/GitVersionExe/GitVersionExe.csproj index a7ca56fc59..c235a3c665 100644 --- a/src/GitVersionExe/GitVersionExe.csproj +++ b/src/GitVersionExe/GitVersionExe.csproj @@ -1,6 +1,6 @@  - + Debug AnyCPU @@ -48,8 +48,8 @@ ..\packages\JetBrainsAnnotations.Fody.1.0.4.0\Lib\JetBrains.Annotations.dll False - - ..\packages\LibGit2Sharp.0.22.0\lib\net40\LibGit2Sharp.dll + + ..\packages\LibGit2Sharp.0.23.0-pre20150419160303\lib\net40\LibGit2Sharp.dll True @@ -72,6 +72,7 @@ + @@ -133,7 +134,7 @@ ]]> - + mono @@ -211,8 +212,8 @@ This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - + diff --git a/src/GitVersionExe/app.config b/src/GitVersionExe/app.config new file mode 100644 index 0000000000..b57ccf84c3 --- /dev/null +++ b/src/GitVersionExe/app.config @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/src/GitVersionExe/packages.config b/src/GitVersionExe/packages.config index 3128a80399..9700f9c3f0 100644 --- a/src/GitVersionExe/packages.config +++ b/src/GitVersionExe/packages.config @@ -5,8 +5,8 @@ - - + + \ No newline at end of file diff --git a/src/GitVersionTask.Tests/AssemblyInfoBuilderTests.cs b/src/GitVersionTask.Tests/AssemblyInfoBuilderTests.cs index b8a8ec7a43..f82f335a47 100644 --- a/src/GitVersionTask.Tests/AssemblyInfoBuilderTests.cs +++ b/src/GitVersionTask.Tests/AssemblyInfoBuilderTests.cs @@ -54,7 +54,7 @@ public Compilation Compile(string assemblyInfoText) public string ApprovedSubFolder { get { return Path.Combine("Approved", "VisualBasic"); } } } - private readonly ICompiler[] compilers = new ICompiler[] + private static readonly ICompiler[] compilers = new ICompiler[] { new CSharpCompiler(), new VisualBasicCompiler() @@ -148,10 +148,10 @@ public void VerifyAssemblyVersion_MajorMinorPatchTag([ValueSource("compilers")]I [Test] [MethodImpl(MethodImplOptions.NoInlining)] - [ExpectedException(typeof(WarningException))] public void VerifyAssemblyVersion_Major_InvalidInformationalValue([ValueSource("compilers")]ICompiler compiler) { - VerifyAssemblyVersion(compiler, AssemblyVersioningScheme.Major, "{ThisVariableDoesntExist}"); + var exception = Assert.Throws(() => VerifyAssemblyVersion(compiler, AssemblyVersioningScheme.Major, "{ThisVariableDoesntExist}")); + Assert.That(exception.Message, Does.Contain("ThisVariableDoesntExist")); } [Test] diff --git a/src/GitVersionTask.Tests/GitVersionTask.Tests.csproj b/src/GitVersionTask.Tests/GitVersionTask.Tests.csproj index 8bddac280a..0bf7c40f18 100644 --- a/src/GitVersionTask.Tests/GitVersionTask.Tests.csproj +++ b/src/GitVersionTask.Tests/GitVersionTask.Tests.csproj @@ -1,6 +1,6 @@  - + Debug AnyCPU @@ -59,8 +59,8 @@ ..\packages\GitTools.Core.1.0.0\lib\net45\GitTools.Core.dll True - - ..\packages\LibGit2Sharp.0.22.0\lib\net40\LibGit2Sharp.dll + + ..\packages\LibGit2Sharp.0.23.0-pre20150419160303\lib\net40\LibGit2Sharp.dll True @@ -94,9 +94,9 @@ ..\packages\NUnitTestAdapter.2.0.0\lib\nunit.core.interfaces.dll True - - False - ..\packages\NUnit.2.6.4\lib\nunit.framework.dll + + ..\packages\NUnit.3.2.1\lib\net45\nunit.framework.dll + True ..\packages\NUnitTestAdapter.2.0.0\lib\nunit.util.dll @@ -189,8 +189,8 @@ This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - + \ No newline at end of file diff --git a/src/GitVersionTask.Tests/app.config b/src/GitVersionTask.Tests/app.config index 22651277da..43526a820e 100644 --- a/src/GitVersionTask.Tests/app.config +++ b/src/GitVersionTask.Tests/app.config @@ -14,6 +14,10 @@ + + + + \ No newline at end of file diff --git a/src/GitVersionTask.Tests/packages.config b/src/GitVersionTask.Tests/packages.config index 21b6dd0081..80f0c9d374 100644 --- a/src/GitVersionTask.Tests/packages.config +++ b/src/GitVersionTask.Tests/packages.config @@ -5,8 +5,8 @@ - - + + @@ -14,7 +14,7 @@ - + diff --git a/src/GitVersionTask/GitVersionTask.csproj b/src/GitVersionTask/GitVersionTask.csproj index 4f9b0dbac1..59eb9a61ef 100644 --- a/src/GitVersionTask/GitVersionTask.csproj +++ b/src/GitVersionTask/GitVersionTask.csproj @@ -1,6 +1,6 @@  - + Debug @@ -42,8 +42,8 @@ ..\packages\GitTools.Core.1.0.0\lib\net4\GitTools.Core.dll True - - ..\packages\LibGit2Sharp.0.22.0\lib\net40\LibGit2Sharp.dll + + ..\packages\LibGit2Sharp.0.23.0-pre20150419160303\lib\net40\LibGit2Sharp.dll True @@ -77,6 +77,7 @@ + Designer @@ -105,7 +106,7 @@ - + mono @@ -143,8 +144,8 @@ This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - + diff --git a/src/GitVersionTask/app.config b/src/GitVersionTask/app.config new file mode 100644 index 0000000000..b57ccf84c3 --- /dev/null +++ b/src/GitVersionTask/app.config @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/src/GitVersionTask/packages.config b/src/GitVersionTask/packages.config index e6683c7c8b..c3f4e728a2 100644 --- a/src/GitVersionTask/packages.config +++ b/src/GitVersionTask/packages.config @@ -4,8 +4,8 @@ - - + + \ No newline at end of file