X-Git-Url: https://plomlompom.com/repos/foo.html?a=blobdiff_plain;f=tests%2Futils.py;fp=tests%2Futils.py;h=13e4f949d177a7d73456d2546db9f49de3e33fb1;hb=84ff28d055b785e5f205f942c68ece72136e5af1;hp=15a53ae0ddc0b78835b5baacea15f43d3a81cba0;hpb=9409a41ae6d5ed77706bd5a610177ad7e63a2335;p=plomtask
diff --git a/tests/utils.py b/tests/utils.py
index 15a53ae..13e4f94 100644
--- a/tests/utils.py
+++ b/tests/utils.py
@@ -268,3 +268,21 @@ class TestCaseWithServer(TestCaseWithDB):
self.check_post(form_data, f'/process?id={id_}', 302,
f'/process?id={id_}')
return form_data
+
+ @staticmethod
+ def blank_history_keys_in(d: dict[str, object]) -> None:
+ """Re-write "history" object keys to bracketed integer strings."""
+ def walk_tree(d: Any) -> Any:
+ if isinstance(d, dict):
+ if 'history' in d.keys():
+ vals = d['history'].values()
+ history = {}
+ for i, val in enumerate(vals):
+ history[f'[{i}]'] = val
+ d['history'] = history
+ for k in list(d.keys()):
+ walk_tree(d[k])
+ elif isinstance(d, list):
+ d[:] = [walk_tree(i) for i in d]
+ return d
+ walk_tree(d)