Skip to content

Commit 484f3f4

Browse files
Direct project references were not checking the version number between them
1 parent 47e6c87 commit 484f3f4

File tree

1 file changed

+10
-1
lines changed

1 file changed

+10
-1
lines changed

dotnet/test/ProjectHealthTest/PackageVersionsConsistency.cs

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -216,9 +216,18 @@ private bool AnyDirectReferenceLessThanTransitiveVersion(ICollection<PackageVers
216216
else
217217
{
218218
Version directVersion = GetVersion(directReference.Version);
219-
return value.Any(k => GetVersion(k.Version) > directVersion);
219+
return value.Any(k => DirectReferenceLessThanTransitiveVersion(directVersion, k) || DiferentDirectReferences(directVersion, k));
220220
}
221221
}
222+
private bool DiferentDirectReferences(Version directVersion, PackageVersionItem k)
223+
{
224+
return (!k.Transitive && GetVersion(k.Version) != directVersion);
225+
}
226+
private bool DirectReferenceLessThanTransitiveVersion(Version directVersion, PackageVersionItem k)
227+
{
228+
return (k.Transitive && GetVersion(k.Version) > directVersion);
229+
}
230+
222231
private Version GetVersion(String versionString)
223232
{
224233
return Version.Parse(Regex.Match(versionString, VersionPattern).Value);

0 commit comments

Comments
 (0)