Skip to content

Commit 2ba1989

Browse files
committed
Minor refactoring. No business logic changed.
1 parent 74db309 commit 2ba1989

File tree

6 files changed

+51
-92
lines changed

6 files changed

+51
-92
lines changed

src/GitVersion.Core.Tests/Core/GitVersionExecutorTests.cs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -364,19 +364,16 @@ public void WorkingDirectoryWithoutGit()
364364
[Test]
365365
public void WorkingDirectoryWithoutCommits()
366366
{
367-
// Setup
368367
using var fixture = new EmptyRepositoryFixture();
369368

370369
var gitVersionOptions = new GitVersionOptions { WorkingDirectory = fixture.RepositoryPath };
371370

372371
var exception = Assert.Throws<GitVersionException>(() =>
373372
{
374-
// Execute
375373
var gitVersionCalculator = GetGitVersionCalculator(gitVersionOptions);
376374
gitVersionCalculator.CalculateVersionVariables();
377375
});
378376

379-
// Verify
380377
exception?.Message.ShouldContain("No commits found on the current branch.");
381378
}
382379

src/GitVersion.Core.Tests/IntegrationTests/IgnoreBeforeScenarios.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,10 @@ public void ShouldFallbackToBaseVersionWhenAllCommitsAreIgnored(string? nextVers
1717
var dateTimeNow = DateTimeOffset.Now;
1818
fixture.MakeACommit();
1919

20-
var config = TestConfigurationBuilder.New.WithNextVersion(nextVersion)
20+
var configuration = TestConfigurationBuilder.New.WithNextVersion(nextVersion)
2121
.WithIgnoreConfig(new() { Before = dateTimeNow.AddDays(1) }).Build();
2222

23-
fixture.AssertFullSemver(expectedFullSemVer, config);
23+
fixture.AssertFullSemver(expectedFullSemVer, configuration);
2424
}
2525

2626
[TestCase(null, "0.0.1+1")]
@@ -33,9 +33,9 @@ public void ShouldNotFallbackToBaseVersionWhenAllCommitsAreNotIgnored(string? ne
3333
var dateTimeNow = DateTimeOffset.Now;
3434
fixture.MakeACommit();
3535

36-
var config = TestConfigurationBuilder.New.WithNextVersion(nextVersion)
36+
var configuration = TestConfigurationBuilder.New.WithNextVersion(nextVersion)
3737
.WithIgnoreConfig(new() { Before = dateTimeNow.AddDays(-1) }).Build();
3838

39-
fixture.AssertFullSemver(expectedFullSemVer, config);
39+
fixture.AssertFullSemver(expectedFullSemVer, configuration);
4040
}
4141
}

src/GitVersion.Core.Tests/IntegrationTests/PreventDecrementationOfVersionsOnTheDevelopBranchScenario.cs

Lines changed: 33 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -15,75 +15,75 @@ public void Discussion3177()
1515
{
1616
using EmptyRepositoryFixture fixture = new("develop");
1717

18-
var configBuilder = TestConfigurationBuilder.New;
18+
var configurationBuilder = TestConfigurationBuilder.New;
1919

2020
fixture.MakeACommit();
2121

2222
// ✅ succeeds as expected
23-
fixture.AssertFullSemver("0.1.0-alpha.1", configBuilder.Build());
23+
fixture.AssertFullSemver("0.1.0-alpha.1", configurationBuilder.Build());
2424

25-
configBuilder.WithNextVersion("1.0.0");
25+
configurationBuilder.WithNextVersion("1.0.0");
2626

2727
// ✅ succeeds as expected
28-
fixture.AssertFullSemver("1.0.0-alpha.1", configBuilder.Build());
28+
fixture.AssertFullSemver("1.0.0-alpha.1", configurationBuilder.Build());
2929

3030
fixture.MakeACommit();
31-
configBuilder.WithNextVersion(null);
31+
configurationBuilder.WithNextVersion(null);
3232

3333
// ✅ succeeds as expected
34-
fixture.AssertFullSemver("0.1.0-alpha.2", configBuilder.Build());
34+
fixture.AssertFullSemver("0.1.0-alpha.2", configurationBuilder.Build());
3535

36-
configBuilder.WithNextVersion("1.0.0");
36+
configurationBuilder.WithNextVersion("1.0.0");
3737

3838
// ✅ succeeds as expected
39-
fixture.AssertFullSemver("1.0.0-alpha.2", configBuilder.Build());
39+
fixture.AssertFullSemver("1.0.0-alpha.2", configurationBuilder.Build());
4040

4141
// now we are ready to start with the preparation of the 1.0.0 release
4242
fixture.BranchTo("release/1.0.0");
4343
fixture.Checkout("develop");
4444

4545
// ✅ succeeds as expected
46-
fixture.AssertFullSemver("1.1.0-alpha.0", configBuilder.Build());
46+
fixture.AssertFullSemver("1.1.0-alpha.0", configurationBuilder.Build());
4747

4848
fixture.Checkout("release/1.0.0");
4949

5050
// ✅ succeeds as expected
51-
fixture.AssertFullSemver("1.0.0-beta.1+0", configBuilder.Build());
51+
fixture.AssertFullSemver("1.0.0-beta.1+0", configurationBuilder.Build());
5252

5353
// make another commit on release/1.0.0 to prepare the actual beta1 release
5454
fixture.MakeACommit();
5555

5656
// ✅ succeeds as expected
57-
fixture.AssertFullSemver("1.0.0-beta.1+1", configBuilder.Build());
57+
fixture.AssertFullSemver("1.0.0-beta.1+1", configurationBuilder.Build());
5858

5959
// now we makes changes on develop that may or may not end up in the 1.0.0 release
6060
fixture.Checkout("develop");
6161

6262
// ✅ succeeds as expected
63-
fixture.AssertFullSemver("1.1.0-alpha.0", configBuilder.Build());
63+
fixture.AssertFullSemver("1.1.0-alpha.0", configurationBuilder.Build());
6464

6565
fixture.MakeACommit();
6666

6767
// ✅ succeeds as expected
68-
fixture.AssertFullSemver("1.1.0-alpha.1", configBuilder.Build());
68+
fixture.AssertFullSemver("1.1.0-alpha.1", configurationBuilder.Build());
6969

7070
// now we do the actual release of beta 1
7171
fixture.Checkout("release/1.0.0");
7272
fixture.ApplyTag("1.0.0-beta.1");
7373

7474
// ✅ succeeds as expected
75-
fixture.AssertFullSemver("1.0.0-beta.1", configBuilder.Build());
75+
fixture.AssertFullSemver("1.0.0-beta.1", configurationBuilder.Build());
7676

7777
// continue with more work on develop that may or may not end up in the 1.0.0 release
7878
fixture.Checkout("develop");
7979

8080
// ✅ succeeds as expected
81-
fixture.AssertFullSemver("1.1.0-alpha.1", configBuilder.Build());
81+
fixture.AssertFullSemver("1.1.0-alpha.1", configurationBuilder.Build());
8282

8383
fixture.MakeACommit();
8484

8585
// ✅ succeeds as expected
86-
fixture.AssertFullSemver("1.1.0-alpha.2", configBuilder.Build());
86+
fixture.AssertFullSemver("1.1.0-alpha.2", configurationBuilder.Build());
8787

8888
// now we decide that the new on develop should be part of the beta 2 release
8989
// se we merge it into release/1.0.0 with --no-ff because it is a protected branch
@@ -92,74 +92,74 @@ public void Discussion3177()
9292
fixture.MergeNoFF("develop");
9393

9494
// ✅ succeeds as expected
95-
fixture.AssertFullSemver("1.0.0-beta.2+2", configBuilder.Build());
95+
fixture.AssertFullSemver("1.0.0-beta.2+2", configurationBuilder.Build());
9696

9797
fixture.Checkout("develop");
9898

9999
// ✅ succeeds as expected
100-
fixture.AssertFullSemver("1.1.0-alpha.0", configBuilder.Build());
100+
fixture.AssertFullSemver("1.1.0-alpha.0", configurationBuilder.Build());
101101

102102
fixture.Checkout("release/1.0.0");
103103
fixture.ApplyTag("1.0.0-beta.2");
104104

105105
// ✅ succeeds as expected
106-
fixture.AssertFullSemver("1.0.0-beta.2", configBuilder.Build());
106+
fixture.AssertFullSemver("1.0.0-beta.2", configurationBuilder.Build());
107107

108108
fixture.Checkout("develop");
109109

110110
// ✅ succeeds as expected
111-
fixture.AssertFullSemver("1.1.0-alpha.0", configBuilder.Build());
111+
fixture.AssertFullSemver("1.1.0-alpha.0", configurationBuilder.Build());
112112

113113
fixture.MergeNoFF("release/1.0.0");
114114

115115
// ✅ succeeds as expected
116-
fixture.AssertFullSemver("1.1.0-alpha.3", configBuilder.Build());
116+
fixture.AssertFullSemver("1.1.0-alpha.3", configurationBuilder.Build());
117117

118118
fixture.Repository.Branches.Remove("release/1.0.0");
119119

120120
// ✅ succeeds as expected
121-
fixture.AssertFullSemver("1.1.0-alpha.3", configBuilder.Build());
121+
fixture.AssertFullSemver("1.1.0-alpha.3", configurationBuilder.Build());
122122

123-
configBuilder.WithNextVersion("1.0.0");
123+
configurationBuilder.WithNextVersion("1.0.0");
124124

125125
// ✅ succeeds as expected
126-
fixture.AssertFullSemver("1.1.0-alpha.3", configBuilder.Build());
126+
fixture.AssertFullSemver("1.1.0-alpha.3", configurationBuilder.Build());
127127

128128
fixture.Repository.Tags.Remove("1.0.0-beta.1");
129129
fixture.Repository.Tags.Remove("1.0.0-beta.2");
130130

131131
// ❌ expected: "1.0.0-alpha.3"
132132
// This behavior needs to be changed for the git flow workflow using the track-merge-message or track-merge-target options.
133133
// [Bug] track-merge-changes produces unexpected result when combining hotfix and support branches #3052
134-
fixture.AssertFullSemver("1.1.0-alpha.3", configBuilder.Build());
134+
fixture.AssertFullSemver("1.1.0-alpha.3", configurationBuilder.Build());
135135

136-
configBuilder.WithNextVersion("1.1.0");
136+
configurationBuilder.WithNextVersion("1.1.0");
137137

138138
// ✅ succeeds as expected
139-
fixture.AssertFullSemver("1.1.0-alpha.3", configBuilder.Build());
139+
fixture.AssertFullSemver("1.1.0-alpha.3", configurationBuilder.Build());
140140

141141
// Merge from develop to main
142142
fixture.BranchTo("main");
143143

144144
// ✅ succeeds as expected
145-
fixture.AssertFullSemver("1.1.0+3", configBuilder.Build());
145+
fixture.AssertFullSemver("1.1.0+3", configurationBuilder.Build());
146146

147-
configBuilder.WithNextVersion(null);
147+
configurationBuilder.WithNextVersion(null);
148148

149149
// ❌ expected: "0.0.1+3"
150150
// This behavior needs to be changed for the git flow workflow using the track-merge-message or track-merge-target options.
151151
// [Bug] track-merge-changes produces unexpected result when combining hotfix and support branches #3052
152-
fixture.AssertFullSemver("1.0.0+3", configBuilder.Build());
152+
fixture.AssertFullSemver("1.0.0+3", configurationBuilder.Build());
153153

154-
configBuilder.WithNextVersion("1.0.0");
154+
configurationBuilder.WithNextVersion("1.0.0");
155155

156156
// ✅ succeeds as expected
157-
fixture.AssertFullSemver("1.0.0+3", configBuilder.Build());
157+
fixture.AssertFullSemver("1.0.0+3", configurationBuilder.Build());
158158

159159
// Mark this version as RTM
160160
fixture.ApplyTag("1.0.0");
161161

162162
// ✅ succeeds as expected
163-
fixture.AssertFullSemver("1.0.0", configBuilder.Build());
163+
fixture.AssertFullSemver("1.0.0", configurationBuilder.Build());
164164
}
165165
}

src/GitVersion.Core.Tests/VersionCalculation/Strategies/MergeMessageBaseVersionStrategyTests.cs

Lines changed: 9 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -34,17 +34,7 @@ public void ShouldNotAllowIncrementOfVersion()
3434
mockRepository.Branches.Returns(branches);
3535
mockRepository.Commits.Returns(mockBranch.Commits);
3636

37-
var contextBuilder = new GitVersionContextBuilder().WithRepository(mockRepository).WithConfig(new Config()
38-
{
39-
Branches = new Dictionary<string, BranchConfig>()
40-
{
41-
{
42-
"main", new BranchConfig() {
43-
TrackMergeTarget = true
44-
}
45-
}
46-
}
47-
});
37+
var contextBuilder = new GitVersionContextBuilder().WithRepository(mockRepository);
4838
contextBuilder.Build();
4939
contextBuilder.ServicesProvider.ShouldNotBeNull();
5040
var strategy = contextBuilder.ServicesProvider.GetServiceForType<IVersionStrategy, MergeMessageVersionStrategy>();
@@ -133,15 +123,13 @@ public void ShouldNotTakeVersionFromMergeOfReleaseBranchWithRemoteOtherThanOrigi
133123
}
134124

135125
[TestCase(@"Merge pull request #1 in FOO/bar from feature/ISSUE-1 to develop
136-
137-
* commit '38560a7eed06e8d3f3f1aaf091befcdf8bf50fea':
138-
Updated jQuery to v2.1.3")]
126+
* commit '38560a7eed06e8d3f3f1aaf091befcdf8bf50fea':
127+
Updated jQuery to v2.1.3")]
139128
[TestCase(@"Merge pull request #45 in BRIKKS/brikks from feature/NOX-68 to develop
140-
141-
* commit '38560a7eed06e8d3f3f1aaf091befcdf8bf50fea':
142-
Another commit message
143-
Commit message including a IP-number https://10.50.1.1
144-
A commit message")]
129+
* commit '38560a7eed06e8d3f3f1aaf091befcdf8bf50fea':
130+
Another commit message
131+
Commit message including a IP-number https://10.50.1.1
132+
A commit message")]
145133
[TestCase("Merge branch 'release/Sprint_2.0_Holdings_Computed_Balances'")]
146134
[TestCase("Merge branch 'develop' of http://10.0.6.3/gitblit/r/... into develop")]
147135
[TestCase("Merge branch " + MainBranch + " of http://172.16.3.10:8082/r/asu_tk/p_sd")]
@@ -159,17 +147,7 @@ public void ShouldNotTakeVersionFromUnrelatedMerge(string commitMessage)
159147
[TestCase("Merge branch 'release/2.0.0'", null, "2.0.0")]
160148
public void TakesVersionFromMergeOfConfiguredReleaseBranch(string message, string? releaseBranch, string expectedVersion)
161149
{
162-
var config = new Config()
163-
{
164-
Branches = new Dictionary<string, BranchConfig>()
165-
{
166-
{
167-
"main", new BranchConfig() {
168-
TrackMergeTarget = true
169-
}
170-
}
171-
}
172-
};
150+
var config = new Config();
173151
if (releaseBranch != null) config.Branches[releaseBranch] = new BranchConfig { IsReleaseBranch = true };
174152
var parents = GetParents(true);
175153

@@ -189,17 +167,7 @@ private static void AssertMergeMessage(string message, string? expectedVersion,
189167
mockRepository.Commits.Returns(mockBranch.Commits);
190168

191169
var contextBuilder = new GitVersionContextBuilder()
192-
.WithConfig(config ?? new Config()
193-
{
194-
Branches = new Dictionary<string, BranchConfig>()
195-
{
196-
{
197-
"main", new BranchConfig() {
198-
TrackMergeTarget = true
199-
}
200-
}
201-
}
202-
}).WithRepository(mockRepository);
170+
.WithConfig(config ?? new Config()).WithRepository(mockRepository);
203171
contextBuilder.Build();
204172
contextBuilder.ServicesProvider.ShouldNotBeNull();
205173
var strategy = contextBuilder.ServicesProvider.GetServiceForType<IVersionStrategy, MergeMessageVersionStrategy>();

src/GitVersion.Core/PublicAPI.Unshipped.txt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,7 @@ GitVersion.RepositoryStore.FindCommitBranchesWasBranchedFrom(GitVersion.IBranch!
1010
GitVersion.RepositoryStore.GetCurrentCommitTaggedVersion(GitVersion.ICommit? commit, string? tagPrefix) -> GitVersion.SemanticVersion?
1111
GitVersion.RepositoryStore.GetSourceBranches(GitVersion.IBranch! branch, GitVersion.Model.Configuration.Config! configuration, params GitVersion.IBranch![]! excludedBranches) -> System.Collections.Generic.IEnumerable<GitVersion.IBranch!>!
1212
GitVersion.RepositoryStore.GetSourceBranches(GitVersion.IBranch! branch, GitVersion.Model.Configuration.Config! configuration, System.Collections.Generic.IEnumerable<GitVersion.IBranch!>! excludedBranches) -> System.Collections.Generic.IEnumerable<GitVersion.IBranch!>!
13-
GitVersion.SemanticVersion.BuildMetaData.get -> GitVersion.SemanticVersionBuildMetaData?
14-
GitVersion.SemanticVersion.BuildMetaData.set -> void
13+
GitVersion.SemanticVersion.BuildMetaData -> GitVersion.SemanticVersionBuildMetaData?
1514
GitVersion.VersionCalculation.EffectiveBranchConfigurationFinder
1615
GitVersion.VersionCalculation.EffectiveBranchConfigurationFinder.EffectiveBranchConfigurationFinder(GitVersion.Logging.ILog! log, GitVersion.Common.IRepositoryStore! repositoryStore) -> void
1716
GitVersion.VersionCalculation.FallbackVersionStrategy.FallbackVersionStrategy() -> void

src/GitVersion.Core/VersionCalculation/SemanticVersioning/SemanticVersion.cs

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -22,20 +22,15 @@ public class SemanticVersion : IFormattable, IComparable<SemanticVersion>, IEqua
2222
public long Minor;
2323
public long Patch;
2424
public SemanticVersionPreReleaseTag? PreReleaseTag;
25-
private SemanticVersionBuildMetaData? _buildMetaData;
25+
public SemanticVersionBuildMetaData? BuildMetaData;
2626

27-
public SemanticVersionBuildMetaData? BuildMetaData
28-
{
29-
get => _buildMetaData;
30-
set => _buildMetaData = value;
31-
}
3227
public SemanticVersion(long major = 0, long minor = 0, long patch = 0)
3328
{
3429
this.Major = major;
3530
this.Minor = minor;
3631
this.Patch = patch;
3732
this.PreReleaseTag = new SemanticVersionPreReleaseTag();
38-
this._buildMetaData = new SemanticVersionBuildMetaData();
33+
this.BuildMetaData = new SemanticVersionBuildMetaData();
3934
}
4035

4136
public SemanticVersion(SemanticVersion? semanticVersion)
@@ -45,7 +40,7 @@ public SemanticVersion(SemanticVersion? semanticVersion)
4540
this.Patch = semanticVersion?.Patch ?? 0;
4641

4742
this.PreReleaseTag = new SemanticVersionPreReleaseTag(semanticVersion?.PreReleaseTag);
48-
this._buildMetaData = new SemanticVersionBuildMetaData(semanticVersion?.BuildMetaData);
43+
this.BuildMetaData = new SemanticVersionBuildMetaData(semanticVersion?.BuildMetaData);
4944
}
5045

5146
public bool Equals(SemanticVersion? obj)
@@ -205,7 +200,7 @@ private static bool TryParseLoose(string version, [NotNullWhen(true)] out Semant
205200
Minor = parsed.Groups["Minor"].Success ? long.Parse(parsed.Groups["Minor"].Value) : 0,
206201
Patch = parsed.Groups["Patch"].Success ? long.Parse(parsed.Groups["Patch"].Value) : 0,
207202
PreReleaseTag = SemanticVersionPreReleaseTag.Parse(parsed.Groups["Tag"].Value),
208-
_buildMetaData = semanticVersionBuildMetaData
203+
BuildMetaData = semanticVersionBuildMetaData
209204
};
210205

211206
return true;

0 commit comments

Comments
 (0)