Skip to content

Commit 305567c

Browse files
author
Sergio García Prado
committed
ISSUE #99
* Add tests for `LmdbSagaExecutionDatabaseOperationFactory`.
1 parent 457e95c commit 305567c

File tree

4 files changed

+68
-0
lines changed

4 files changed

+68
-0
lines changed
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
import unittest
2+
from abc import (
3+
ABC,
4+
)
5+
6+
from minos.common import (
7+
DatabaseOperationFactory,
8+
)
9+
from minos.saga import (
10+
SagaExecutionDatabaseOperationFactory,
11+
)
12+
13+
14+
class TestSagaExecutionDatabaseOperationFactory(unittest.TestCase):
15+
def test_abstract(self):
16+
self.assertTrue(issubclass(SagaExecutionDatabaseOperationFactory, (DatabaseOperationFactory, ABC)))
17+
# noinspection PyUnresolvedReferences
18+
self.assertEqual(
19+
{"build_store", "build_load", "build_delete"}, SagaExecutionDatabaseOperationFactory.__abstractmethods__
20+
)
21+
22+
23+
if __name__ == '__main__':
24+
unittest.main()
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
import unittest
2+
from uuid import (
3+
uuid4,
4+
)
5+
6+
from minos.plugins.lmdb import (
7+
LmdbDatabaseOperation,
8+
LmdbDatabaseOperationType,
9+
LmdbSagaExecutionDatabaseOperationFactory,
10+
)
11+
from minos.saga import (
12+
SagaExecutionDatabaseOperationFactory,
13+
)
14+
15+
16+
class TestLmdbSagaExecutionDatabaseOperationFactory(unittest.TestCase):
17+
def test_is_subclass(self):
18+
self.assertTrue(issubclass(LmdbSagaExecutionDatabaseOperationFactory, SagaExecutionDatabaseOperationFactory))
19+
20+
def test_build_store(self):
21+
factory = LmdbSagaExecutionDatabaseOperationFactory()
22+
23+
operation = factory.build_store(uuid4(), foo="bar")
24+
self.assertIsInstance(operation, LmdbDatabaseOperation)
25+
self.assertEqual(LmdbDatabaseOperationType.CREATE, operation.type_)
26+
27+
def test_build_load(self):
28+
pass
29+
factory = LmdbSagaExecutionDatabaseOperationFactory()
30+
31+
operation = factory.build_load(uuid4())
32+
self.assertIsInstance(operation, LmdbDatabaseOperation)
33+
self.assertEqual(LmdbDatabaseOperationType.READ, operation.type_)
34+
35+
def test_build_delete(self):
36+
factory = LmdbSagaExecutionDatabaseOperationFactory()
37+
38+
operation = factory.build_delete(uuid4())
39+
self.assertIsInstance(operation, LmdbDatabaseOperation)
40+
self.assertEqual(LmdbDatabaseOperationType.DELETE, operation.type_)
41+
42+
43+
if __name__ == "__main__":
44+
unittest.main()

0 commit comments

Comments
 (0)