mirror of
https://github.com/aljazceru/bitfinex-api-py.git
synced 2025-12-19 14:54:21 +01:00
Add new bfxapi/tests/test_notification unit test.
This commit is contained in:
@@ -19,7 +19,7 @@ class _Serializer(Generic[T]):
|
|||||||
labels = list(filter(lambda label: label not in (skip or list()), self.__labels))
|
labels = list(filter(lambda label: label not in (skip or list()), self.__labels))
|
||||||
|
|
||||||
if len(labels) > len(args):
|
if len(labels) > len(args):
|
||||||
raise LabelerSerializerException("<labels> and <*args> arguments should contain the same amount of elements.")
|
raise LabelerSerializerException(f"{self.name} -> <labels> and <*args> arguments should contain the same amount of elements.")
|
||||||
|
|
||||||
for index, label in enumerate(labels):
|
for index, label in enumerate(labels):
|
||||||
if label not in self.__IGNORE:
|
if label not in self.__IGNORE:
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ import unittest
|
|||||||
from .test_rest_serializers_and_types import TestRestSerializersAndTypes
|
from .test_rest_serializers_and_types import TestRestSerializersAndTypes
|
||||||
from .test_websocket_serializers_and_types import TestWebsocketSerializersAndTypes
|
from .test_websocket_serializers_and_types import TestWebsocketSerializersAndTypes
|
||||||
from .test_labeler import TestLabeler
|
from .test_labeler import TestLabeler
|
||||||
|
from .test_notification import TestNotification
|
||||||
|
|
||||||
NAME = "tests"
|
NAME = "tests"
|
||||||
|
|
||||||
@@ -10,6 +11,7 @@ def suite():
|
|||||||
unittest.makeSuite(TestRestSerializersAndTypes),
|
unittest.makeSuite(TestRestSerializersAndTypes),
|
||||||
unittest.makeSuite(TestWebsocketSerializersAndTypes),
|
unittest.makeSuite(TestWebsocketSerializersAndTypes),
|
||||||
unittest.makeSuite(TestLabeler),
|
unittest.makeSuite(TestLabeler),
|
||||||
|
unittest.makeSuite(TestNotification),
|
||||||
])
|
])
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
|
|||||||
25
bfxapi/tests/test_notification.py
Normal file
25
bfxapi/tests/test_notification.py
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
import unittest
|
||||||
|
|
||||||
|
from dataclasses import dataclass
|
||||||
|
from ..labeler import generate_labeler_serializer
|
||||||
|
from ..notification import _Type, _Notification, Notification
|
||||||
|
|
||||||
|
class TestNotification(unittest.TestCase):
|
||||||
|
def test_notification(self):
|
||||||
|
@dataclass
|
||||||
|
class Test(_Type):
|
||||||
|
A: int
|
||||||
|
B: float
|
||||||
|
C: str
|
||||||
|
|
||||||
|
test = generate_labeler_serializer("Test", Test,
|
||||||
|
[ "A", "_PLACEHOLDER", "B", "_PLACEHOLDER", "C" ])
|
||||||
|
|
||||||
|
notification = _Notification[Test](test)
|
||||||
|
|
||||||
|
self.assertEqual(notification.parse(*[1675787861506, "test", None, None, [ 5, None, 65.0, None, "X" ], 0, "SUCCESS", "This is just a test notification."]),
|
||||||
|
Notification[Test](1675787861506, "test", None, Test(5, 65.0, "X"), 0, "SUCCESS", "This is just a test notification."),
|
||||||
|
msg="_Notification should produce the right notification.")
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
unittest.main()
|
||||||
Reference in New Issue
Block a user