Skip to content

Commit e621e7b

Browse files
HHobeckarturcic
authored andcommitted
Refactoring/remove the EffectiveConfiguration property in the GitVersionContext class. This change is a preparation for fixing the issue #3101 in PR #3190 and targets the v5 version. No business logic changed.
1 parent 5839198 commit e621e7b

File tree

56 files changed

+809
-384
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

56 files changed

+809
-384
lines changed

src/GitTools.Testing/Fixtures/BaseGitFlowRepositoryFixture.cs

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,26 @@ public class BaseGitFlowRepositoryFixture : EmptyRepositoryFixture
1212
///
1313
/// Main will be tagged with the initial version before branching develop
1414
/// </summary>
15-
public BaseGitFlowRepositoryFixture(string initialVersion) :
16-
this(r => r.MakeATaggedCommit(initialVersion))
15+
public BaseGitFlowRepositoryFixture(string initialVersion) : this(initialVersion, "main")
16+
{
17+
}
18+
19+
/// <summary>
20+
/// Creates a repo with a develop branch off main which is a single commit ahead of main
21+
///
22+
/// Main will be tagged with the initial version before branching develop
23+
/// </summary>
24+
public BaseGitFlowRepositoryFixture(string initialVersion, string branchName) :
25+
this(r => r.MakeATaggedCommit(initialVersion), branchName)
26+
{
27+
}
28+
29+
/// <summary>
30+
/// Creates a repo with a develop branch off main which is a single commit ahead of main
31+
///
32+
/// The initial setup actions will be performed before branching develop
33+
/// </summary>
34+
public BaseGitFlowRepositoryFixture(Action<IRepository> initialMainAction) : this(initialMainAction, "main")
1735
{
1836
}
1937

@@ -22,7 +40,8 @@ public BaseGitFlowRepositoryFixture(string initialVersion) :
2240
///
2341
/// The initial setup actions will be performed before branching develop
2442
/// </summary>
25-
public BaseGitFlowRepositoryFixture(Action<IRepository> initialMainAction) => SetupRepo(initialMainAction);
43+
public BaseGitFlowRepositoryFixture(Action<IRepository> initialMainAction, string branchName) :
44+
base(branchName) => SetupRepo(initialMainAction);
2645

2746
private void SetupRepo(Action<IRepository> initialMainAction)
2847
{

src/GitTools.Testing/Fixtures/EmptyRepositoryFixture.cs

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,18 @@ namespace GitTools.Testing;
44

55
public class EmptyRepositoryFixture : RepositoryFixtureBase
66
{
7-
public EmptyRepositoryFixture() : base(CreateNewRepository)
7+
public EmptyRepositoryFixture() : this("main")
88
{
99
}
1010

11-
private static IRepository CreateNewRepository(string path)
11+
public EmptyRepositoryFixture(string branchName)
12+
: base(path => CreateNewRepository(path, branchName))
1213
{
13-
Init(path);
14+
}
15+
16+
private static IRepository CreateNewRepository(string path, string branchName)
17+
{
18+
Init(path, branchName);
1419
Console.WriteLine("Created git repository at '{0}'", path);
1520

1621
return new Repository(path);

src/GitTools.Testing/Fixtures/RemoteRepositoryFixture.cs

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,12 @@ public class RemoteRepositoryFixture : RepositoryFixtureBase
1212
public RemoteRepositoryFixture(Func<string, IRepository> builder)
1313
: base(builder) => CreateLocalRepository();
1414

15-
public RemoteRepositoryFixture() : this(CreateNewRepository)
15+
public RemoteRepositoryFixture() : this("main")
16+
{
17+
}
18+
19+
public RemoteRepositoryFixture(string branchName) :
20+
this(path => CreateNewRepository(path, branchName))
1621
{
1722
}
1823

@@ -21,9 +26,9 @@ public RemoteRepositoryFixture() : this(CreateNewRepository)
2126
/// </summary>
2227
public LocalRepositoryFixture LocalRepositoryFixture { get; private set; }
2328

24-
private static IRepository CreateNewRepository(string path)
29+
private static IRepository CreateNewRepository(string path, string branchName)
2530
{
26-
Init(path);
31+
Init(path, branchName);
2732
Console.WriteLine("Created git repository at '{0}'", path);
2833

2934
var repo = new Repository(path);

src/GitTools.Testing/Fixtures/RepositoryFixtureBase.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ protected virtual void Dispose(bool disposing)
6565

6666
public void Checkout(string branch) => Commands.Checkout(Repository, branch);
6767

68-
public static void Init(string path) => GitTestExtensions.ExecuteGitCmd($"init {path} -b main");
68+
public static void Init(string path, string branchName) => GitTestExtensions.ExecuteGitCmd($"init {path} -b {branchName}");
6969

7070
public void MakeATaggedCommit(string tag)
7171
{

src/GitVersion.App.Tests/PullRequestInBuildAgentTest.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -143,9 +143,9 @@ public async Task VerifyBitBucketPipelinesPullRequest(string pullRequestRef)
143143

144144
private static async Task VerifyPullRequestVersionIsCalculatedProperly(string pullRequestRef, Dictionary<string, string> env)
145145
{
146-
using var fixture = new EmptyRepositoryFixture();
146+
using var fixture = new EmptyRepositoryFixture("main");
147147
var remoteRepositoryPath = ExecutableHelper.GetTempPath();
148-
RepositoryFixtureBase.Init(remoteRepositoryPath);
148+
RepositoryFixtureBase.Init(remoteRepositoryPath, "main");
149149
using (var remoteRepository = new Repository(remoteRepositoryPath))
150150
{
151151
remoteRepository.Config.Set("user.name", "Test");

src/GitVersion.App.Tests/TagCheckoutInBuildAgentTests.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,9 @@ public async Task VerifyTagCheckoutOnGitHubActions()
3636

3737
private static async Task VerifyTagCheckoutVersionIsCalculatedProperly(Dictionary<string, string> env)
3838
{
39-
using var fixture = new EmptyRepositoryFixture();
39+
using var fixture = new EmptyRepositoryFixture("main");
4040
var remoteRepositoryPath = ExecutableHelper.GetTempPath();
41-
RepositoryFixtureBase.Init(remoteRepositoryPath);
41+
RepositoryFixtureBase.Init(remoteRepositoryPath, "main");
4242
using (var remoteRepository = new Repository(remoteRepositoryPath))
4343
{
4444
remoteRepository.Config.Set("user.name", "Test");

src/GitVersion.Core.Tests/Configuration/ConfigProviderTests.CanWriteOutEffectiveConfiguration.approved.txt

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -57,10 +57,8 @@ branches:
5757
pre-release-weight: 30000
5858
feature:
5959
mode: ContinuousDelivery
60-
tag: useBranchName
60+
tag: '{BranchName}'
6161
increment: Inherit
62-
prevent-increment-of-merged-branch-version: false
63-
track-merge-target: false
6462
regex: ^features?[/-]
6563
source-branches:
6664
- develop
@@ -69,17 +67,12 @@ branches:
6967
- feature
7068
- support
7169
- hotfix
72-
tracks-release-branches: false
73-
is-release-branch: false
74-
is-mainline: false
7570
pre-release-weight: 30000
7671
pull-request:
7772
mode: ContinuousDelivery
7873
tag: PullRequest
7974
increment: Inherit
80-
prevent-increment-of-merged-branch-version: false
8175
tag-number-pattern: '[/-](?<number>\d+)'
82-
track-merge-target: false
8376
regex: ^(pull|pull\-requests|pr)[/-]
8477
source-branches:
8578
- develop
@@ -88,9 +81,6 @@ branches:
8881
- feature
8982
- support
9083
- hotfix
91-
tracks-release-branches: false
92-
is-release-branch: false
93-
is-mainline: false
9484
pre-release-weight: 30000
9585
hotfix:
9686
mode: ContinuousDelivery
@@ -100,9 +90,10 @@ branches:
10090
track-merge-target: false
10191
regex: ^hotfix(es)?[/-]
10292
source-branches:
103-
- develop
93+
- release
10494
- main
10595
- support
96+
- hotfix
10697
tracks-release-branches: false
10798
is-release-branch: false
10899
is-mainline: false
@@ -122,6 +113,7 @@ branches:
122113
pre-release-weight: 55000
123114
ignore:
124115
sha: []
116+
increment: Inherit
125117
commit-date-format: yyyy-MM-dd
126118
merge-message-formats: {}
127119
update-build-number: true

src/GitVersion.Core.Tests/Core/RepositoryStoreTests.cs

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
using GitVersion.Core.Tests.IntegrationTests;
44
using GitVersion.Logging;
55
using GitVersion.Model.Configuration;
6-
using GitVersion.VersionCalculation;
76
using Microsoft.Extensions.DependencyInjection;
87
using NUnit.Framework;
98
using Shouldly;
@@ -14,13 +13,11 @@ namespace GitVersion.Core.Tests;
1413
public class RepositoryStoreTests : TestBase
1514
{
1615
private readonly ILog log;
17-
private readonly IIncrementStrategyFinder incrementStrategyFinder;
1816

1917
public RepositoryStoreTests()
2018
{
2119
var sp = ConfigureServices();
2220
this.log = sp.GetRequiredService<ILog>();
23-
this.incrementStrategyFinder = sp.GetRequiredService<IIncrementStrategyFinder>();
2421
}
2522

2623
[Test]
@@ -65,7 +62,7 @@ public void FindsCorrectMergeBaseForForwardMerge()
6562

6663
var develop = fixtureRepository.FindBranch("develop");
6764
var release = fixtureRepository.FindBranch("release-2.0.0");
68-
var gitRepoMetadataProvider = new RepositoryStore(this.log, fixtureRepository, this.incrementStrategyFinder);
65+
var gitRepoMetadataProvider = new RepositoryStore(this.log, fixtureRepository);
6966

7067
var releaseBranchMergeBase = gitRepoMetadataProvider.FindMergeBase(release, develop);
7168

@@ -121,7 +118,7 @@ public void FindsCorrectMergeBaseForForwardMergeMovesOn()
121118

122119
var develop = fixtureRepository.FindBranch("develop");
123120
var release = fixtureRepository.FindBranch("release-2.0.0");
124-
var gitRepoMetadataProvider = new RepositoryStore(this.log, fixtureRepository, this.incrementStrategyFinder);
121+
var gitRepoMetadataProvider = new RepositoryStore(this.log, fixtureRepository);
125122

126123
var releaseBranchMergeBase = gitRepoMetadataProvider.FindMergeBase(release, develop);
127124

@@ -196,7 +193,7 @@ public void FindsCorrectMergeBaseForMultipleForwardMerges()
196193
var develop = fixtureRepository.FindBranch("develop");
197194
var release = fixtureRepository.FindBranch("release-2.0.0");
198195

199-
var gitRepoMetadataProvider = new RepositoryStore(this.log, fixtureRepository, this.incrementStrategyFinder);
196+
var gitRepoMetadataProvider = new RepositoryStore(this.log, fixtureRepository);
200197

201198
var releaseBranchMergeBase = gitRepoMetadataProvider.FindMergeBase(release, develop);
202199

@@ -213,7 +210,7 @@ public void GetBranchesContainingCommitThrowsDirectlyOnNullCommit()
213210
{
214211
using var fixture = new EmptyRepositoryFixture();
215212
var fixtureRepository = fixture.Repository.ToGitRepository();
216-
var gitRepoMetadataProvider = new RepositoryStore(this.log, fixtureRepository, this.incrementStrategyFinder);
213+
var gitRepoMetadataProvider = new RepositoryStore(this.log, fixtureRepository);
217214

218215
Assert.Throws<ArgumentNullException>(() => gitRepoMetadataProvider.GetBranchesContainingCommit(null));
219216
}
@@ -227,7 +224,7 @@ public void FindCommitBranchWasBranchedFromShouldReturnNullIfTheRemoteIsTheOnlyS
227224

228225
var localRepository = fixture.LocalRepositoryFixture.Repository.ToGitRepository();
229226

230-
var gitRepoMetadataProvider = new RepositoryStore(this.log, localRepository, this.incrementStrategyFinder);
227+
var gitRepoMetadataProvider = new RepositoryStore(this.log, localRepository);
231228

232229
var branch = localRepository.FindBranch("main");
233230
branch.ShouldNotBeNull();

src/GitVersion.Core.Tests/Extensions/GitToolsTestingExtensions.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -82,8 +82,8 @@ public static VersionVariables GetVersion(this RepositoryFixtureBase fixture, Co
8282

8383
try
8484
{
85-
var semanticVersion = nextVersionCalculator.FindVersion();
86-
var variables = variableProvider.GetVariablesFor(semanticVersion, context.Configuration, context.IsCurrentCommitTagged);
85+
var nextVersion = nextVersionCalculator.FindVersion();
86+
var variables = variableProvider.GetVariablesFor(nextVersion.IncrementedVersion, nextVersion.Configuration, context.IsCurrentCommitTagged);
8787

8888
return variables;
8989
}

0 commit comments

Comments
 (0)