Skip to content

Commit da75d3a

Browse files
committed
Fixing some develop tests
1 parent 7311fd5 commit da75d3a

File tree

6 files changed

+36
-8
lines changed

6 files changed

+36
-8
lines changed

GitVersionCore.Tests/GitVersionContextBuilder.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,12 @@ public GitVersionContextBuilder WithTaggedMaster()
2929
return this;
3030
}
3131

32+
public GitVersionContextBuilder AddCommit()
33+
{
34+
((MockBranch)repository.Head).Add(new MockCommit());
35+
return this;
36+
}
37+
3238
public GitVersionContextBuilder WithDevelopBranch()
3339
{
3440
repository = CreateRepository();

GitVersionCore.Tests/IntegrationTests/GitFlow/DevelopScenarios.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ public void CanChangeDevelopTagViaConfig()
4141
{
4242
fixture.Repository.MakeATaggedCommit("1.0.0");
4343
fixture.Repository.CreateBranch("develop").Checkout();
44-
fixture.AssertFullSemver("1.1.0-alpha.0+0");
44+
fixture.AssertFullSemver("1.0.0-alpha.1+0");
4545
}
4646
}
4747

@@ -55,7 +55,7 @@ public void CanHandleContinuousDelivery()
5555
fixture.Repository.MakeATaggedCommit("1.0.0");
5656
fixture.Repository.CreateBranch("develop").Checkout();
5757
fixture.Repository.MakeATaggedCommit("1.1.0-alpha7");
58-
fixture.AssertFullSemver("1.1.0-alpha.7+1");
58+
fixture.AssertFullSemver("1.1.0-alpha.7+0");
5959
}
6060
}
6161

@@ -68,7 +68,7 @@ public void CanClearDevelopTagViaConfig()
6868
{
6969
fixture.Repository.MakeATaggedCommit("1.0.0");
7070
fixture.Repository.CreateBranch("develop").Checkout();
71-
fixture.AssertFullSemver("1.1.0+0");
71+
fixture.AssertFullSemver("1.0.0+0");
7272
}
7373
}
7474

GitVersionCore.Tests/VersionCalculation/Strategies/LastTagBaseVersionStrategyTests.cs

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,16 +8,30 @@
88
public class LastTagBaseVersionStrategyTests
99
{
1010
[Test]
11-
public void ShouldAllowVersionIncremenet()
11+
public void ShouldAllowVersionIncrement()
1212
{
1313
var context = new GitVersionContextBuilder()
1414
.WithTaggedMaster()
15+
.AddCommit()
1516
.Build();
1617
var sut = new LastTagBaseVersionStrategy();
1718

1819
var baseVersion = sut.GetVersion(context);
1920

2021
baseVersion.ShouldIncrement.ShouldBe(true);
2122
}
23+
24+
[Test]
25+
public void ShouldNotAllowVersionIncrementWhenTagComesFromCurrentCommit()
26+
{
27+
var context = new GitVersionContextBuilder()
28+
.WithTaggedMaster()
29+
.Build();
30+
var sut = new LastTagBaseVersionStrategy();
31+
32+
var baseVersion = sut.GetVersion(context);
33+
34+
baseVersion.ShouldIncrement.ShouldBe(false);
35+
}
2236
}
2337
}

GitVersionCore/VersionCalculation/BaseVersionCalculators/LastTagBaseVersionStrategy.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,10 @@ public override BaseVersion GetVersion(GitVersionContext context)
66
{
77
VersionTaggedCommit version;
88
if (new LastTaggedReleaseFinder(context).GetVersion(out version))
9-
return new BaseVersion(true, version.SemVer, version.Commit);
9+
{
10+
var shouldIncrement = version.Commit != context.CurrentCommit;
11+
return new BaseVersion(shouldIncrement, version.SemVer, version.Commit);
12+
}
1013

1114
return null;
1215
}

GitVersionCore/VersionCalculation/MetaDataCalculator.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,10 @@ public SemanticVersionBuildMetaData Create(Commit baseVersionSource, GitVersionC
1414
SortBy = CommitSortStrategies.Topological | CommitSortStrategies.Time
1515
};
1616

17+
var commitsSinceTag = context.Repository.Commits.QueryBy(qf).Count();
18+
1719
return new SemanticVersionBuildMetaData(
18-
context.Repository.Commits.QueryBy(qf).Count(),
20+
commitsSinceTag,
1921
context.CurrentBranch.Name,
2022
context.CurrentCommit.Sha,
2123
context.CurrentCommit.When());

GitVersionCore/VersionCalculation/NewNextVersionCalculator.cs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,8 +57,11 @@ static void IncrementVersion(GitVersionContext context, BaseVersion baseVersion)
5757
}
5858
else
5959
{
60-
baseVersion.SemanticVersion.PreReleaseTag.Number = baseVersion.SemanticVersion.PreReleaseTag.Number ?? 0;
61-
baseVersion.SemanticVersion.PreReleaseTag.Number++;
60+
if (baseVersion.SemanticVersion.PreReleaseTag.Number != null)
61+
{
62+
baseVersion.SemanticVersion.PreReleaseTag.Number = baseVersion.SemanticVersion.PreReleaseTag.Number;
63+
baseVersion.SemanticVersion.PreReleaseTag.Number++;
64+
}
6265
}
6366
}
6467
}

0 commit comments

Comments
 (0)