From fe2433ac912eae998fdf34ef158fde2ea66b7ae9 Mon Sep 17 00:00:00 2001 From: Martin Novak Date: Tue, 19 Jul 2022 10:52:05 +0200 Subject: [PATCH] tests(core): addTypeEqualityFunc added to unit test TestCase class --- core/tests/unittest.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/core/tests/unittest.py b/core/tests/unittest.py index 368175fd65..5bc30b7c66 100644 --- a/core/tests/unittest.py +++ b/core/tests/unittest.py @@ -26,16 +26,24 @@ class AssertRaisesContext: class TestCase: + def __init__(self) -> None: + self.__equality_functions = {} def fail(self, msg=''): ensure(False, msg) + def addTypeEqualityFunc(self, typeobj, function): + ensure(callable(function)) + self.__equality_functions[typeobj.__name__] = function + def assertEqual(self, x, y, msg=''): if not msg: msg = f"{repr(x)} vs (expected) {repr(y)}" if x.__class__ == y.__class__ and x.__class__.__name__ == "Msg": self.assertMessageEqual(x, y) + elif x.__class__.__name__ in self.__equality_functions: + self.__equality_functions[x.__class__.__name__](x, y, msg) else: ensure(x == y, msg)