Skip to content

Commit ba8d796

Browse files
author
Sergio García Prado
committed
ISSUE #98
* Increase coverage.
1 parent 743bdd5 commit ba8d796

File tree

9 files changed

+186
-1
lines changed

9 files changed

+186
-1
lines changed

packages/plugins/minos-database-aiopg/tests/test_aiopg/test_factories/test_common/__init__.py

Whitespace-only changes.
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
import unittest
2+
3+
from minos.common import (
4+
LockDatabaseOperationFactory,
5+
)
6+
from minos.plugins.aiopg import (
7+
AiopgDatabaseOperation,
8+
AiopgLockDatabaseOperationFactory,
9+
)
10+
11+
12+
class TestAiopgLockDatabaseOperationFactory(unittest.TestCase):
13+
def setUp(self) -> None:
14+
self.factory = AiopgLockDatabaseOperationFactory()
15+
16+
def test_is_subclass(self):
17+
self.assertTrue(issubclass(AiopgLockDatabaseOperationFactory, LockDatabaseOperationFactory))
18+
19+
def test_build_acquire(self):
20+
operation = self.factory.build_acquire(56)
21+
self.assertIsInstance(operation, AiopgDatabaseOperation)
22+
23+
def test_build_release(self):
24+
operation = self.factory.build_release(56)
25+
self.assertIsInstance(operation, AiopgDatabaseOperation)
26+
27+
28+
if __name__ == "__main__":
29+
unittest.main()
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
import unittest
2+
3+
from minos.common import (
4+
ManagementDatabaseOperationFactory,
5+
)
6+
from minos.plugins.aiopg import (
7+
AiopgDatabaseOperation,
8+
AiopgManagementDatabaseOperationFactory,
9+
)
10+
11+
12+
class TestAiopgManagementDatabaseOperationFactory(unittest.TestCase):
13+
def setUp(self) -> None:
14+
self.factory = AiopgManagementDatabaseOperationFactory()
15+
16+
def test_is_subclass(self):
17+
self.assertTrue(issubclass(AiopgManagementDatabaseOperationFactory, ManagementDatabaseOperationFactory))
18+
19+
def test_build_create(self):
20+
operation = self.factory.build_create("foo")
21+
self.assertIsInstance(operation, AiopgDatabaseOperation)
22+
23+
def test_build_delete(self):
24+
operation = self.factory.build_delete("foo")
25+
self.assertIsInstance(operation, AiopgDatabaseOperation)
26+
27+
28+
if __name__ == "__main__":
29+
unittest.main()

packages/plugins/minos-database-aiopg/tests/test_aiopg/test_factories/test_networks/test_collections/__init__.py

Whitespace-only changes.
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
import unittest
2+
3+
from minos.networks import (
4+
BrokerQueueDatabaseOperationFactory,
5+
)
6+
from minos.plugins.aiopg import (
7+
AiopgBrokerQueueDatabaseOperationFactory,
8+
)
9+
10+
11+
class _BrokerQueueDatabaseOperationFactory(AiopgBrokerQueueDatabaseOperationFactory):
12+
"""For testing purposes."""
13+
14+
def build_table_name(self) -> str:
15+
"""For testing purposes."""
16+
return "foo"
17+
18+
19+
class TestAiopgBrokerQueueDatabaseOperationFactory(unittest.TestCase):
20+
def setUp(self) -> None:
21+
self.factory = _BrokerQueueDatabaseOperationFactory()
22+
23+
def test_is_subclass(self):
24+
self.assertTrue(AiopgBrokerQueueDatabaseOperationFactory, BrokerQueueDatabaseOperationFactory)
25+
26+
def test_build_table_name(self):
27+
self.assertEqual("foo", self.factory.build_table_name())
28+
29+
30+
if __name__ == "__main__":
31+
unittest.main()

packages/plugins/minos-database-aiopg/tests/test_aiopg/test_factories/test_networks/test_publishers/test_queues.py

Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,15 @@
66
from minos.plugins.aiopg import (
77
AiopgBrokerPublisherQueueDatabaseOperationFactory,
88
AiopgBrokerQueueDatabaseOperationFactory,
9+
AiopgDatabaseOperation,
910
)
1011

1112

1213
class TestAiopgBrokerPublisherQueueDatabaseOperationFactory(unittest.TestCase):
1314
def setUp(self) -> None:
1415
self.factory = AiopgBrokerPublisherQueueDatabaseOperationFactory()
1516

16-
def test_subclass(self):
17+
def test_is_subclass(self):
1718
self.assertTrue(
1819
AiopgBrokerPublisherQueueDatabaseOperationFactory,
1920
(BrokerPublisherQueueDatabaseOperationFactory, AiopgBrokerQueueDatabaseOperationFactory),
@@ -22,6 +23,34 @@ def test_subclass(self):
2223
def test_build_table_name(self):
2324
self.assertEqual("broker_publisher_queue", self.factory.build_table_name())
2425

26+
def test_build_create_table(self):
27+
operation = self.factory.build_create_table()
28+
self.assertIsInstance(operation, AiopgDatabaseOperation)
29+
30+
def test_build_update_not_processed(self):
31+
operation = self.factory.build_update_not_processed(id_=56)
32+
self.assertIsInstance(operation, AiopgDatabaseOperation)
33+
34+
def test_build_delete_processed(self):
35+
operation = self.factory.build_delete_processed(id_=56)
36+
self.assertIsInstance(operation, AiopgDatabaseOperation)
37+
38+
def test_build_mark_processing(self):
39+
operation = self.factory.build_mark_processing(ids={56, 78})
40+
self.assertIsInstance(operation, AiopgDatabaseOperation)
41+
42+
def test_build_count_not_processed(self):
43+
operation = self.factory.build_count_not_processed(retry=3)
44+
self.assertIsInstance(operation, AiopgDatabaseOperation)
45+
46+
def test_build_insert(self):
47+
operation = self.factory.build_insert(topic="foo", data=bytes())
48+
self.assertIsInstance(operation, AiopgDatabaseOperation)
49+
50+
def test_build_select_not_processed(self):
51+
operation = self.factory.build_select_not_processed(retry=3, records=1000)
52+
self.assertIsInstance(operation, AiopgDatabaseOperation)
53+
2554

2655
if __name__ == "__main__":
2756
unittest.main()
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,38 @@
11
import unittest
22

3+
from minos.networks import (
4+
BrokerSubscriberQueueDatabaseOperationFactory,
5+
)
36
from minos.plugins.aiopg import (
7+
AiopgBrokerQueueDatabaseOperationFactory,
48
AiopgBrokerSubscriberQueueDatabaseOperationFactory,
9+
AiopgDatabaseOperation,
510
)
611

712

813
class TestAiopgBrokerSubscriberQueueDatabaseOperationFactory(unittest.TestCase):
914
def setUp(self) -> None:
1015
self.factory = AiopgBrokerSubscriberQueueDatabaseOperationFactory()
1116

17+
def test_is_subclass(self):
18+
self.assertTrue(
19+
issubclass(
20+
AiopgBrokerSubscriberQueueDatabaseOperationFactory,
21+
(BrokerSubscriberQueueDatabaseOperationFactory, AiopgBrokerQueueDatabaseOperationFactory),
22+
)
23+
)
24+
1225
def test_build_table_name(self):
1326
self.assertEqual("broker_subscriber_queue", self.factory.build_table_name())
1427

28+
def test_build_count_not_processed(self):
29+
operation = self.factory.build_count_not_processed(retry=3, topics={"foo", "bar"})
30+
self.assertIsInstance(operation, AiopgDatabaseOperation)
31+
32+
def test_build_select_not_processed(self):
33+
operation = self.factory.build_select_not_processed(retry=3, records=100, topics={"foo", "bar"})
34+
self.assertIsInstance(operation, AiopgDatabaseOperation)
35+
1536

1637
if __name__ == "__main__":
1738
unittest.main()
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
import unittest
2+
from uuid import (
3+
uuid4,
4+
)
5+
6+
from minos.common import (
7+
ComposedDatabaseOperation,
8+
)
9+
from minos.networks import (
10+
BrokerSubscriberDuplicateValidatorDatabaseOperationFactory,
11+
)
12+
from minos.plugins.aiopg import (
13+
AiopgBrokerSubscriberDuplicateValidatorDatabaseOperationFactory,
14+
AiopgDatabaseOperation,
15+
)
16+
17+
18+
class TestAiopgBrokerSubscriberDuplicateValidatorDatabaseOperationFactory(unittest.TestCase):
19+
def setUp(self) -> None:
20+
self.factory = AiopgBrokerSubscriberDuplicateValidatorDatabaseOperationFactory()
21+
22+
def test_is_subclass(self):
23+
self.assertTrue(
24+
issubclass(
25+
AiopgBrokerSubscriberDuplicateValidatorDatabaseOperationFactory,
26+
BrokerSubscriberDuplicateValidatorDatabaseOperationFactory,
27+
)
28+
)
29+
30+
def test_build_table_name(self):
31+
self.assertEqual("broker_subscriber_processed_messages", self.factory.build_table_name())
32+
33+
def test_build_create_table(self):
34+
operation = self.factory.build_create_table()
35+
self.assertIsInstance(operation, ComposedDatabaseOperation)
36+
self.assertEqual(2, len(operation.operations))
37+
for sub in operation.operations:
38+
self.assertIsInstance(sub, AiopgDatabaseOperation)
39+
40+
def test_build_insert_row(self):
41+
operation = self.factory.build_insert_row("foo", uuid4())
42+
self.assertIsInstance(operation, AiopgDatabaseOperation)
43+
44+
45+
if __name__ == "__main__":
46+
unittest.main()

0 commit comments

Comments
 (0)