tests to check prerelease <= release
Build on RHEL8 docker image / build (push) Successful in 5m19s
Build on RHEL9 docker image / build (push) Successful in 5m34s
Run Simulator Tests on local RHEL9 / build (push) Successful in 19m29s
Run Simulator Tests on local RHEL8 / build (push) Successful in 24m29s

This commit is contained in:
maliakal_d committed 2026-10-21 13:57:30 +02:00
1 parent c46e87f9f0
commit 9f2b30b740
2 files changed
+19 -2

No files matched your search

+6
View File
@@ -30,6 +30,12 @@ bool SemanticVersion::operator<=(const SemanticVersion &other) const {
return minor < other.minor;
if (patch != other.patch)
return patch < other.patch;
// A release version is greater than its prerelease
if (prerelease.empty() && !other.prerelease.empty())
return false;
if (!prerelease.empty() && other.prerelease.empty())
return true;
return prerelease <= other.prerelease;
}
+13 -2
View File
@@ -40,8 +40,8 @@ TEST_CASE("semantic version compares prerelease with no prerelease",
Version prerelease("10.1.1.rc 0x250512");
Version release("10.1.1 0x250512");
CHECK_FALSE(prerelease <= release);
CHECK(release <= prerelease);
CHECK(prerelease <= release);
CHECK_FALSE(release <= prerelease);
}
TEST_CASE(
@@ -85,6 +85,17 @@ TEST_CASE("semantic version", "[version]") {
CHECK(semver2.patch == 1);
CHECK(semver2.prerelease == "");
CHECK(version != version2);
CHECK(version2 <= version);
CHECK_FALSE(version <= version2);
auto version3 = Version("10.1.1.rc2 0x250512");
CHECK(version <= version3);
auto version4 = Version("10.1.1.rc3 0x250512");
CHECK(version3 <= version4);
auto release = Version("10.1.1 0x250512");
CHECK(version <= release);
auto dev_version = Version("developer 0x250512");
CHECK_FALSE(dev_version.hasSemanticVersioning());