99from utils import iterate_known_resource_versions
1010
1111
12- def get_sub_summary (path : Path ):
13- sub = yaml .load (path )
14- return {k : v for k , v in sub .items () if k != "source_name" }
12+ def get_sub_summaries (path : Path ):
13+ subs = yaml .load (path )
14+ if isinstance (subs , dict ): # account for previous single sub summary format
15+ subs = [subs ]
16+
17+ return [{k : v for k , v in sub .items () if k != "source_name" } for sub in subs ]
1518
1619
1720def main (
@@ -72,11 +75,11 @@ def main(
7275 # append static validation summaries from artifact
7376 spec_versions = set ()
7477 for sp in static_validation_summaries :
75- sub_summary = get_sub_summary (sp )
76- test_summary ["tests" ]["bioimageio" ].append (sub_summary )
77- spec_versions .add (Version (sub_summary ["bioimageio_spec_version" ]))
78+ for sub_summary in get_sub_summaries (sp ):
79+ test_summary ["tests" ]["bioimageio" ].append (sub_summary )
80+ spec_versions .add (Version (sub_summary ["bioimageio_spec_version" ]))
7881
79- success &= sub_summary .get ("status" ) == "passed"
82+ success &= sub_summary .get ("status" ) == "passed"
8083
8184 if local :
8285 dyn_sums = sorted (
@@ -95,10 +98,10 @@ def main(
9598 # append dynamic validation summaries from artifact
9699 core_versions = set ()
97100 for sp in dyn_sums :
98- sub_summary = get_sub_summary (sp )
99- test_summary ["tests" ]["bioimageio" ].append (sub_summary )
100- core_versions .add (Version (sub_summary ["bioimageio_core_version" ]))
101- success &= sub_summary .get ("status" ) == "passed"
101+ for sub_summary in get_sub_summaries (sp ):
102+ test_summary ["tests" ]["bioimageio" ].append (sub_summary )
103+ core_versions .add (Version (sub_summary ["bioimageio_core_version" ]))
104+ success &= sub_summary .get ("status" ) == "passed"
102105
103106 if spec_versions :
104107 test_summary ["bioimageio_spec_version" ] = str (max (spec_versions ))
@@ -122,7 +125,7 @@ def main(
122125 assert partner_id != "bioimageio"
123126 test_summary ["tests" ][partner_id ] = []
124127 for sp in (partner_folder / krv .resource_id / krv .version_id ).glob ("*test_summary*.yaml" ):
125- test_summary ["tests" ][partner_id ]. append ( get_sub_summary ( sp ) )
128+ test_summary ["tests" ][partner_id ] += get_sub_summaries ( sp )
126129
127130 # write updated test summary
128131 if test_summary != previous_test_summary :
0 commit comments