ogn-python/tests/gateway/test_saver.py

43 wiersze
992 B
Python
Czysty Zwykły widok Historia

2018-09-03 17:58:35 +00:00
import time
import unittest
from unittest.mock import MagicMock
2018-12-03 18:43:46 +00:00
from ogn.gateway.process_tools import DbSaver
2018-09-03 17:58:35 +00:00
class DbSaverTest(unittest.TestCase):
def test(self):
a = "Albert"
b = "Bertram"
c = "Caspar"
2018-12-03 18:43:46 +00:00
2018-09-03 17:58:35 +00:00
session = MagicMock()
saver = DbSaver(session=session)
saver.add_message(a)
session.bulk_save_objects.assert_not_called()
saver.add_message(b)
session.bulk_save_objects.assert_not_called()
saver.add_message(c)
saver.flush()
session.bulk_save_objects.assert_called_once_with([a, b, c])
def test_timeout(self):
a = "Xanthippe"
b = "Yvonne"
2018-12-03 18:43:46 +00:00
2018-09-03 17:58:35 +00:00
session = MagicMock()
saver = DbSaver(session=session)
saver.add_message(a)
session.bulk_save_objects.assert_not_called()
time.sleep(1)
saver.add_message(b)
session.bulk_save_objects.assert_called_once_with([a, b])
2018-12-03 18:43:46 +00:00
2018-09-03 17:58:35 +00:00
if __name__ == '__main__':
unittest.main()