Update json_to_md.py
Run Pytest with HTML and XML Test Reports / tests (push) Successful in 24s

This commit is contained in:
2025-07-19 18:03:51 +02:00
parent f69527aa0c
commit 469abacb15
+7 -8
View File
@@ -111,15 +111,14 @@ def make_test_block(test, status, emoji, level, runtime_params):
param_display = ", ".join(f"{k}={sanitize_param_value(v)}" for k, v in params.items())
summary += f"<br><span style='color: #888; font-size: 0.9em;'>(params: {param_display})</span>"
# Le corps de la balise <details> (tout sera contenu ici)
# Construction du body sous forme de cadre unique
body = ""
# Bloc pour les paramètres d'exécution
# Ajouter les paramètres d'exécution
if callspec:
block = f"```python\n{stringify(callspec)}\n```"
body += f"**📌 Runtime Parameters**\n\n{block}\n\n"
# Ajouter les phases du test, mais en utilisant le bon format pour éviter l'affichage immédiat
skip_keys = {"nodeid"}
for phase in [k for k in test if isinstance(test[k], dict) and k not in skip_keys]:
body += f"**🔧 {phase.capitalize()} Phase**\n\n"
@@ -127,17 +126,17 @@ def make_test_block(test, status, emoji, level, runtime_params):
block = f"```python\n{stringify(value)}\n```"
body += f"**{field}:**\n\n{block}\n\n"
# Assurer que tout est sous un seul bloc <details> et masquer tout le contenu au départ
# Encapsuler tout le contenu dans un cadre unique, avec un seul bloc <details> qui se déroule
return (
f" - <details>\n"
f" <summary>{summary}</summary>\n\n"
f" - <details style='padding: 10px; background-color: #f9f9f9; border-radius: 5px;'>\n"
f" <summary style='font-weight: bold; font-size: 16px; cursor: pointer; color: #007bff;'>{summary}</summary>\n\n"
f" <div style='margin-left: 20px;'>\n"
f" {body.strip()}\n"
f" </div>\n"
f" </details>\n\n"
)
def json_to_md_nested(json_path, md_path, runtime_params=None):
with open(json_path) as f:
data = json.load(f)