Skip to content

Commit 7d5f6c7

Browse files
committed
Merge pull request #596 from JakeGinnivan/ReintegrateDevelopFix
Reintegrate develop fix
2 parents e9da07f + 2aa1b8a commit 7d5f6c7

File tree

11 files changed

+99
-102
lines changed

11 files changed

+99
-102
lines changed

src/GitVersion.sln.DotSettings

Lines changed: 19 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,8 @@
143143
<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/WRAP_OBJECT_AND_COLLECTION_INITIALIZER_STYLE/@EntryValue">CHOP_ALWAYS</s:String>
144144
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/JavaScriptCodeFormatting/ALIGN_MULTIPLE_DECLARATION/@EntryValue">True</s:Boolean>
145145
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/JavaScriptCodeFormatting/JavaScriptFormatOther/ALIGN_MULTIPLE_DECLARATION/@EntryValue">True</s:Boolean>
146-
<s:String x:Key="/Default/CodeStyle/CSharpFileLayoutPatterns/Pattern/@EntryValue">&lt;Patterns xmlns="urn:schemas-jetbrains-com:member-reordering-patterns"&gt;&#xD;
146+
<s:String x:Key="/Default/CodeStyle/CSharpFileLayoutPatterns/Pattern/@EntryValue">&lt;?xml version="1.0" encoding="utf-16"?&gt;&#xD;
147+
&lt;Patterns xmlns="urn:schemas-jetbrains-com:member-reordering-patterns"&gt;&#xD;
147148
&lt;TypePattern DisplayName="COM interfaces or structs"&gt;&#xD;
148149
&lt;TypePattern.Match&gt;&#xD;
149150
&lt;Or&gt;&#xD;
@@ -154,77 +155,67 @@
154155
&lt;HasAttribute Name="System.Runtime.InteropServices.ComImport" /&gt;&#xD;
155156
&lt;/Or&gt;&#xD;
156157
&lt;/And&gt;&#xD;
157-
&lt;HasAttribute Name="System.Runtime.InteropServices.StructLayoutAttribute" /&gt;&#xD;
158+
&lt;Kind Is="Struct" /&gt;&#xD;
158159
&lt;/Or&gt;&#xD;
159160
&lt;/TypePattern.Match&gt;&#xD;
160161
&lt;/TypePattern&gt;&#xD;
161-
&#xD;
162162
&lt;TypePattern DisplayName="NUnit Test Fixtures" RemoveRegions="All"&gt;&#xD;
163163
&lt;TypePattern.Match&gt;&#xD;
164164
&lt;And&gt;&#xD;
165165
&lt;Kind Is="Class" /&gt;&#xD;
166-
&lt;HasAttribute Name="NUnit.Framework.TestFixtureAttribute" Inherited="true" /&gt;&#xD;
167-
&lt;HasAttribute Name="NUnit.Framework.TestCaseFixtureAttribute" Inherited="true" /&gt;&#xD;
166+
&lt;HasAttribute Name="NUnit.Framework.TestFixtureAttribute" Inherited="True" /&gt;&#xD;
167+
&lt;HasAttribute Name="NUnit.Framework.TestCaseFixtureAttribute" Inherited="True" /&gt;&#xD;
168168
&lt;/And&gt;&#xD;
169169
&lt;/TypePattern.Match&gt;&#xD;
170-
&#xD;
171170
&lt;Entry DisplayName="Setup/Teardown Methods"&gt;&#xD;
172171
&lt;Entry.Match&gt;&#xD;
173172
&lt;And&gt;&#xD;
174173
&lt;Kind Is="Method" /&gt;&#xD;
175174
&lt;Or&gt;&#xD;
176-
&lt;HasAttribute Name="NUnit.Framework.SetUpAttribute" Inherited="true" /&gt;&#xD;
177-
&lt;HasAttribute Name="NUnit.Framework.TearDownAttribute" Inherited="true" /&gt;&#xD;
178-
&lt;HasAttribute Name="NUnit.Framework.FixtureSetUpAttribute" Inherited="true" /&gt;&#xD;
179-
&lt;HasAttribute Name="NUnit.Framework.FixtureTearDownAttribute" Inherited="true" /&gt;&#xD;
175+
&lt;HasAttribute Name="NUnit.Framework.SetUpAttribute" Inherited="True" /&gt;&#xD;
176+
&lt;HasAttribute Name="NUnit.Framework.TearDownAttribute" Inherited="True" /&gt;&#xD;
177+
&lt;HasAttribute Name="NUnit.Framework.FixtureSetUpAttribute" Inherited="True" /&gt;&#xD;
178+
&lt;HasAttribute Name="NUnit.Framework.FixtureTearDownAttribute" Inherited="True" /&gt;&#xD;
180179
&lt;/Or&gt;&#xD;
181180
&lt;/And&gt;&#xD;
182181
&lt;/Entry.Match&gt;&#xD;
183182
&lt;/Entry&gt;&#xD;
184-
&#xD;
185183
&lt;Entry DisplayName="All other members" /&gt;&#xD;
186-
&#xD;
187-
&lt;Entry DisplayName="Test Methods" Priority="100"&gt;&#xD;
184+
&lt;Entry Priority="100" DisplayName="Test Methods"&gt;&#xD;
188185
&lt;Entry.Match&gt;&#xD;
189186
&lt;And&gt;&#xD;
190187
&lt;Kind Is="Method" /&gt;&#xD;
191-
&lt;HasAttribute Name="NUnit.Framework.TestAttribute" Inherited="false" /&gt;&#xD;
188+
&lt;HasAttribute Name="NUnit.Framework.TestAttribute" /&gt;&#xD;
192189
&lt;/And&gt;&#xD;
193190
&lt;/Entry.Match&gt;&#xD;
194-
&#xD;
195191
&lt;Entry.SortBy&gt;&#xD;
196192
&lt;Name /&gt;&#xD;
197193
&lt;/Entry.SortBy&gt;&#xD;
198194
&lt;/Entry&gt;&#xD;
199195
&lt;/TypePattern&gt;&#xD;
200-
&#xD;
201196
&lt;TypePattern DisplayName="Default Pattern"&gt;&#xD;
202-
&lt;Entry DisplayName="Public Delegates" Priority="100"&gt;&#xD;
197+
&lt;Entry Priority="100" DisplayName="Public Delegates"&gt;&#xD;
203198
&lt;Entry.Match&gt;&#xD;
204199
&lt;And&gt;&#xD;
205200
&lt;Access Is="Public" /&gt;&#xD;
206201
&lt;Kind Is="Delegate" /&gt;&#xD;
207202
&lt;/And&gt;&#xD;
208203
&lt;/Entry.Match&gt;&#xD;
209-
&#xD;
210204
&lt;Entry.SortBy&gt;&#xD;
211205
&lt;Name /&gt;&#xD;
212206
&lt;/Entry.SortBy&gt;&#xD;
213207
&lt;/Entry&gt;&#xD;
214-
&#xD;
215-
&lt;Entry DisplayName="Public Enums" Priority="100"&gt;&#xD;
208+
&lt;Entry Priority="100" DisplayName="Public Enums"&gt;&#xD;
216209
&lt;Entry.Match&gt;&#xD;
217210
&lt;And&gt;&#xD;
218211
&lt;Access Is="Public" /&gt;&#xD;
219212
&lt;Kind Is="Enum" /&gt;&#xD;
220213
&lt;/And&gt;&#xD;
221214
&lt;/Entry.Match&gt;&#xD;
222-
&#xD;
223215
&lt;Entry.SortBy&gt;&#xD;
224216
&lt;Name /&gt;&#xD;
225217
&lt;/Entry.SortBy&gt;&#xD;
226218
&lt;/Entry&gt;&#xD;
227-
&#xD;
228219
&lt;Entry DisplayName="Static Fields and Constants"&gt;&#xD;
229220
&lt;Entry.Match&gt;&#xD;
230221
&lt;Or&gt;&#xD;
@@ -235,17 +226,10 @@
235226
&lt;/And&gt;&#xD;
236227
&lt;/Or&gt;&#xD;
237228
&lt;/Entry.Match&gt;&#xD;
238-
&#xD;
239229
&lt;Entry.SortBy&gt;&#xD;
240-
&lt;Kind&gt;&#xD;
241-
&lt;Kind.Order&gt;&#xD;
242-
&lt;DeclarationKind&gt;Constant&lt;/DeclarationKind&gt;&#xD;
243-
&lt;DeclarationKind&gt;Field&lt;/DeclarationKind&gt;&#xD;
244-
&lt;/Kind.Order&gt;&#xD;
245-
&lt;/Kind&gt;&#xD;
230+
&lt;Kind Order="Constant Field" /&gt;&#xD;
246231
&lt;/Entry.SortBy&gt;&#xD;
247232
&lt;/Entry&gt;&#xD;
248-
&#xD;
249233
&lt;Entry DisplayName="Fields"&gt;&#xD;
250234
&lt;Entry.Match&gt;&#xD;
251235
&lt;And&gt;&#xD;
@@ -255,23 +239,19 @@
255239
&lt;/Not&gt;&#xD;
256240
&lt;/And&gt;&#xD;
257241
&lt;/Entry.Match&gt;&#xD;
258-
&#xD;
259242
&lt;Entry.SortBy&gt;&#xD;
260243
&lt;Readonly /&gt;&#xD;
261244
&lt;Name /&gt;&#xD;
262245
&lt;/Entry.SortBy&gt;&#xD;
263246
&lt;/Entry&gt;&#xD;
264-
&#xD;
265247
&lt;Entry DisplayName="Constructors"&gt;&#xD;
266248
&lt;Entry.Match&gt;&#xD;
267249
&lt;Kind Is="Constructor" /&gt;&#xD;
268250
&lt;/Entry.Match&gt;&#xD;
269-
&#xD;
270251
&lt;Entry.SortBy&gt;&#xD;
271-
&lt;Static/&gt;&#xD;
252+
&lt;Static /&gt;&#xD;
272253
&lt;/Entry.SortBy&gt;&#xD;
273254
&lt;/Entry&gt;&#xD;
274-
&#xD;
275255
&lt;Entry DisplayName="Properties, Indexers"&gt;&#xD;
276256
&lt;Entry.Match&gt;&#xD;
277257
&lt;Or&gt;&#xD;
@@ -280,30 +260,25 @@
280260
&lt;/Or&gt;&#xD;
281261
&lt;/Entry.Match&gt;&#xD;
282262
&lt;/Entry&gt;&#xD;
283-
&#xD;
284-
&lt;Entry DisplayName="Interface Implementations" Priority="100"&gt;&#xD;
263+
&lt;Entry Priority="100" DisplayName="Interface Implementations"&gt;&#xD;
285264
&lt;Entry.Match&gt;&#xD;
286265
&lt;And&gt;&#xD;
287266
&lt;Kind Is="Member" /&gt;&#xD;
288267
&lt;ImplementsInterface /&gt;&#xD;
289268
&lt;/And&gt;&#xD;
290269
&lt;/Entry.Match&gt;&#xD;
291-
&#xD;
292270
&lt;Entry.SortBy&gt;&#xD;
293-
&lt;ImplementsInterface Immediate="true" /&gt;&#xD;
271+
&lt;ImplementsInterface Immediate="True" /&gt;&#xD;
294272
&lt;/Entry.SortBy&gt;&#xD;
295273
&lt;/Entry&gt;&#xD;
296-
&#xD;
297274
&lt;Entry DisplayName="All other members" /&gt;&#xD;
298-
&#xD;
299275
&lt;Entry DisplayName="Nested Types"&gt;&#xD;
300276
&lt;Entry.Match&gt;&#xD;
301277
&lt;Kind Is="Type" /&gt;&#xD;
302278
&lt;/Entry.Match&gt;&#xD;
303279
&lt;/Entry&gt;&#xD;
304280
&lt;/TypePattern&gt;&#xD;
305-
&lt;/Patterns&gt;&#xD;
306-
</s:String>
281+
&lt;/Patterns&gt;</s:String>
307282
<s:String x:Key="/Default/CodeStyle/CSharpMemberOrderPattern/CustomPattern/@EntryValue">&lt;?xml version="1.0" encoding="utf-8" ?&gt;&#xD;
308283
&#xD;
309284
&lt;!--&#xD;
@@ -570,6 +545,7 @@ II.2.12 &lt;HandlesEvent /&gt;&#xD;
570545
<s:String x:Key="/Default/CodeStyle/Naming/VBNaming/PredefinedNamingRules/=TypesAndNamespaces/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="AaBb" /&gt;</s:String>
571546
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ECSharpFileLayoutPatternsUpgrade/@EntryIndexedValue">True</s:Boolean>
572547
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EAddAccessorOwnerDeclarationBracesMigration/@EntryIndexedValue">True</s:Boolean>
548+
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EAlwaysTreatStructAsNotReorderableMigration/@EntryIndexedValue">True</s:Boolean>
573549
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EMigrateBlankLinesAroundFieldToBlankLinesAroundProperty/@EntryIndexedValue">True</s:Boolean>
574550
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EMigrateThisQualifierSettings/@EntryIndexedValue">True</s:Boolean>
575551
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002EJavaScript_002ECodeStyle_002ESettingsUpgrade_002EJsCodeFormatterSettingsUpgrader/@EntryIndexedValue">True</s:Boolean>

src/GitVersionCore.Tests/Fixtures/RepositoryFixtureBase.cs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -124,17 +124,16 @@ public void MergeNoFF(string mergeTarget)
124124

125125
public void AssertFullSemver(string fullSemver, IRepository repository = null, string commitId = null)
126126
{
127-
Trace.WriteLine("---------");
127+
Console.WriteLine("---------");
128128

129-
var variables = GetVersion(repository, commitId);
130129
try
131130
{
131+
var variables = GetVersion(repository, commitId);
132132
variables.FullSemVer.ShouldBe(fullSemver);
133133
}
134134
catch (Exception)
135135
{
136-
if (repository != null)
137-
repository.DumpGraph();
136+
(repository ?? Repository).DumpGraph();
138137
throw;
139138
}
140139
if (commitId == null)
@@ -164,7 +163,7 @@ VersionVariables GetVersion(IRepository repository = null, string commitId = nul
164163
}
165164
catch (Exception)
166165
{
167-
Trace.WriteLine("Test failing, dumping repository graph");
166+
Console.WriteLine("Test failing, dumping repository graph");
168167
gitVersionContext.Repository.DumpGraph();
169168
throw;
170169
}

src/GitVersionCore.Tests/GitVersionContextBuilder.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ public GitVersionContext Build()
6565

6666
IRepository CreateRepository()
6767
{
68-
var mockBranch = new MockBranch("master") { new MockCommit { CommitterEx = SignatureBuilder.SignatureNow() } };
68+
var mockBranch = new MockBranch("master") { new MockCommit { CommitterEx = Constants.SignatureNow() } };
6969
var mockRepository = new MockRepository
7070
{
7171
Branches = new MockBranchCollection

src/GitVersionCore.Tests/GitVersionContextTests.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ public void CanInheritVersioningMode(VersioningMode mode)
1717
};
1818
ConfigurationProvider.ApplyDefaultsTo(config);
1919

20-
var mockBranch = new MockBranch("master") { new MockCommit { CommitterEx = SignatureBuilder.SignatureNow() } };
20+
var mockBranch = new MockBranch("master") { new MockCommit { CommitterEx = Constants.SignatureNow() } };
2121
var mockRepository = new MockRepository
2222
{
2323
Branches = new MockBranchCollection
@@ -48,12 +48,12 @@ public void UsesBranchSpecificConfigOverTopLevelDefaults()
4848
}
4949
};
5050
ConfigurationProvider.ApplyDefaultsTo(config);
51-
var develop = new MockBranch("develop") { new MockCommit { CommitterEx = SignatureBuilder.SignatureNow() } };
51+
var develop = new MockBranch("develop") { new MockCommit { CommitterEx = Constants.SignatureNow() } };
5252
var mockRepository = new MockRepository
5353
{
5454
Branches = new MockBranchCollection
5555
{
56-
new MockBranch("master") { new MockCommit { CommitterEx = SignatureBuilder.SignatureNow() } },
56+
new MockBranch("master") { new MockCommit { CommitterEx = Constants.SignatureNow() } },
5757
develop
5858
}
5959
};

src/GitVersionCore.Tests/GitVersionCore.Tests.csproj

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,6 @@
161161
<Compile Include="Mocks\MockTag.cs" />
162162
<Compile Include="Mocks\MockTagAnnotation.cs" />
163163
<Compile Include="Mocks\MockTagCollection.cs" />
164-
<Compile Include="Mocks\SignatureBuilder.cs" />
165164
<Compile Include="ModuleInitializer.cs" />
166165
<Compile Include="Fixtures\EmptyRepositoryFixture.cs" />
167166
<Compile Include="Helpers\GitTestExtensions.cs" />

src/GitVersionCore.Tests/IntegrationTests/FeatureBranchScenarios.cs

Lines changed: 30 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ public void ShouldInheritIncrementCorrectlyWithMultiplePossibleParentsAndWeirdly
2121

2222
//Merge it
2323
fixture.Repository.Checkout("development");
24-
fixture.Repository.Merge(feature123, SignatureBuilder.SignatureNow());
24+
fixture.Repository.Merge(feature123, Constants.SignatureNow());
2525

2626
//Create a second feature branch
2727
fixture.Repository.CreateBranch("feature/JIRA-124");
@@ -56,7 +56,7 @@ public void BranchCreatedAfterFastForwardMergeShouldInheritCorrectly()
5656

5757
//Merge it
5858
fixture.Repository.Checkout("unstable");
59-
fixture.Repository.Merge(feature123, SignatureBuilder.SignatureNow());
59+
fixture.Repository.Merge(feature123, Constants.SignatureNow());
6060

6161
//Create a second feature branch
6262
fixture.Repository.CreateBranch("feature/JIRA-124");
@@ -128,4 +128,32 @@ public void WhenTwoFeatureBranchPointToTheSameCommit()
128128
fixture.AssertFullSemver("0.1.0-feature2.1+1");
129129
}
130130
}
131+
132+
[Test]
133+
public void ShouldBePossibleToMergeDevelopForALongRunningBranchWhereDevelopAndMasterAreEqual()
134+
{
135+
using (var fixture = new EmptyRepositoryFixture(new Config() { VersioningMode = VersioningMode.ContinuousDeployment }))
136+
{
137+
fixture.Repository.MakeATaggedCommit("v1.0.0");
138+
139+
fixture.Repository.CreateBranch("develop");
140+
fixture.Repository.Checkout("develop");
141+
142+
fixture.Repository.CreateBranch("feature/longrunning");
143+
fixture.Repository.Checkout("feature/longrunning");
144+
fixture.Repository.MakeACommit();
145+
146+
fixture.Repository.Checkout("develop");
147+
fixture.Repository.MakeACommit();
148+
149+
fixture.Repository.Checkout("master");
150+
fixture.Repository.Merge(fixture.Repository.FindBranch("develop"), Constants.SignatureNow());
151+
fixture.Repository.ApplyTag("v1.1.0");
152+
153+
fixture.Repository.Checkout("feature/longrunning");
154+
fixture.Repository.Merge(fixture.Repository.FindBranch("develop"), Constants.SignatureNow());
155+
156+
fixture.AssertFullSemver("1.2.0-longrunning.2");
157+
}
158+
}
131159
}

src/GitVersionCore.Tests/Mocks/SignatureBuilder.cs

Lines changed: 0 additions & 15 deletions
This file was deleted.

src/GitVersionCore.Tests/VersionCalculation/BaseVersionCalculatorTests.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ class V1Strategy : BaseVersionStrategy
6060

6161
public V1Strategy(DateTimeOffset? when)
6262
{
63-
this.when = when == null ? null : new MockCommit { CommitterEx = when.Value.ToSignature() };
63+
this.when = when == null ? null : new MockCommit { CommitterEx = Constants.Signature(when.Value) };
6464
}
6565

6666
public override IEnumerable<BaseVersion> GetVersions(GitVersionContext context)
@@ -75,7 +75,7 @@ class V2Strategy : BaseVersionStrategy
7575

7676
public V2Strategy(DateTimeOffset? when)
7777
{
78-
this.when = when == null ? null : new MockCommit { CommitterEx = when.Value.ToSignature() };
78+
this.when = when == null ? null : new MockCommit { CommitterEx = Constants.Signature(when.Value) };
7979
}
8080

8181
public override IEnumerable<BaseVersion> GetVersions(GitVersionContext context)

0 commit comments

Comments
 (0)