semver/src/semver.tests
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Louis Seubert f9531fe112 fix: make SemanticVersionRange equality structural
The type was a record struct whose ==/Equals/GetHashCode were
synthesized from all fields, including the _sets array, so two
ranges that parse to the same constraint sets compared as
unequal (reference-sensitive on the array). This also broke
using ranges as dictionary keys, where lookup relies on value
equality.

Change the type to a plain readonly struct implementing
IEquatable<SemanticVersionRange> with structural equality over
the constraint sets (operation + version per comparator). The
custom ToString already existed, so no display behaviour is lost.

Add a failing-then-passing test.
2026-07-11 23:03:04 +02:00
..
.editorconfig feat: add initial project setup 2026-05-21 21:45:36 +02:00
Geekeey.SemVer.Tests.csproj feat: add initial project setup 2026-05-21 21:45:36 +02:00
SemanticVersionComparerTests.cs feat: add initial project setup 2026-05-21 21:45:36 +02:00
SemanticVersionRangeTests.cs fix: make SemanticVersionRange equality structural 2026-07-11 23:03:04 +02:00
SemanticVersionTests.cs fix: make ==/Equals ignore build metadata for precedence 2026-07-11 23:02:43 +02:00