@@ -575,26 +575,23 @@ def test_numpy_sbom(
575
575
component_purls = {
576
576
component ["purl" ].split ("@" )[0 ] for component in sbom_components [1 :]
577
577
}
578
+ # Package URL prefixes must match for a policy.
579
+ print (policy , component_purls )
578
580
if policy .startswith ("musllinux" ):
579
- assert component_purls == {
580
- "pkg:apk/alpine/libgcc" ,
581
- "pkg:apk/alpine/libgfortran" ,
582
- "pkg:apk/alpine/libquadmath" ,
583
- "pkg:apk/alpine/libstdc%2B%2B" ,
584
- "pkg:apk/alpine/openblas" ,
585
- }
581
+ assert all (purl .startswith ("pkg:apk/alpine/" ) for purl in component_purls )
586
582
elif policy == "manylinux_2_34_x86_64" :
587
- assert component_purls == {
588
- "pkg:rpm/almalinux/libgfortran" ,
589
- "pkg:rpm/almalinux/libquadmath" ,
590
- "pkg:rpm/almalinux/openblas-serial" ,
591
- }
583
+ assert all (
584
+ purl .startswith ("pkg:rpm/almalinux/" ) for purl in component_purls
585
+ )
592
586
else :
593
- assert component_purls == {
594
- "pkg:rpm/almalinux/libgfortran" ,
595
- "pkg:rpm/almalinux/libquadmath" ,
596
- "pkg:rpm/almalinux/openblas" ,
597
- }
587
+ assert all (
588
+ purl .startswith ("pkg:rpm/almalinux/" ) for purl in component_purls
589
+ )
590
+
591
+ # We expect libgfortran, libquadmath, and openblas* as dependencies.
592
+ assert any ("libgfortran" in purl for purl in component_purls )
593
+ assert any ("libquadmath" in purl for purl in component_purls )
594
+ assert any ("openblas" in purl for purl in component_purls )
598
595
599
596
assert len (sbom_dependencies ) == len (component_purls ) + 1
600
597
0 commit comments