From fe54868fc7e5f624685d9700e39194944446aca1 Mon Sep 17 00:00:00 2001 From: Keshav Priyadarshi Date: Wed, 29 Apr 2026 14:56:54 +0530 Subject: [PATCH] fix: return None when from_versions is called with empty constraints Signed-off-by: Keshav Priyadarshi --- src/univers/version_range.py | 2 +- tests/test_version_range.py | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/univers/version_range.py b/src/univers/version_range.py index 0162e06c..e25a355c 100644 --- a/src/univers/version_range.py +++ b/src/univers/version_range.py @@ -183,7 +183,7 @@ def from_versions(cls, sequence): version_obj = cls.version_class(version) constraint = VersionConstraint(comparator="=", version=version_obj) constraints.append(constraint) - return cls(constraints=constraints) + return cls(constraints=constraints) if constraints else None def is_star(self): return len(self.constraints) == 1 and self.constraints[0].is_star() diff --git a/tests/test_version_range.py b/tests/test_version_range.py index af71809c..fc84188c 100644 --- a/tests/test_version_range.py +++ b/tests/test_version_range.py @@ -220,6 +220,13 @@ def test_AlpineLinuxVersionRange_from_versions(): assert version_range == expected +def test_VersionRange_from_versions_with_empty_constraints(): + sequence = [] + expected = None + version_range = AlpineLinuxVersionRange.from_versions(sequence) + assert version_range == expected + + def test_apk_in_RANGE_CLASS_BY_SCHEMES(): assert RANGE_CLASS_BY_SCHEMES["apk"] is AlpineLinuxVersionRange