Skip to content

Commit 46990b2

Browse files
committed
Update resolver tests to define labels
Signed-off-by: Michał Górny <mgorny@quansight.com>
1 parent 9085d4c commit 46990b2

3 files changed

Lines changed: 123 additions & 115 deletions

File tree

tests/resolver/test_filtering.py

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,9 @@ def vdescs(vprops: list[VariantProperty]) -> list[VariantDescription]:
3232
vprop1, vprop2 = vprops
3333

3434
return [
35-
VariantDescription([vprop1]),
36-
VariantDescription([vprop2]),
37-
VariantDescription([vprop1, vprop2]),
35+
VariantDescription([vprop1], label="a"),
36+
VariantDescription([vprop2], label="b"),
37+
VariantDescription([vprop1, vprop2], label="c"),
3838
]
3939

4040

@@ -139,11 +139,11 @@ def test_filter_variants_by_namespaces(vdescs: list[VariantDescription]) -> None
139139
("vdescs", "forbidden_namespaces"),
140140
[
141141
(
142-
[VariantDescription([VariantProperty("a", "b", "c")])],
142+
[VariantDescription([VariantProperty("a", "b", "c")], label="test")],
143143
"not a list",
144144
),
145145
(
146-
[VariantDescription([VariantProperty("a", "b", "c")])],
146+
[VariantDescription([VariantProperty("a", "b", "c")], label="test")],
147147
[VariantProperty("not", "a", "str")],
148148
),
149149
("not a list", ["omnicorp"]),
@@ -245,11 +245,11 @@ def test_filter_variants_by_features(
245245
("vdescs", "forbidden_features"),
246246
[
247247
(
248-
[VariantDescription([VariantProperty("a", "b", "c")])],
248+
[VariantDescription([VariantProperty("a", "b", "c")], label="test")],
249249
"not a list",
250250
),
251251
(
252-
[VariantDescription([VariantProperty("a", "b", "c")])],
252+
[VariantDescription([VariantProperty("a", "b", "c")], label="test")],
253253
["not a `VariantFeature`"],
254254
),
255255
("not a list", VariantFeature("a", "b")),
@@ -453,22 +453,22 @@ def test_filter_variants_by_property(
453453
[VariantProperty("a", "b", "c")],
454454
),
455455
(
456-
[VariantDescription([VariantProperty("a", "b", "c")])],
456+
[VariantDescription([VariantProperty("a", "b", "c")], label="test")],
457457
"not a list",
458458
[VariantProperty("a", "b", "c")],
459459
),
460460
(
461-
[VariantDescription([VariantProperty("a", "b", "c")])],
461+
[VariantDescription([VariantProperty("a", "b", "c")], label="test")],
462462
["not a `VariantFeature`"],
463463
[VariantProperty("a", "b", "c")],
464464
),
465465
(
466-
[VariantDescription([VariantProperty("a", "b", "c")])],
466+
[VariantDescription([VariantProperty("a", "b", "c")], label="test")],
467467
[VariantProperty("a", "b", "c")],
468468
"not a list",
469469
),
470470
(
471-
[VariantDescription([VariantProperty("a", "b", "c")])],
471+
[VariantDescription([VariantProperty("a", "b", "c")], label="test")],
472472
[VariantProperty("a", "b", "c")],
473473
["not a `VariantFeature`"],
474474
),

tests/resolver/test_lib.py

Lines changed: 97 additions & 97 deletions
Original file line numberDiff line numberDiff line change
@@ -100,82 +100,82 @@ def vdescs(vprops: list[VariantProperty]) -> list[VariantDescription]:
100100
# Important: vprop4 and vprop5 are mutually exclusive
101101
return [
102102
# variants with 5 properties
103-
VariantDescription([vprop1, vprop2, vprop3, vprop4, vprop6]),
104-
VariantDescription([vprop1, vprop2, vprop3, vprop5, vprop6]),
103+
VariantDescription([vprop1, vprop2, vprop3, vprop4, vprop6], label="a"),
104+
VariantDescription([vprop1, vprop2, vprop3, vprop5, vprop6], label="b"),
105105

106106
# variants with 4 properties
107-
VariantDescription([vprop1, vprop2, vprop3, vprop4]), # - vprop6
108-
VariantDescription([vprop1, vprop2, vprop3, vprop5]), # - vprop6
107+
VariantDescription([vprop1, vprop2, vprop3, vprop4], label="c"), # - vprop6
108+
VariantDescription([vprop1, vprop2, vprop3, vprop5], label="d"), # - vprop6
109109

110-
VariantDescription([vprop1, vprop2, vprop3, vprop6]), # - vprop4/5
110+
VariantDescription([vprop1, vprop2, vprop3, vprop6], label="c"), # - vprop4/5
111111

112-
VariantDescription([vprop1, vprop2, vprop4, vprop6]), # - vprop3
113-
VariantDescription([vprop1, vprop2, vprop5, vprop6]), # - vprop3
112+
VariantDescription([vprop1, vprop2, vprop4, vprop6], label="d"), # - vprop3
113+
VariantDescription([vprop1, vprop2, vprop5, vprop6], label="e"), # - vprop3
114114

115-
VariantDescription([vprop1, vprop3, vprop4, vprop6]), # - vprop2
116-
VariantDescription([vprop1, vprop3, vprop5, vprop6]), # - vprop2
115+
VariantDescription([vprop1, vprop3, vprop4, vprop6], label="f"), # - vprop2
116+
VariantDescription([vprop1, vprop3, vprop5, vprop6], label="g"), # - vprop2
117117

118-
VariantDescription([vprop2, vprop3, vprop5, vprop6]), # - vprop1
119-
VariantDescription([vprop2, vprop3, vprop5, vprop6]), # - vprop1
118+
VariantDescription([vprop2, vprop3, vprop5, vprop6], label="h"), # - vprop1
119+
VariantDescription([vprop2, vprop3, vprop5, vprop6], label="i"), # - vprop1
120120

121121
# variants with 3 properties
122122
# --- vprop1 --- #
123-
VariantDescription([vprop1, vprop2, vprop3]),
124-
VariantDescription([vprop1, vprop2, vprop4]),
125-
VariantDescription([vprop1, vprop2, vprop5]),
126-
VariantDescription([vprop1, vprop2, vprop6]),
123+
VariantDescription([vprop1, vprop2, vprop3], label="j"),
124+
VariantDescription([vprop1, vprop2, vprop4], label="k"),
125+
VariantDescription([vprop1, vprop2, vprop5], label="l"),
126+
VariantDescription([vprop1, vprop2, vprop6], label="m"),
127127

128-
VariantDescription([vprop1, vprop3, vprop4]),
129-
VariantDescription([vprop1, vprop3, vprop5]),
130-
VariantDescription([vprop1, vprop3, vprop6]),
128+
VariantDescription([vprop1, vprop3, vprop4], label="n"),
129+
VariantDescription([vprop1, vprop3, vprop5], label="o"),
130+
VariantDescription([vprop1, vprop3, vprop6], label="p"),
131131

132-
VariantDescription([vprop1, vprop4, vprop6]),
133-
VariantDescription([vprop1, vprop5, vprop6]),
132+
VariantDescription([vprop1, vprop4, vprop6], label="q"),
133+
VariantDescription([vprop1, vprop5, vprop6], label="r"),
134134

135135
# --- vprop2 --- #
136-
VariantDescription([vprop2, vprop3, vprop4]),
137-
VariantDescription([vprop2, vprop3, vprop5]),
138-
VariantDescription([vprop2, vprop3, vprop6]),
136+
VariantDescription([vprop2, vprop3, vprop4], label="s"),
137+
VariantDescription([vprop2, vprop3, vprop5], label="t"),
138+
VariantDescription([vprop2, vprop3, vprop6], label="u"),
139139

140-
VariantDescription([vprop2, vprop4, vprop6]),
141-
VariantDescription([vprop2, vprop5, vprop6]),
140+
VariantDescription([vprop2, vprop4, vprop6], label="v"),
141+
VariantDescription([vprop2, vprop5, vprop6], label="w"),
142142

143143
# --- vprop3 --- #
144-
VariantDescription([vprop3, vprop4, vprop6]),
145-
VariantDescription([vprop3, vprop5, vprop6]),
144+
VariantDescription([vprop3, vprop4, vprop6], label="x"),
145+
VariantDescription([vprop3, vprop5, vprop6], label="y"),
146146

147147
# variants with 2 properties
148148
# --- vprop1 --- #
149-
VariantDescription([vprop1, vprop2]),
150-
VariantDescription([vprop1, vprop3]),
151-
VariantDescription([vprop1, vprop4]),
152-
VariantDescription([vprop1, vprop5]),
153-
VariantDescription([vprop1, vprop6]),
149+
VariantDescription([vprop1, vprop2], label="z"),
150+
VariantDescription([vprop1, vprop3], label="aa"),
151+
VariantDescription([vprop1, vprop4], label="ab"),
152+
VariantDescription([vprop1, vprop5], label="ac"),
153+
VariantDescription([vprop1, vprop6], label="ad"),
154154

155155
# --- vprop2 --- #
156-
VariantDescription([vprop2, vprop3]),
157-
VariantDescription([vprop2, vprop4]),
158-
VariantDescription([vprop2, vprop5]),
159-
VariantDescription([vprop2, vprop6]),
156+
VariantDescription([vprop2, vprop3], label="ae"),
157+
VariantDescription([vprop2, vprop4], label="af"),
158+
VariantDescription([vprop2, vprop5], label="ag"),
159+
VariantDescription([vprop2, vprop6], label="ah"),
160160

161161
# --- vprop3 --- #
162-
VariantDescription([vprop3, vprop4]),
163-
VariantDescription([vprop3, vprop5]),
164-
VariantDescription([vprop3, vprop6]),
162+
VariantDescription([vprop3, vprop4], label="ai"),
163+
VariantDescription([vprop3, vprop5], label="aj"),
164+
VariantDescription([vprop3, vprop6], label="ak"),
165165

166166
# --- vprop4 --- #
167-
VariantDescription([vprop4, vprop6]),
167+
VariantDescription([vprop4, vprop6], label="al"),
168168

169169
# --- vprop5 --- #
170-
VariantDescription([vprop5, vprop6]),
170+
VariantDescription([vprop5, vprop6], label="am"),
171171

172172
# variants with 1 property
173-
VariantDescription([vprop1]),
174-
VariantDescription([vprop2]),
175-
VariantDescription([vprop3]),
176-
VariantDescription([vprop4]),
177-
VariantDescription([vprop5]),
178-
VariantDescription([vprop6]),
173+
VariantDescription([vprop1], label="an"),
174+
VariantDescription([vprop2], label="ao"),
175+
VariantDescription([vprop3], label="ap"),
176+
VariantDescription([vprop4], label="aq"),
177+
VariantDescription([vprop5], label="ar"),
178+
VariantDescription([vprop6], label="as"),
179179
]
180180
# fmt: on
181181

@@ -207,7 +207,7 @@ def test_filter_variants_only_one_prop_allowed(
207207
vdescs=inputs_vdescs,
208208
allowed_properties=[vprop4],
209209
)
210-
) == [VariantDescription([vprop4])]
210+
) == [VariantDescription([vprop4], label="aq")]
211211

212212
assert (
213213
list(
@@ -258,7 +258,7 @@ def test_filter_variants_forbidden_feature_allowed_prop(
258258
allowed_properties=[vprop4],
259259
forbidden_features=[vprop2.feature_object],
260260
)
261-
) == [VariantDescription([vprop4])]
261+
) == [VariantDescription([vprop4], label="aq")]
262262

263263

264264
def test_filter_variants_forbidden_namespace_allowed_prop(
@@ -276,15 +276,15 @@ def test_filter_variants_forbidden_namespace_allowed_prop(
276276
allowed_properties=[vprop4],
277277
forbidden_namespaces=["NotExisting"],
278278
)
279-
) == [VariantDescription([vprop4])]
279+
) == [VariantDescription([vprop4], label="aq")]
280280

281281
assert list(
282282
filter_variants(
283283
vdescs=inputs_vdescs,
284284
allowed_properties=[vprop4],
285285
forbidden_namespaces=[vprop1.namespace],
286286
)
287-
) == [VariantDescription([vprop4])]
287+
) == [VariantDescription([vprop4], label="aq")]
288288

289289

290290
def test_filter_variants_only_remove_duplicates(
@@ -320,22 +320,22 @@ def test_filter_variants_remove_duplicates_and_namespaces(
320320

321321
expected_vdescs = [
322322
# --- vprop3 --- #
323-
VariantDescription([vprop3, vprop4, vprop6]),
324-
VariantDescription([vprop3, vprop5, vprop6]),
323+
VariantDescription([vprop3, vprop4, vprop6], label="test"),
324+
VariantDescription([vprop3, vprop5, vprop6], label="test"),
325325
# variants with 2 properties
326326
# --- vprop3 --- #
327-
VariantDescription([vprop3, vprop4]),
328-
VariantDescription([vprop3, vprop5]),
329-
VariantDescription([vprop3, vprop6]),
327+
VariantDescription([vprop3, vprop4], label="test"),
328+
VariantDescription([vprop3, vprop5], label="test"),
329+
VariantDescription([vprop3, vprop6], label="test"),
330330
# --- vprop4 --- #
331-
VariantDescription([vprop4, vprop6]),
331+
VariantDescription([vprop4, vprop6], label="test"),
332332
# --- vprop5 --- #
333-
VariantDescription([vprop5, vprop6]),
333+
VariantDescription([vprop5, vprop6], label="test"),
334334
# variants with 1 property
335-
VariantDescription([vprop3]),
336-
VariantDescription([vprop4]),
337-
VariantDescription([vprop5]),
338-
VariantDescription([vprop6]),
335+
VariantDescription([vprop3], label="test"),
336+
VariantDescription([vprop4], label="test"),
337+
VariantDescription([vprop5], label="test"),
338+
VariantDescription([vprop6], label="test"),
339339
# Null-Variant is never removed and last
340340
VariantDescription(),
341341
]
@@ -379,12 +379,12 @@ def test_filter_variants_remove_duplicates_and_features(
379379
expected_vdescs = [
380380
# variants with 2 properties
381381
# --- vprop1 --- #
382-
VariantDescription([vprop1, vprop4]),
383-
VariantDescription([vprop1, vprop5]),
382+
VariantDescription([vprop1, vprop4], label="test"),
383+
VariantDescription([vprop1, vprop5], label="test"),
384384
# variants with 1 property
385-
VariantDescription([vprop1]),
386-
VariantDescription([vprop4]),
387-
VariantDescription([vprop5]),
385+
VariantDescription([vprop1], label="test"),
386+
VariantDescription([vprop4], label="test"),
387+
VariantDescription([vprop5], label="test"),
388388
# Null-Variant is never removed and last
389389
VariantDescription(),
390390
]
@@ -434,12 +434,12 @@ def test_filter_variants_remove_duplicates_and_properties(
434434
expected_vdescs = [
435435
# variants with 2 properties
436436
# --- vprop1 --- #
437-
VariantDescription([vprop1, vprop4]),
438-
VariantDescription([vprop1, vprop5]),
437+
VariantDescription([vprop1, vprop4], label="test"),
438+
VariantDescription([vprop1, vprop5], label="test"),
439439
# variants with 1 property
440-
VariantDescription([vprop1]),
441-
VariantDescription([vprop4]),
442-
VariantDescription([vprop5]),
440+
VariantDescription([vprop1], label="test"),
441+
VariantDescription([vprop4], label="test"),
442+
VariantDescription([vprop5], label="test"),
443443
# Null-Variant is never removed and last
444444
VariantDescription(),
445445
]
@@ -520,48 +520,48 @@ def test_sort_and_filter_supported_variants(
520520
# 1. Everything with vprop6
521521
# 1.1. + vprop3
522522
# 1.1.1. + vprop5
523-
VariantDescription([vprop1, vprop3, vprop5, vprop6]),
524-
VariantDescription([vprop3, vprop5, vprop6]),
523+
VariantDescription([vprop1, vprop3, vprop5, vprop6], label="g"),
524+
VariantDescription([vprop3, vprop5, vprop6], label="y"),
525525
# 1.1.2. + vprop4
526-
VariantDescription([vprop1, vprop3, vprop4, vprop6]),
527-
VariantDescription([vprop3, vprop4, vprop6]),
526+
VariantDescription([vprop1, vprop3, vprop4, vprop6], label="f"),
527+
VariantDescription([vprop3, vprop4, vprop6], label="x"),
528528
# 1.1.3. + vprop1
529-
VariantDescription([vprop1, vprop3, vprop6]),
529+
VariantDescription([vprop1, vprop3, vprop6], label="p"),
530530
# 1.1.4. vprop6 + vprop3
531-
VariantDescription([vprop3, vprop6]),
531+
VariantDescription([vprop3, vprop6], label="ak"),
532532
# 1.2. + vprop5
533-
VariantDescription([vprop1, vprop5, vprop6]),
534-
VariantDescription([vprop5, vprop6]),
533+
VariantDescription([vprop1, vprop5, vprop6], label="r"),
534+
VariantDescription([vprop5, vprop6], label="am"),
535535
# 1.3. + vprop4
536-
VariantDescription([vprop1, vprop4, vprop6]),
537-
VariantDescription([vprop4, vprop6]),
536+
VariantDescription([vprop1, vprop4, vprop6], label="q"),
537+
VariantDescription([vprop4, vprop6], label="al"),
538538
# 1.4. + vprop1
539-
VariantDescription([vprop1, vprop6]),
539+
VariantDescription([vprop1, vprop6], label="ad"),
540540
# 1. sole vprop6
541-
VariantDescription([vprop6]),
541+
VariantDescription([vprop6], label="as"),
542542

543543
# 2. Everything with vprop3
544544
# 2.1. + vprop5
545-
VariantDescription([vprop1, vprop3, vprop5]),
546-
VariantDescription([vprop3, vprop5]),
545+
VariantDescription([vprop1, vprop3, vprop5], label="o"),
546+
VariantDescription([vprop3, vprop5], label="aj"),
547547
# 2.2. + vprop4
548-
VariantDescription([vprop1, vprop3, vprop4]),
549-
VariantDescription([vprop3, vprop4]),
548+
VariantDescription([vprop1, vprop3, vprop4], label="n"),
549+
VariantDescription([vprop3, vprop4], label="ai"),
550550
# 2.3. + vprop1
551-
VariantDescription([vprop1, vprop3]),
551+
VariantDescription([vprop1, vprop3], label="aa"),
552552
# 2. sole vprop3
553-
VariantDescription([vprop3]),
553+
VariantDescription([vprop3], label="ap"),
554554

555555
# 3. vprop5
556-
VariantDescription([vprop1, vprop5]),
557-
VariantDescription([vprop5]),
556+
VariantDescription([vprop1, vprop5], label="ac"),
557+
VariantDescription([vprop5], label="ar"),
558558

559559
# 4. vprop4
560-
VariantDescription([vprop1, vprop4]),
561-
VariantDescription([vprop4]),
560+
VariantDescription([vprop1, vprop4], label="ab"),
561+
VariantDescription([vprop4], label="aq"),
562562

563563
# 5. sole vprop1
564-
VariantDescription([vprop1]),
564+
VariantDescription([vprop1], label="an"),
565565

566566
# Null-Variant is never removed and last - Implicitly added
567567
VariantDescription(),
@@ -590,11 +590,11 @@ def test_sort_and_filter_supported_variants(
590590
("vdescs", "feature_priorities"),
591591
[
592592
(
593-
[VariantDescription([VariantProperty("a", "b", "c")])],
593+
[VariantDescription([VariantProperty("a", "b", "c")], label="test")],
594594
"not a list",
595595
),
596596
(
597-
[VariantDescription([VariantProperty("a", "b", "c")])],
597+
[VariantDescription([VariantProperty("a", "b", "c")], label="test")],
598598
{"a": [VariantFeature("not_a", "variantproperty")]},
599599
),
600600
("not a list", {"a": ["a"]}),

0 commit comments

Comments
 (0)