From 16d0ee525edaabd56953eca4a557f3fd73baa46f Mon Sep 17 00:00:00 2001 From: Davide Casale Date: Fri, 17 Feb 2023 04:29:26 +0100 Subject: [PATCH] Remove test_rest_serializers_and_types.py and test_websocket_serializers_and_types.py. Add new test_rest_serializers.py and test_websocket_serializers.py unit tests. Edit bfxapi.tests.__init__.py's test suite. --- bfxapi/tests/__init__.py | 8 ++++---- bfxapi/tests/test_rest_serializers.py | 17 +++++++++++++++++ bfxapi/tests/test_rest_serializers_and_types.py | 17 ----------------- bfxapi/tests/test_websocket_serializers.py | 17 +++++++++++++++++ .../test_websocket_serializers_and_types.py | 17 ----------------- 5 files changed, 38 insertions(+), 38 deletions(-) create mode 100644 bfxapi/tests/test_rest_serializers.py delete mode 100644 bfxapi/tests/test_rest_serializers_and_types.py create mode 100644 bfxapi/tests/test_websocket_serializers.py delete mode 100644 bfxapi/tests/test_websocket_serializers_and_types.py diff --git a/bfxapi/tests/__init__.py b/bfxapi/tests/__init__.py index a63ea0d..057c2c0 100644 --- a/bfxapi/tests/__init__.py +++ b/bfxapi/tests/__init__.py @@ -1,6 +1,6 @@ import unittest -from .test_rest_serializers_and_types import TestRestSerializersAndTypes -from .test_websocket_serializers_and_types import TestWebsocketSerializersAndTypes +from .test_rest_serializers import TestRestSerializers +from .test_websocket_serializers import TestWebsocketSerializers from .test_labeler import TestLabeler from .test_notification import TestNotification @@ -8,8 +8,8 @@ NAME = "tests" def suite(): return unittest.TestSuite([ - unittest.makeSuite(TestRestSerializersAndTypes), - unittest.makeSuite(TestWebsocketSerializersAndTypes), + unittest.makeSuite(TestRestSerializers), + unittest.makeSuite(TestWebsocketSerializers), unittest.makeSuite(TestLabeler), unittest.makeSuite(TestNotification), ]) diff --git a/bfxapi/tests/test_rest_serializers.py b/bfxapi/tests/test_rest_serializers.py new file mode 100644 index 0000000..4c24992 --- /dev/null +++ b/bfxapi/tests/test_rest_serializers.py @@ -0,0 +1,17 @@ +import unittest + +from ..labeler import _Type + +from ..rest import serializers + +class TestRestSerializers(unittest.TestCase): + def test_rest_serializers(self): + for serializer in map(serializers.__dict__.get, serializers.__serializers__): + self.assertTrue(issubclass(serializer.klass, _Type), + f"_Serializer <{serializer.name}>: .klass field must be a subclass of _Type (got {serializer.klass}).") + + self.assertListEqual(serializer.get_labels(), list(serializer.klass.__annotations__), + f"_Serializer <{serializer.name}> and _Type <{serializer.klass.__name__}> must have matching labels and fields.") + +if __name__ == "__main__": + unittest.main() \ No newline at end of file diff --git a/bfxapi/tests/test_rest_serializers_and_types.py b/bfxapi/tests/test_rest_serializers_and_types.py deleted file mode 100644 index 7bc7242..0000000 --- a/bfxapi/tests/test_rest_serializers_and_types.py +++ /dev/null @@ -1,17 +0,0 @@ -import unittest - -from ..rest import serializers, types - -class TestRestSerializersAndTypes(unittest.TestCase): - def test_consistency(self): - for serializer in map(serializers.__dict__.get, serializers.__serializers__): - type = types.__dict__.get(serializer.name) - - self.assertIsNotNone(type, f"_Serializer <{serializer.name}>: no respective _Type found in bfxapi.rest.types.") - self.assertEqual(serializer.klass, type, f"_Serializer <{serializer.name}>.klass: field does not match with respective _Type in bfxapi.rest.types.") - - self.assertListEqual(serializer.get_labels(), list(type.__annotations__), - f"_Serializer <{serializer.name}> and _Type <{type.__name__}> must have matching labels and fields.") - -if __name__ == "__main__": - unittest.main() \ No newline at end of file diff --git a/bfxapi/tests/test_websocket_serializers.py b/bfxapi/tests/test_websocket_serializers.py new file mode 100644 index 0000000..a559565 --- /dev/null +++ b/bfxapi/tests/test_websocket_serializers.py @@ -0,0 +1,17 @@ +import unittest + +from ..labeler import _Type + +from ..websocket import serializers + +class TestWebsocketSerializers(unittest.TestCase): + def test_websocket_serializers(self): + for serializer in map(serializers.__dict__.get, serializers.__serializers__): + self.assertTrue(issubclass(serializer.klass, _Type), + f"_Serializer <{serializer.name}>: .klass field must be a subclass of _Type (got {serializer.klass}).") + + self.assertListEqual(serializer.get_labels(), list(serializer.klass.__annotations__), + f"_Serializer <{serializer.name}> and _Type <{serializer.klass.__name__}> must have matching labels and fields.") + +if __name__ == "__main__": + unittest.main() \ No newline at end of file diff --git a/bfxapi/tests/test_websocket_serializers_and_types.py b/bfxapi/tests/test_websocket_serializers_and_types.py deleted file mode 100644 index 338b959..0000000 --- a/bfxapi/tests/test_websocket_serializers_and_types.py +++ /dev/null @@ -1,17 +0,0 @@ -import unittest - -from ..websocket import serializers, types - -class TestWebsocketSerializersAndTypes(unittest.TestCase): - def test_consistency(self): - for serializer in map(serializers.__dict__.get, serializers.__serializers__): - type = types.__dict__.get(serializer.name) - - self.assertIsNotNone(type, f"_Serializer <{serializer.name}>: no respective _Type found in bfxapi.websocket.types.") - self.assertEqual(serializer.klass, type, f"_Serializer <{serializer.name}>.klass: field does not match with respective _Type in bfxapi.websocket.types.") - - self.assertListEqual(serializer.get_labels(), list(type.__annotations__), - f"_Serializer <{serializer.name}> and _Type <{type.__name__}> must have matching labels and fields.") - -if __name__ == "__main__": - unittest.main() \ No newline at end of file