No Description
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

test_uniqid.py 1.2KB

1234567891011121314151617181920212223242526272829303132
  1. import unittest
  2. from unittest import mock
  3. from unittest.mock import patch
  4. import leapi_dyncode as dyncode
  5. from lodel.leapi.datahandlers.datas import UniqID
  6. from lodel.plugins.dummy_datasource.datasource import DummyDatasource
  7. class UniqIDTestCase(unittest.TestCase):
  8. def test_construct_data_sets_new_uid_if_none(self):
  9. sent_uid = None
  10. mocked_returned_uid = 987654321
  11. with patch.object(DummyDatasource, 'new_numeric_id', return_value=mocked_returned_uid) as mock_method:
  12. returned_uid = UniqID.construct_data(UniqID, dyncode.Object, 'lodel_id', '', sent_uid)
  13. mock_method.assert_called_once_with(dyncode.Object)
  14. self.assertEqual(returned_uid, mocked_returned_uid)
  15. def test_construct_data_returns_already_set_uid(self):
  16. sent_uid = 123456789
  17. mocked_returned_uid = 987654321
  18. with patch.object(DummyDatasource, 'new_numeric_id', return_value=mocked_returned_uid) as mock_method:
  19. returned_uid = UniqID.construct_data(UniqID, dyncode.Object, '', '', sent_uid)
  20. self.assertEqual(returned_uid, sent_uid)
  21. mock_method.assert_not_called()