Loading ci/basop-pages/create_report_pages.py +9 −40 Original line number Diff line number Diff line Loading @@ -35,14 +35,11 @@ Comparing: <li><a href="{job_name}--merged_csv--{id_current}.csv">Merged csv data</a></li> </ul> {images_mld} {images_diff} {images_ssnr} <br> <h2><a href="summary_{job_name}.html">Summary page</a></h2> <br> <br> <b>How is the table sorted?</b> <ul> <li>Cases with result ERROR or invalid/missing values for the numerical measures are given first</li> Loading Loading @@ -122,7 +119,6 @@ def create_subpage( id_current: int, id_previous: int, job_name: str, histogram, ): merged_reports = merge_and_cleanup_mld_reports( csv_current, csv_previous, id_current, id_previous Loading @@ -145,32 +141,6 @@ def create_subpage( table_body = "\n".join( tr_from_row(row, id_current, id_previous) for row in merged_reports ) if histogram: images_mld = ( f"<h2>MLD summary {job_name}</h2>\n" + " ".join( [f"<img src=images/summary_{id_current}_MLD_{x}.png>" for x in FORMATS] ) + f'\n<br><a href="images/summary_{id_current}_MLD.csv">summary_{id_current}_MLD.csv</a>' ) images_ssnr = ( f"<h2>MIN_SSNR summary {job_name}</h2>\n" + " ".join( [f"<img src=images/summary_{id_current}_SSNR_{x}.png>" for x in FORMATS] ) + f'\n<br><a href="images/summary_{id_current}_SSNR.csv">summary_{id_current}_SSNR.csv</a>' ) images_diff = ( f"<h2>MAX ABS DIFFERENCE summary {job_name}</h2>\n" + " ".join( [f"<img src=images/summary_{id_current}_DIFF_{x}.png>" for x in FORMATS] ) + f'\n<br><a href="images/summary_{id_current}_DIFF.csv">summary_{id_current}_DIFF.csv</a>' ) else: images_mld = "" images_ssnr = "" images_diff = "" new_subpage = SUBPAGE_TMPL_CSS + SUBPAGE_TMPL_HTML.format( id_current=id_current, Loading @@ -179,9 +149,6 @@ def create_subpage( job_name=job_name, table_header_a=table_header_a, table_header_b=table_header_b, images_mld=images_mld, images_ssnr=images_ssnr, images_diff=images_diff, ) with open(html_out, "w") as f: f.write(new_subpage) Loading Loading @@ -324,7 +291,10 @@ def merge_tables(tbl1, tbl2, suffix1, suffix2, merge_key, other_keys): if row1[merge_key] == row2[merge_key]: new_row[merge_key] = row1[merge_key] for key in other_keys: if key in row2: # In case key is missing, just insert a blank new_row[f"{key}-{suffix2}"] = row2[key] else: new_row[f"{key}-{suffix2}"] = "" break merged.append(new_row) Loading @@ -332,6 +302,7 @@ def merge_tables(tbl1, tbl2, suffix1, suffix2, merge_key, other_keys): return merged if __name__ == "__main__": parser = argparse.ArgumentParser() parser.add_argument("html_out") Loading @@ -341,7 +312,6 @@ if __name__ == "__main__": parser.add_argument("id_current", type=int) parser.add_argument("id_previous", type=int) parser.add_argument("job_name") parser.add_argument("--histogram", action="store_true") args = parser.parse_args() create_subpage( Loading @@ -352,5 +322,4 @@ if __name__ == "__main__": args.id_current, args.id_previous, args.job_name, args.histogram, ) ci/basop-pages/create_summary_page.py 0 → 100644 +55 −0 Original line number Diff line number Diff line import argparse from create_report_pages import SUBPAGE_TMPL_CSS, FORMATS MEASURES = ["MLD","DIFF","SSNR"] SUMMARY_PAGE_TMPL_HTML = """ <h1>Summary for job {job_name}, ID: {id_current}</h1> {images} """ def create_summary_page( html_out, id_current: int, job_name: str, ): images = histogram_summary(job_name) new_summary_page = SUBPAGE_TMPL_CSS + SUMMARY_PAGE_TMPL_HTML.format( id_current=id_current, job_name=job_name, images=images, ) with open(html_out, "w") as f: f.write(new_summary_page) def histogram_summary( job_name:str, ): images = "<hr>" for m in MEASURES: images += ( f"<h2>{m} summary {job_name}</h2>\n" + " ".join( [f"<img src=images_{job_name}/summary_{m}_{x}.png>" for x in FORMATS] ) + f'\n<br><a href="images_{job_name}/summary_{m}.csv">summary_{m}.csv</a><hr>\n\n' ) return images if __name__ == "__main__": parser = argparse.ArgumentParser() parser.add_argument("html_out") parser.add_argument("id_current", type=int) parser.add_argument("job_name") args = parser.parse_args() create_summary_page( args.html_out, args.id_current, args.job_name, ) Loading
ci/basop-pages/create_report_pages.py +9 −40 Original line number Diff line number Diff line Loading @@ -35,14 +35,11 @@ Comparing: <li><a href="{job_name}--merged_csv--{id_current}.csv">Merged csv data</a></li> </ul> {images_mld} {images_diff} {images_ssnr} <br> <h2><a href="summary_{job_name}.html">Summary page</a></h2> <br> <br> <b>How is the table sorted?</b> <ul> <li>Cases with result ERROR or invalid/missing values for the numerical measures are given first</li> Loading Loading @@ -122,7 +119,6 @@ def create_subpage( id_current: int, id_previous: int, job_name: str, histogram, ): merged_reports = merge_and_cleanup_mld_reports( csv_current, csv_previous, id_current, id_previous Loading @@ -145,32 +141,6 @@ def create_subpage( table_body = "\n".join( tr_from_row(row, id_current, id_previous) for row in merged_reports ) if histogram: images_mld = ( f"<h2>MLD summary {job_name}</h2>\n" + " ".join( [f"<img src=images/summary_{id_current}_MLD_{x}.png>" for x in FORMATS] ) + f'\n<br><a href="images/summary_{id_current}_MLD.csv">summary_{id_current}_MLD.csv</a>' ) images_ssnr = ( f"<h2>MIN_SSNR summary {job_name}</h2>\n" + " ".join( [f"<img src=images/summary_{id_current}_SSNR_{x}.png>" for x in FORMATS] ) + f'\n<br><a href="images/summary_{id_current}_SSNR.csv">summary_{id_current}_SSNR.csv</a>' ) images_diff = ( f"<h2>MAX ABS DIFFERENCE summary {job_name}</h2>\n" + " ".join( [f"<img src=images/summary_{id_current}_DIFF_{x}.png>" for x in FORMATS] ) + f'\n<br><a href="images/summary_{id_current}_DIFF.csv">summary_{id_current}_DIFF.csv</a>' ) else: images_mld = "" images_ssnr = "" images_diff = "" new_subpage = SUBPAGE_TMPL_CSS + SUBPAGE_TMPL_HTML.format( id_current=id_current, Loading @@ -179,9 +149,6 @@ def create_subpage( job_name=job_name, table_header_a=table_header_a, table_header_b=table_header_b, images_mld=images_mld, images_ssnr=images_ssnr, images_diff=images_diff, ) with open(html_out, "w") as f: f.write(new_subpage) Loading Loading @@ -324,7 +291,10 @@ def merge_tables(tbl1, tbl2, suffix1, suffix2, merge_key, other_keys): if row1[merge_key] == row2[merge_key]: new_row[merge_key] = row1[merge_key] for key in other_keys: if key in row2: # In case key is missing, just insert a blank new_row[f"{key}-{suffix2}"] = row2[key] else: new_row[f"{key}-{suffix2}"] = "" break merged.append(new_row) Loading @@ -332,6 +302,7 @@ def merge_tables(tbl1, tbl2, suffix1, suffix2, merge_key, other_keys): return merged if __name__ == "__main__": parser = argparse.ArgumentParser() parser.add_argument("html_out") Loading @@ -341,7 +312,6 @@ if __name__ == "__main__": parser.add_argument("id_current", type=int) parser.add_argument("id_previous", type=int) parser.add_argument("job_name") parser.add_argument("--histogram", action="store_true") args = parser.parse_args() create_subpage( Loading @@ -352,5 +322,4 @@ if __name__ == "__main__": args.id_current, args.id_previous, args.job_name, args.histogram, )
ci/basop-pages/create_summary_page.py 0 → 100644 +55 −0 Original line number Diff line number Diff line import argparse from create_report_pages import SUBPAGE_TMPL_CSS, FORMATS MEASURES = ["MLD","DIFF","SSNR"] SUMMARY_PAGE_TMPL_HTML = """ <h1>Summary for job {job_name}, ID: {id_current}</h1> {images} """ def create_summary_page( html_out, id_current: int, job_name: str, ): images = histogram_summary(job_name) new_summary_page = SUBPAGE_TMPL_CSS + SUMMARY_PAGE_TMPL_HTML.format( id_current=id_current, job_name=job_name, images=images, ) with open(html_out, "w") as f: f.write(new_summary_page) def histogram_summary( job_name:str, ): images = "<hr>" for m in MEASURES: images += ( f"<h2>{m} summary {job_name}</h2>\n" + " ".join( [f"<img src=images_{job_name}/summary_{m}_{x}.png>" for x in FORMATS] ) + f'\n<br><a href="images_{job_name}/summary_{m}.csv">summary_{m}.csv</a><hr>\n\n' ) return images if __name__ == "__main__": parser = argparse.ArgumentParser() parser.add_argument("html_out") parser.add_argument("id_current", type=int) parser.add_argument("job_name") args = parser.parse_args() create_summary_page( args.html_out, args.id_current, args.job_name, )