Skip to content

Commit 0d81787

Browse files
authored
spec.py: fix comparison with multivalued variants (spack#47485)
1 parent bf11fb0 commit 0d81787

File tree

2 files changed

+5
-1
lines changed

2 files changed

+5
-1
lines changed

lib/spack/spack/test/spec_semantics.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1975,3 +1975,7 @@ def test_equality_discriminate_on_propagation(lhs, rhs):
19751975
s, t = Spec(lhs), Spec(rhs)
19761976
assert s != t
19771977
assert len({s, t}) == 2
1978+
1979+
1980+
def test_comparison_multivalued_variants():
1981+
assert Spec("x=a") < Spec("x=a,b") < Spec("x==a,b") < Spec("x==a,b,c")

lib/spack/spack/variant.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -378,8 +378,8 @@ def _value_setter(self, value: ValueType) -> None:
378378

379379
def _cmp_iter(self) -> Iterable:
380380
yield self.name
381-
yield from (str(v) for v in self.value_as_tuple)
382381
yield self.propagate
382+
yield from (str(v) for v in self.value_as_tuple)
383383

384384
def copy(self) -> "AbstractVariant":
385385
"""Returns an instance of a variant equivalent to self

0 commit comments

Comments
 (0)