From dce8ff810895a7cf893de65a14c98d0aa477cfa0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mike=20F=C3=A4hrmann?= Date: Thu, 2 Oct 2025 19:01:13 +0200 Subject: [PATCH] =?UTF-8?q?[tests/results]=20support=20'hash:=E2=80=A6'=20?= =?UTF-8?q?tests?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- test/test_results.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/test/test_results.py b/test/test_results.py index 7e024b81..2e2eaa92 100644 --- a/test/test_results.py +++ b/test/test_results.py @@ -348,6 +348,17 @@ class TestExtractorResults(unittest.TestCase): for _ in value: len_value += 1 self.assertEqual(int(length), len_value, msg=path) + elif test.startswith("hash:"): + digest = test[5:].lower() + msg = f"{path} / {digest}" + if digest == "md5": + self.assertRegex(value, r"^[0-9a-fA-F]{32}$", msg) + elif digest == "sha1": + self.assertRegex(value, r"^[0-9a-fA-F]{40}$", msg) + elif digest == "sha256": + self.assertRegex(value, r"^[0-9a-fA-F]{64}$", msg) + elif digest == "sha512": + self.assertRegex(value, r"^[0-9a-fA-F]{128}$", msg) elif test.startswith("iso:"): iso = test[4:] if iso in ("dt", "datetime", "8601"):