@@ -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
264264def 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
290290def 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