Skip to content

Commit 77d292b

Browse files
committed
Increase code coverage
1 parent 3853b33 commit 77d292b

File tree

6 files changed

+51
-5
lines changed

6 files changed

+51
-5
lines changed

asynctnt_queue/queue.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,6 @@ async def statistics(self, tube_name=None):
8484
args = (tube_name,)
8585

8686
res = await self._conn.call('{}.statistics'.format(self._namespace), args)
87-
if self._conn.version < (1, 7):
87+
if self._conn.version < (1, 7): # pragma: nocover
8888
return res.body[0][0]
8989
return res.body[0]

asynctnt_queue/task.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,18 +25,18 @@ class Task:
2525

2626
def __init__(self, tube, tnt_tuple):
2727
self._tube = tube
28-
if tnt_tuple is None or len(tnt_tuple) == 0:
28+
if tnt_tuple is None or len(tnt_tuple) == 0: # pragma: nocover
2929
raise TaskEmptyError('Tarantool Queue task is empty')
3030

3131
tnt_tuple = tnt_tuple[0]
32-
if tnt_tuple is None or len(tnt_tuple) == 0:
32+
if tnt_tuple is None or len(tnt_tuple) == 0: # pragma: nocover
3333
raise TaskEmptyError('Tarantool Queue task is empty')
3434

3535
self._task_id = tnt_tuple[0]
3636
status = tnt_tuple[1]
3737
try:
3838
self._status = Status(status)
39-
except ValueError:
39+
except ValueError: # pragma: nocover
4040
asynctnt.log.logger.warning(
4141
"unknown status '{}' in task_id = {}".format(
4242
status, self._task_id))

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ def find_version():
4343
"Topic :: Database :: Front-Ends"
4444
],
4545
install_requires=[
46-
'asynctnt>=0.1.9'
46+
'asynctnt>=0.1.10'
4747
],
4848
description=description,
4949
long_description=long_description,

tests/test_queue.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,13 @@ def test__queue_get_tube(self):
1515
self.assertIsInstance(tube, Tube, 'tube valid type')
1616
self.assertEqual(tube.conn, self.conn, 'conn valid')
1717

18+
def test__queue_get_tube_multiple(self):
19+
q = Queue(self.conn)
20+
tube1 = q.tube('test_tube')
21+
tube2 = q.tube('test_tube')
22+
23+
self.assertIs(tube1, tube2, 'the same object')
24+
1825
async def test__queue_statistics(self):
1926
q = Queue(self.conn)
2027
res = await q.statistics()

tests/test_task.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,16 @@ def _data_obj(self):
1313
'key': 'value'
1414
}
1515

16+
async def test__task_tube(self):
17+
tube = self.create_tube()
18+
t = await tube.put(self._data_obj())
19+
self.assertIs(t.tube, tube, 'tube is the same object')
20+
21+
async def test__task_repr(self):
22+
tube = self.create_tube()
23+
t = await tube.put(self._data_obj())
24+
self.assertEqual(repr(t), '<Task id=0 status=Status.READY>')
25+
1626
async def test__task_ack(self):
1727
tube = self.create_tube()
1828
t = await tube.put(self._data_obj())

tests/test_tube.py

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,11 @@ def _data_obj(self):
1313
'key': 'value'
1414
}
1515

16+
async def test__tube_queue(self):
17+
q = Queue(self.conn)
18+
tube = q.tube('test_tube')
19+
self.assertIs(tube.queue, q, 'queue is the same object')
20+
1621
async def test__tube_put(self):
1722
tube = self.create_tube()
1823
t = await tube.put(self._data_obj())
@@ -22,6 +27,15 @@ async def test__tube_put(self):
2227
self.assertEqual(t.task_id, 0) # first task has id = 0
2328
self.assertEqual(t.data, self._data_obj())
2429

30+
async def test__tube_put_options(self):
31+
tube = self.create_tube()
32+
t = await tube.put(self._data_obj(), pri=4, ttl=10, ttr=1, delay=0.2)
33+
self.assertIsNotNone(t)
34+
self.assertIsInstance(t, Task)
35+
self.assertEqual(t.status, Status.DELAYED)
36+
self.assertEqual(t.task_id, 0) # first task has id = 0
37+
self.assertEqual(t.data, self._data_obj())
38+
2539
async def test__tube_take(self):
2640
tube = self.create_tube()
2741
t = await tube.put(self._data_obj())
@@ -89,6 +103,21 @@ async def test__tube_touch(self):
89103
self.assertEqual(t2.status, Status.TAKEN)
90104
self.assertEqual(t2.data, t.data)
91105

106+
async def test__tube_kick(self):
107+
tube = self.create_tube()
108+
t = await tube.put(self._data_obj())
109+
t2 = await tube.take()
110+
t2 = await tube.bury(t2.task_id)
111+
t3 = await tube.take(0.5)
112+
self.assertIsNone(t3, 'no tasks left')
113+
114+
count = await tube.kick(1)
115+
self.assertEqual(count, 1)
116+
t3 = await tube.take(0.5)
117+
self.assertEqual(t3.task_id, t2.task_id)
118+
self.assertEqual(t3.status, Status.TAKEN)
119+
self.assertEqual(t3.data, t2.data)
120+
92121
async def test__tube_delete(self):
93122
tube = self.create_tube()
94123
t = await tube.put(self._data_obj())

0 commit comments

Comments
 (0)