From 2b3141879bc84dac2c37b430bbca9eb58e014bd8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A1nos=20Benjamin=20Antal?= <benjamin.antal@memgraph.io> Date: Thu, 9 Feb 2023 13:17:46 +0100 Subject: [PATCH] Make the output table nicer for comparing results --- tests/mgbench/compare_results.py | 35 ++++++++++++++++++++------------ 1 file changed, 22 insertions(+), 13 deletions(-) diff --git a/tests/mgbench/compare_results.py b/tests/mgbench/compare_results.py index f10ec8bab..46da74270 100755 --- a/tests/mgbench/compare_results.py +++ b/tests/mgbench/compare_results.py @@ -123,26 +123,35 @@ def generate_remarkup(fields, data): ret += " <tr>\n" ret += " <th>Testcode</th>\n" ret += ( - "\n".join(map(lambda x: " <th>{}</th>".format(x["name"].replace("_", " ").capitalize()), fields)) + "\n" + "\n".join( + map( + lambda x: " <th>{}</th>".format(x["name"].replace("_", " ").capitalize()), + fields, + ) + ) + + "\n" ) ret += " </tr>\n" for testcode in sorted(data.keys()): ret += " <tr>\n" ret += " <td>{}</td>\n".format(testcode) for field in fields: - result = data[testcode][field["name"]] - value = result["value"] * field["scaling"] - if "diff" in result: - diff = result["diff"] - arrow = "arrow-up" if diff >= 0 else "arrow-down" - if not (field["positive_diff_better"] ^ (diff >= 0)): - color = "green" + result = data[testcode].get(field["name"]) + if result != None: + value = result["value"] * field["scaling"] + if "diff" in result: + diff = result["diff"] + arrow = "arrow-up" if diff >= 0 else "arrow-down" + if not (field["positive_diff_better"] ^ (diff >= 0)): + color = "green" + else: + color = "red" + sign = "{{icon {} color={}}}".format(arrow, color) + ret += ' <td bgcolor="{}">{:.3f}{} ({:+.2%})</td>\n'.format( + color, value, field["unit"], diff + ) else: - color = "red" - sign = "{{icon {} color={}}}".format(arrow, color) - ret += " <td>{:.3f}{} //({:+.2%})// {}</td>\n".format(value, field["unit"], diff, sign) - else: - ret += " <td>{:.3f}{} //(new)// " "{{icon plus color=blue}}</td>\n".format(value, field["unit"]) + ret += '<td bgcolor="blue">{:.3f}{} //(new)// </td>\n'.format(value, field["unit"]) ret += " </tr>\n" ret += "</table>\n" else: