chore: better test failure hints
All checks were successful
build / build (push) Successful in 1m58s
All checks were successful
build / build (push) Successful in 1m58s
This commit is contained in:
parent
d5780c5837
commit
4103b18673
|
@ -1,3 +1,4 @@
|
||||||
|
import difflib
|
||||||
import json
|
import json
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
|
||||||
|
@ -15,4 +16,11 @@ def load_case(case_name: str) -> None:
|
||||||
result = convert_joj3_conf(repo_conf, task_conf).model_dump(
|
result = convert_joj3_conf(repo_conf, task_conf).model_dump(
|
||||||
mode="json", by_alias=True, exclude_none=True
|
mode="json", by_alias=True, exclude_none=True
|
||||||
)
|
)
|
||||||
|
if result != expected_result:
|
||||||
|
result_str = json.dumps(result, indent=2, ensure_ascii=False).splitlines()
|
||||||
|
expected_str = json.dumps(
|
||||||
|
expected_result, indent=2, ensure_ascii=False
|
||||||
|
).splitlines()
|
||||||
|
diff = "\n".join(difflib.ndiff(expected_str, result_str))
|
||||||
|
print(f"Test case '{case_name}' failed!\nDifferences:\n{diff}")
|
||||||
assert result == expected_result
|
assert result == expected_result
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
import difflib
|
||||||
|
import json
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
|
||||||
import tomli
|
import tomli
|
||||||
|
@ -16,4 +18,11 @@ def load_case(case_name: str) -> None:
|
||||||
result = convert_joj1_conf(task_yaml).model_dump(
|
result = convert_joj1_conf(task_yaml).model_dump(
|
||||||
mode="json", by_alias=True, exclude_none=True
|
mode="json", by_alias=True, exclude_none=True
|
||||||
)
|
)
|
||||||
|
if result != expected_result:
|
||||||
|
result_str = json.dumps(result, indent=2, ensure_ascii=False).splitlines()
|
||||||
|
expected_str = json.dumps(
|
||||||
|
expected_result, indent=2, ensure_ascii=False
|
||||||
|
).splitlines()
|
||||||
|
diff = "\n".join(difflib.ndiff(expected_str, result_str))
|
||||||
|
print(f"Test case '{case_name}' failed!\nDifferences:\n{diff}")
|
||||||
assert result == expected_result
|
assert result == expected_result
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
import difflib
|
||||||
import json
|
import json
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
|
||||||
|
@ -20,6 +21,11 @@ def load_case(case_name: str) -> None:
|
||||||
result = create_joj3_task_conf(answers).model_dump(
|
result = create_joj3_task_conf(answers).model_dump(
|
||||||
mode="json", by_alias=True, exclude_none=True, exclude_unset=True
|
mode="json", by_alias=True, exclude_none=True, exclude_unset=True
|
||||||
)
|
)
|
||||||
print(result)
|
if result != expected_result:
|
||||||
print(expected_result)
|
result_str = json.dumps(result, indent=2, ensure_ascii=False).splitlines()
|
||||||
|
expected_str = json.dumps(
|
||||||
|
expected_result, indent=2, ensure_ascii=False
|
||||||
|
).splitlines()
|
||||||
|
diff = "\n".join(difflib.ndiff(expected_str, result_str))
|
||||||
|
print(f"Test case '{case_name}' failed!\nDifferences:\n{diff}")
|
||||||
assert result == expected_result
|
assert result == expected_result
|
||||||
|
|
Loading…
Reference in New Issue
Block a user