Skip to content

Commit 46c2b42

Browse files
Support versions with string prefixes (such as "8.0.0-preview.3.23174.8" and "1.5.0-alpha.2") on ProjectHealthTest.
1 parent 816ff6a commit 46c2b42

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

dotnet/test/ProjectHealthTest/PackageVersionsConsistency.cs

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -194,7 +194,7 @@ private void TestPackageVersionConsistencyAcrossProjects(string targetFramework,
194194

195195
Assert.True(packagesWithIncoherentVersions.Count == 0, errorMessage);
196196
}
197-
197+
const string VersionPattern= @"[0-9]+(?:\.[0-9]+)+";
198198
private bool AnyDirectReferenceLessThanTransitiveVersion(ICollection<PackageVersionItem> value)
199199
{
200200
if (!value.Any(k => !k.Transitive))
@@ -204,11 +204,14 @@ private bool AnyDirectReferenceLessThanTransitiveVersion(ICollection<PackageVers
204204
return false;
205205
else
206206
{
207-
Version directVersion = new Version(directReference.Version);
208-
return value.Any(k => new Version(k.Version) > directVersion);
207+
Version directVersion = GetVersion(directReference.Version);
208+
return value.Any(k => GetVersion(k.Version) > directVersion);
209209
}
210210
}
211-
211+
private Version GetVersion(String versionString)
212+
{
213+
return Version.Parse(Regex.Match(versionString, VersionPattern).Value);
214+
}
212215
private bool IsTargetFramework(XmlDocument doc, string targetFramework)
213216
{
214217
XmlNode targetFrameworkNode = doc.SelectSingleNode(TARGET_FRAMEWORK);

0 commit comments

Comments
 (0)