Skip to content

Commit 610cbf7

Browse files
committed
Rename MainlineDevelopmentMode to TrunkBasedDevelopmentScenarios and adapt tests.
1 parent bd8bd8d commit 610cbf7

File tree

1 file changed

+75
-19
lines changed

1 file changed

+75
-19
lines changed

src/GitVersion.Core.Tests/IntegrationTests/MainlineDevelopmentMode.cs renamed to src/GitVersion.Core.Tests/IntegrationTests/TrunkBasedDevelopmentScenarios.cs

Lines changed: 75 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -5,26 +5,35 @@
55

66
namespace GitVersion.Core.Tests.IntegrationTests;
77

8-
public class MainlineDevelopmentMode : TestBase
8+
public class TrunkBasedDevelopmentScenarios : TestBase
99
{
1010
private static GitFlowConfigurationBuilder GetConfigurationBuilder() => GitFlowConfigurationBuilder.New
1111
.WithVersioningMode(VersioningMode.TrunkBased)
1212
.WithBranch("main", builder => builder
13+
.WithIsMainline(true).WithIncrement(IncrementStrategy.Patch)
1314
.WithVersioningMode(VersioningMode.ContinuousDeployment)
1415
.WithSourceBranches()
1516
)
1617
.WithBranch("develop", builder => builder
18+
.WithIsMainline(false).WithIncrement(IncrementStrategy.Minor)
1719
.WithVersioningMode(VersioningMode.ContinuousDelivery)
1820
.WithSourceBranches("main")
1921
)
20-
.WithBranch("feature", builder => builder.WithIsMainline(false)
21-
.WithIncrement(IncrementStrategy.Inherit).WithVersioningMode(VersioningMode.ContinuousDelivery)
22+
.WithBranch("feature", builder => builder
23+
.WithIsMainline(false).WithIncrement(IncrementStrategy.Minor)
24+
.WithVersioningMode(VersioningMode.ContinuousDelivery)
25+
.WithSourceBranches("main")
26+
)
27+
.WithBranch("hotfix", builder => builder
28+
.WithIsMainline(false).WithIncrement(IncrementStrategy.Patch)
29+
.WithVersioningMode(VersioningMode.ContinuousDelivery)
30+
.WithRegularExpression("^hotfix[/-](?<BranchName>.+)").WithLabel("{BranchName}")
2231
.WithSourceBranches("main")
2332
)
24-
.WithBranch("support", builder => builder.WithVersioningMode(VersioningMode.ContinuousDelivery))
2533
.WithBranch("pull-request", builder => builder
26-
.WithIsMainline(false).WithVersioningMode(VersioningMode.ContinuousDelivery)
27-
.WithSourceBranches("main").WithIncrement(IncrementStrategy.None)
34+
.WithIsMainline(false).WithIncrement(IncrementStrategy.Inherit)
35+
.WithVersioningMode(VersioningMode.ContinuousDelivery)
36+
.WithSourceBranches("main")
2837
);
2938

3039
[Test]
@@ -51,7 +60,10 @@ public void VerifyNonMainMainlineVersionIdenticalAsMain()
5160
[Test]
5261
public void MergedFeatureBranchesToMainImpliesRelease()
5362
{
54-
var configuration = GetConfigurationBuilder().Build();
63+
var configuration = GetConfigurationBuilder()
64+
.WithBranch("feature", builder => builder
65+
.WithIncrement(IncrementStrategy.Patch)
66+
).Build();
5567

5668
using var fixture = new EmptyRepositoryFixture();
5769
fixture.Repository.MakeACommit("1");
@@ -117,21 +129,50 @@ public void MergedFeatureBranchesToMainImpliesRelease()
117129
}
118130

119131
[Test]
120-
public void VerifyPullRequestsActLikeContinuousDelivery()
132+
public void VerifyPullRequestsActLikeContinuousDeliveryOnFeatureBranch()
121133
{
122134
var configuration = GetConfigurationBuilder().Build();
123135

124-
using var fixture = new EmptyRepositoryFixture();
125-
fixture.Repository.MakeACommit("1");
136+
using EmptyRepositoryFixture fixture = new("main");
137+
138+
fixture.MakeACommit("1");
139+
140+
fixture.AssertFullSemver("0.0.1", configuration);
141+
126142
fixture.MakeATaggedCommit("1.0.0");
127-
fixture.MakeACommit();
143+
fixture.MakeACommit("2");
144+
128145
fixture.AssertFullSemver("1.0.1", configuration);
129146

130147
fixture.BranchTo("feature/foo", "foo");
131-
fixture.AssertFullSemver("1.0.2-foo.0", configuration);
132-
fixture.MakeACommit();
133-
fixture.MakeACommit();
148+
fixture.AssertFullSemver("1.1.0-foo.0", configuration);
149+
fixture.MakeACommit("3");
150+
fixture.MakeACommit("4");
134151
fixture.Repository.CreatePullRequestRef("feature/foo", MainBranch, prNumber: 8, normalise: true);
152+
fixture.AssertFullSemver("1.1.0-PullRequest8.3", configuration);
153+
}
154+
155+
[Test]
156+
public void VerifyPullRequestsActLikeContinuousDeliveryOnHotfixBranch()
157+
{
158+
var configuration = GetConfigurationBuilder().Build();
159+
160+
using EmptyRepositoryFixture fixture = new("main");
161+
162+
fixture.MakeACommit("1");
163+
164+
fixture.AssertFullSemver("0.0.1", configuration);
165+
166+
fixture.MakeATaggedCommit("1.0.0");
167+
fixture.MakeACommit("2");
168+
169+
fixture.AssertFullSemver("1.0.1", configuration);
170+
171+
fixture.BranchTo("hotfix/foo", "foo");
172+
fixture.AssertFullSemver("1.0.2-foo.0", configuration);
173+
fixture.MakeACommit("3");
174+
fixture.MakeACommit("4");
175+
fixture.Repository.CreatePullRequestRef("hotfix/foo", MainBranch, prNumber: 8, normalise: true);
135176
fixture.AssertFullSemver("1.0.2-PullRequest8.3", configuration);
136177
}
137178

@@ -173,7 +214,10 @@ public void SupportBranches()
173214
[Test]
174215
public void VerifyForwardMerge()
175216
{
176-
var configuration = GetConfigurationBuilder().Build();
217+
var configuration = GetConfigurationBuilder()
218+
.WithBranch("feature", builder => builder
219+
.WithIncrement(IncrementStrategy.Patch)
220+
).Build();
177221

178222
using var fixture = new EmptyRepositoryFixture();
179223
fixture.Repository.MakeACommit("1");
@@ -321,7 +365,10 @@ public void VerifyDevelopFeatureTracksMainVersion()
321365
[Test]
322366
public void VerifyMergingMainToFeatureDoesNotCauseBranchCommitsToIncrementVersion()
323367
{
324-
var configuration = GetConfigurationBuilder().Build();
368+
var configuration = GetConfigurationBuilder()
369+
.WithBranch("feature", builder => builder
370+
.WithIncrement(IncrementStrategy.Patch)
371+
).Build();
325372

326373
using var fixture = new EmptyRepositoryFixture();
327374
fixture.MakeACommit($"first in {MainBranch}");
@@ -346,7 +393,10 @@ public void VerifyMergingMainToFeatureDoesNotCauseBranchCommitsToIncrementVersio
346393
[Test]
347394
public void VerifyMergingMainToFeatureDoesNotStopMainCommitsIncrementingVersion()
348395
{
349-
var configuration = GetConfigurationBuilder().Build();
396+
var configuration = GetConfigurationBuilder()
397+
.WithBranch("feature", builder => builder
398+
.WithIncrement(IncrementStrategy.Patch)
399+
).Build();
350400

351401
using var fixture = new EmptyRepositoryFixture();
352402
fixture.MakeACommit($"first in {MainBranch}");
@@ -370,7 +420,10 @@ public void VerifyMergingMainToFeatureDoesNotStopMainCommitsIncrementingVersion(
370420
[Test]
371421
public void VerifyIssue1154CanForwardMergeMainToFeatureBranch()
372422
{
373-
var configuration = GetConfigurationBuilder().Build();
423+
var configuration = GetConfigurationBuilder()
424+
.WithBranch("feature", builder => builder
425+
.WithIncrement(IncrementStrategy.Patch)
426+
).Build();
374427

375428
using var fixture = new EmptyRepositoryFixture();
376429
fixture.MakeACommit();
@@ -396,7 +449,10 @@ public void VerifyIssue1154CanForwardMergeMainToFeatureBranch()
396449
[Test]
397450
public void VerifyMergingMainIntoAFeatureBranchWorksWithMultipleBranches()
398451
{
399-
var configuration = GetConfigurationBuilder().Build();
452+
var configuration = GetConfigurationBuilder()
453+
.WithBranch("feature", builder => builder
454+
.WithIncrement(IncrementStrategy.Patch)
455+
).Build();
400456

401457
using var fixture = new EmptyRepositoryFixture();
402458
fixture.MakeACommit($"first in {MainBranch}");

0 commit comments

Comments
 (0)