Skip to content

Commit e9f649d

Browse files
committed
simplify tests
1 parent 7d27524 commit e9f649d

File tree

8 files changed

+50
-113
lines changed

8 files changed

+50
-113
lines changed

AcceptanceTests/GitFlow/BaseGitFlowRepositoryFixture.cs

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,8 @@ namespace AcceptanceTests.GitFlow
22
{
33
using System;
44
using System.IO;
5-
using GitVersion;
65
using Helpers;
76
using LibGit2Sharp;
8-
using Shouldly;
97

108
public class BaseGitFlowRepositoryFixture : EmptyRepositoryFixture
119
{
@@ -30,9 +28,5 @@ void SetupRepo(Action<IRepository> initialMasterAction)
3028
Repository.CreateBranch("develop").Checkout();
3129
}
3230

33-
public void AssertFullSemver(string fullSemver)
34-
{
35-
ExecuteGitVersion().OutputVariables[VariableProvider.FullSemVer].ShouldBe(fullSemver);
36-
}
3731
}
3832
}

AcceptanceTests/GitFlow/DevelopScenarios.cs

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
namespace AcceptanceTests.GitFlow
22
{
3-
using GitVersion;
43
using Helpers;
54
using LibGit2Sharp;
6-
using Shouldly;
75
using Xunit;
86

97
public class DevelopScenarios
@@ -15,10 +13,7 @@ public void WhenDevelopBranchedFromMaster_MinorIsIncreased()
1513
{
1614
fixture.Repository.MakeATaggedCommit("1.0.0");
1715
fixture.Repository.CreateBranch("develop").Checkout();
18-
19-
var result = fixture.ExecuteGitVersion();
20-
21-
result.OutputVariables[VariableProvider.SemVer].ShouldBe("1.1.0.0-unstable");
16+
fixture.AssertFullSemver("1.1.0-unstable.0+0");
2217
}
2318
}
2419

@@ -33,10 +28,7 @@ public void WhenDevelopBranchedFromMasterDetachedHead_MinorIsIncreased()
3328
var commit = fixture.Repository.Head.Tip;
3429
fixture.Repository.MakeACommit();
3530
fixture.Repository.Checkout(commit);
36-
37-
var result = fixture.ExecuteGitVersion();
38-
39-
result.OutputVariables[VariableProvider.SemVer].ShouldBe("1.1.0.1-unstable");
31+
fixture.AssertFullSemver("1.1.0-unstable.1+1");
4032
}
4133
}
4234
}

AcceptanceTests/GitFlow/MetaDataByCommitFixture.cs

Lines changed: 9 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -34,16 +34,16 @@ public void CanCorrectlyDetectCommitCountsAndReleaseDataWhenThatApplies()
3434
using (var f = new CommitCountingRepoFixture())
3535
{
3636
ResetToP(f.Repository);
37-
EnsureMetaDataMatch(f, "develop", "1.4.0.7-unstable");
37+
EnsureMetaDataMatch(f, "develop", "1.4.0-unstable.7+7");
3838

3939
ResetToO(f.Repository);
40-
EnsureMetaDataMatch(f, "develop", "1.4.0.6-unstable");
40+
EnsureMetaDataMatch(f, "develop", "1.4.0-unstable.6+6");
4141

4242
ResetToN(f.Repository);
4343
EnsureMetaDataMatch(f, "master", "1.3.1", r => (Commit)r.Tags["1.3.0"].Target);
4444

4545
ResetToM(f.Repository);
46-
EnsureMetaDataMatch(f, "develop", "1.4.0.5-unstable");
46+
EnsureMetaDataMatch(f, "develop", "1.4.0-unstable.5+5");
4747

4848
ResetToL(f.Repository);
4949
EnsureMetaDataMatch(f, "hotfix-1.3.1", "1.3.1-beta.1+1", r => (Commit)r.Tags["1.3.0"].Target);
@@ -55,7 +55,7 @@ public void CanCorrectlyDetectCommitCountsAndReleaseDataWhenThatApplies()
5555
EnsureMetaDataMatch(f, "feature", "1.4.0-feature+1");
5656

5757
ResetToI(f.Repository);
58-
EnsureMetaDataMatch(f, "develop", "1.4.0.2-unstable");
58+
EnsureMetaDataMatch(f, "develop", "1.4.0-unstable.2+2");
5959

6060
ResetToH(f.Repository);
6161
EnsureMetaDataMatch(f, "master", "1.3.0", r => (Commit)r.Tags["1.3.0"].Target);
@@ -67,7 +67,7 @@ public void CanCorrectlyDetectCommitCountsAndReleaseDataWhenThatApplies()
6767
EnsureMetaDataMatch(f, "master", "1.2.1", r => (Commit)r.Tags["1.2.0"].Target);
6868

6969
ResetToE(f.Repository);
70-
EnsureMetaDataMatch(f, "develop", "1.3.0.2-unstable");
70+
EnsureMetaDataMatch(f, "develop", "1.3.0-unstable.2+2");
7171

7272
ResetToD(f.Repository);
7373
EnsureMetaDataMatch(f, "release-1.3.0", "1.3.0-beta.1+1");
@@ -76,7 +76,7 @@ public void CanCorrectlyDetectCommitCountsAndReleaseDataWhenThatApplies()
7676
EnsureMetaDataMatch(f, "hotfix-1.2.1", "1.2.1-beta.1+1", r => (Commit)r.Tags["1.2.0"].Target);
7777

7878
ResetToB(f.Repository);
79-
EnsureMetaDataMatch(f, "develop", "1.3.0.1-unstable");
79+
EnsureMetaDataMatch(f, "develop", "1.3.0-unstable.1+1");
8080
}
8181
}
8282

@@ -90,16 +90,9 @@ static void EnsureMetaDataMatch(
9090
var commit = referenceCommitFinder(fixture.Repository);
9191

9292
var result = fixture.ExecuteGitVersion();
93-
var vars = result.OutputVariables;
94-
vars[VariableProvider.FullSemVer].ShouldBe(expectedSemVer);
95-
vars[VariableProvider.OriginalRelease].ShouldBe(BuildReleaseMetaDateFrom(commit));
96-
}
97-
98-
static string BuildReleaseMetaDateFrom(Commit commit)
99-
{
100-
return string.Format("{0}.{1}",
101-
commit.Sha,
102-
commit.Committer.When.UtcDateTime.ToString("u"));
93+
result.ToString("f").ShouldBe(expectedSemVer);
94+
result.BuildMetaData.ReleaseDate.OriginalCommitSha.ShouldBe(commit.Sha);
95+
result.BuildMetaData.ReleaseDate.OriginalDate.ShouldBe(commit.Committer.When);
10396
}
10497

10598
void DropTags(IRepository repo, params string[] names)

AcceptanceTests/GitFlow/PatchScenarios.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ public void PatchLatestReleaseExample()
3636

3737
// Verify develop version
3838
fixture.Repository.Checkout("develop");
39-
fixture.AssertFullSemver("1.3.0.0-unstable");
39+
fixture.AssertFullSemver("1.3.0-unstable.0+0");
4040

4141
// Warning: Hack-ish hack
4242
//
@@ -46,7 +46,7 @@ public void PatchLatestReleaseExample()
4646
Thread.Sleep(1000);
4747
fixture.Repository.MergeNoFF("hotfix-1.2.1", Constants.SignatureNow());
4848

49-
fixture.AssertFullSemver("1.3.0.1-unstable");
49+
fixture.AssertFullSemver("1.3.0-unstable.1+1");
5050
}
5151
}
5252

@@ -80,7 +80,7 @@ public void PatchOlderReleaseExample()
8080

8181
// Verify develop version
8282
fixture.Repository.Checkout("develop");
83-
fixture.AssertFullSemver("1.3.0.0-unstable");
83+
fixture.AssertFullSemver("1.3.0-unstable.0+0");
8484
}
8585
}
8686
}

AcceptanceTests/GitFlow/UncycloScenarios.cs

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
namespace AcceptanceTests.GitFlow
22
{
3-
using GitVersion;
43
using Helpers;
54
using LibGit2Sharp;
6-
using Shouldly;
75
using Xunit;
86

97
public class UncycloScenarios
@@ -47,51 +45,51 @@ public void MinorReleaseExample()
4745

4846
// Branch to develop
4947
fixture.Repository.CreateBranch("develop").Checkout();
50-
fixture.ExecuteGitVersion().OutputVariables[VariableProvider.FullSemVer].ShouldBe("1.3.0.0-unstable");
48+
fixture.AssertFullSemver("1.3.0-unstable.0+0");
5149

5250
// Open Pull Request
5351
fixture.Repository.CreateBranch("pull/2/merge").Checkout();
54-
fixture.ExecuteGitVersion().OutputVariables[VariableProvider.FullSemVer].ShouldBe("1.3.0-PullRequest.2+0");
52+
fixture.AssertFullSemver("1.3.0-PullRequest.2+0");
5553
fixture.Repository.MakeACommit();
56-
fixture.ExecuteGitVersion().OutputVariables[VariableProvider.FullSemVer].ShouldBe("1.3.0-PullRequest.2+1");
54+
fixture.AssertFullSemver("1.3.0-PullRequest.2+1");
5755

5856
// Merge into develop
5957
fixture.Repository.Checkout("develop");
6058
fixture.Repository.MergeNoFF("pull/2/merge", Constants.SignatureNow());
61-
fixture.ExecuteGitVersion().OutputVariables[VariableProvider.FullSemVer].ShouldBe("1.3.0.2-unstable");
59+
fixture.AssertFullSemver("1.3.0-unstable.2+2");
6260

6361
// Create release branch
6462
fixture.Repository.CreateBranch("release-1.3.0").Checkout();
65-
fixture.ExecuteGitVersion().OutputVariables[VariableProvider.FullSemVer].ShouldBe("1.3.0-beta.1+0");
63+
fixture.AssertFullSemver("1.3.0-beta.1+0");
6664

6765
// Make another commit on develop
6866
fixture.Repository.Checkout("develop");
6967
fixture.Repository.MakeACommit();
70-
fixture.ExecuteGitVersion().OutputVariables[VariableProvider.FullSemVer].ShouldBe("1.3.0.3-unstable");
68+
fixture.AssertFullSemver("1.3.0-unstable.3+3");
7169

7270
// Make a commit to release-1.3.0
7371
fixture.Repository.Checkout("release-1.3.0");
7472
fixture.Repository.MakeACommit();
75-
fixture.ExecuteGitVersion().OutputVariables[VariableProvider.FullSemVer].ShouldBe("1.3.0-beta.1+1");
73+
fixture.AssertFullSemver("1.3.0-beta.1+1");
7674

7775
// Apply beta.0 tag should be exact tag
7876
fixture.Repository.ApplyTag("1.3.0-beta.1");
79-
fixture.ExecuteGitVersion().OutputVariables[VariableProvider.FullSemVer].ShouldBe("1.3.0-beta.1+1");
77+
fixture.AssertFullSemver("1.3.0-beta.1+1");
8078

8179
// Make a commit after a tag should bump up the beta
8280
fixture.Repository.MakeACommit();
83-
fixture.ExecuteGitVersion().OutputVariables[VariableProvider.FullSemVer].ShouldBe("1.3.0-beta.2+2");
81+
fixture.AssertFullSemver("1.3.0-beta.2+2");
8482

8583
// Merge release branch to master
8684
fixture.Repository.Checkout("master");
8785
fixture.Repository.MergeNoFF("release-1.3.0", Constants.SignatureNow());
88-
fixture.ExecuteGitVersion().OutputVariables[VariableProvider.FullSemVer].ShouldBe("1.3.0");
86+
fixture.AssertFullSemver("1.3.0");
8987
fixture.Repository.ApplyTag("1.3.0");
9088

9189
// Verify develop version
9290
fixture.Repository.Checkout("develop");
9391
fixture.Repository.MergeNoFF("release-1.3.0", Constants.SignatureNow());
94-
fixture.ExecuteGitVersion().OutputVariables[VariableProvider.FullSemVer].ShouldBe("1.4.0.2-unstable");
92+
fixture.AssertFullSemver("1.4.0-unstable.2+2");
9593
}
9694
}
9795
}

AcceptanceTests/GitHubFlow/MasterTests.cs

Lines changed: 16 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
11
namespace GitHubFlowVersion.AcceptanceTests
22
{
3-
using GitVersion;
43
using global::AcceptanceTests;
54
using global::AcceptanceTests.Helpers;
65
using LibGit2Sharp;
7-
using Shouldly;
86
using Xunit;
97

108
public class MasterTests
@@ -20,10 +18,7 @@ public void GivenARepositoryWithCommitsButNoTags_VersionShouldBe_0_1()
2018
fixture.Repository.MakeACommit();
2119

2220
// When
23-
var result = fixture.ExecuteGitVersion();
24-
25-
result.ExitCode.ShouldBe(0);
26-
result.OutputVariables[VariableProvider.FullSemVer].ShouldBe("0.1.0+2");
21+
fixture.AssertFullSemver("0.1.0+2");
2722
}
2823
}
2924

@@ -42,10 +37,7 @@ public void GivenARepositoryWithCommitsButNoTagsWithDetachedHead_VersionShouldBe
4237
fixture.Repository.Checkout(commit);
4338

4439
// When
45-
var result = fixture.ExecuteGitVersion();
46-
47-
result.ExitCode.ShouldBe(0);
48-
result.OutputVariables[VariableProvider.FullSemVer].ShouldBe("0.1.0+2");
40+
fixture.AssertFullSemver("0.1.0+2");
4941
}
5042
}
5143

@@ -59,11 +51,8 @@ public void GivenARepositoryWithNoTagsAndANextVersionTxtFile_VersionShouldMatchV
5951
fixture.Repository.MakeACommit();
6052
fixture.Repository.MakeACommit();
6153
fixture.Repository.AddNextVersionTxtFile(ExpectedNextVersion);
62-
63-
var result = fixture.ExecuteGitVersion();
64-
65-
result.ExitCode.ShouldBe(0);
66-
result.OutputVariables[VariableProvider.FullSemVer].ShouldBe("1.0.0+2");
54+
55+
fixture.AssertFullSemver("1.0.0+2");
6756
}
6857
}
6958

@@ -77,11 +66,8 @@ public void GivenARepositoryWithTagAndANextVersionTxtFile_VersionShouldMatchVers
7766
fixture.Repository.MakeATaggedCommit(TaggedVersion);
7867
fixture.Repository.MakeCommits(5);
7968
fixture.Repository.AddNextVersionTxtFile(ExpectedNextVersion);
80-
81-
var result = fixture.ExecuteGitVersion();
82-
83-
result.ExitCode.ShouldBe(0);
84-
result.OutputVariables[VariableProvider.FullSemVer].ShouldBe("1.1.0+5");
69+
70+
fixture.AssertFullSemver("1.1.0+5");
8571
}
8672
}
8773

@@ -94,11 +80,8 @@ public void GivenARepositoryWithTagAndANextVersionTxtFileAndNoCommits_VersionSho
9480
const string TaggedVersion = "1.0.3";
9581
fixture.Repository.MakeATaggedCommit(TaggedVersion);
9682
fixture.Repository.AddNextVersionTxtFile(ExpectedNextVersion);
97-
98-
var result = fixture.ExecuteGitVersion();
99-
100-
result.ExitCode.ShouldBe(0);
101-
result.OutputVariables[VariableProvider.FullSemVer].ShouldBe("1.0.3+0");
83+
84+
fixture.AssertFullSemver("1.0.3+0");
10285
}
10386
}
10487

@@ -110,11 +93,8 @@ public void GivenARepositoryWithTagAndNoNextVersionTxtFile_VersionShouldBeTagWit
11093
const string TaggedVersion = "1.0.3";
11194
fixture.Repository.MakeATaggedCommit(TaggedVersion);
11295
fixture.Repository.MakeCommits(5);
113-
114-
var result = fixture.ExecuteGitVersion();
115-
116-
result.ExitCode.ShouldBe(0);
117-
result.OutputVariables[VariableProvider.FullSemVer].ShouldBe("1.0.4+5");
96+
97+
fixture.AssertFullSemver("1.0.4+5");
11898
}
11999
}
120100

@@ -125,11 +105,8 @@ public void GivenARepositoryWithTagAndNoNextVersionTxtFileAndNoCommits_VersionSh
125105
{
126106
const string TaggedVersion = "1.0.3";
127107
fixture.Repository.MakeATaggedCommit(TaggedVersion);
128-
129-
var result = fixture.ExecuteGitVersion();
130-
131-
result.ExitCode.ShouldBe(0);
132-
result.OutputVariables[VariableProvider.FullSemVer].ShouldBe("1.0.3+0");
108+
109+
fixture.AssertFullSemver("1.0.3+0");
133110
}
134111
}
135112

@@ -143,11 +120,8 @@ public void GivenARepositoryWithTagAndOldNextVersionTxtFile_VersionShouldBeTagWi
143120
fixture.Repository.MakeATaggedCommit(TaggedVersion);
144121
fixture.Repository.MakeCommits(5);
145122
fixture.Repository.AddNextVersionTxtFile(NextVersionTxt);
146-
147-
var result = fixture.ExecuteGitVersion();
148-
149-
result.ExitCode.ShouldBe(0);
150-
result.OutputVariables[VariableProvider.FullSemVer].ShouldBe("1.1.1+5");
123+
124+
fixture.AssertFullSemver("1.1.1+5");
151125
}
152126
}
153127

@@ -160,11 +134,8 @@ public void GivenARepositoryWithTagAndOldNextVersionTxtFileAndNoCommits_VersionS
160134
const string TaggedVersion = "1.1.0";
161135
fixture.Repository.MakeATaggedCommit(TaggedVersion);
162136
fixture.Repository.AddNextVersionTxtFile(NextVersionTxt);
163-
164-
var result = fixture.ExecuteGitVersion();
165-
166-
result.ExitCode.ShouldBe(0);
167-
result.OutputVariables[VariableProvider.FullSemVer].ShouldBe("1.1.0+0");
137+
138+
fixture.AssertFullSemver("1.1.0+0");
168139
}
169140
}
170141
}

AcceptanceTests/GitHubFlow/ReleaseBranchTests.cs

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
11
namespace GitHubFlowVersion.AcceptanceTests
22
{
3-
using GitVersion;
43
using global::AcceptanceTests;
54
using global::AcceptanceTests.Helpers;
65
using LibGit2Sharp;
7-
using Shouldly;
86
using Xunit;
97

108
public class ReleaseBranchTests
@@ -20,10 +18,7 @@ public void CanTakeVersionFromReleaseBranch()
2018
fixture.Repository.CreateBranch("release-2.0.0");
2119
fixture.Repository.Checkout("release-2.0.0");
2220

23-
var result = fixture.ExecuteGitVersion();
24-
25-
result.ExitCode.ShouldBe(0);
26-
result.OutputVariables[VariableProvider.FullSemVer].ShouldBe("2.0.0-beta.1+5");
21+
fixture.AssertFullSemver("2.0.0-beta.1+5");
2722
}
2823
}
2924

@@ -41,10 +36,7 @@ public void WhenReleaseBranchIsMergedIntoMasterVersionIsTakenWithIt()
4136
fixture.Repository.Checkout("master");
4237
fixture.Repository.MergeNoFF("release-2.0.0", Constants.SignatureNow());
4338

44-
var result = fixture.ExecuteGitVersion();
45-
46-
result.ExitCode.ShouldBe(0);
47-
result.OutputVariables[VariableProvider.FullSemVer].ShouldBe("2.0.0+6");
39+
fixture.AssertFullSemver("2.0.0+6");
4840
}
4941
}
5042
}

0 commit comments

Comments
 (0)