From aed1780a23b32293db0d35384829142f79bc1160 Mon Sep 17 00:00:00 2001 From: Richard Penman Date: Sat, 18 Feb 2017 08:13:55 +0800 Subject: [PATCH 1/3] expose the unfinished tasks variable --- janus/__init__.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/janus/__init__.py b/janus/__init__.py index ba82a25..1d75f61 100644 --- a/janus/__init__.py +++ b/janus/__init__.py @@ -219,6 +219,10 @@ def qsize(self): '''Return the approximate size of the queue (not reliable!).''' return self._parent._qsize() + def unfinished(self): + '''Return the number of unfinished tasks.''' + return self._parent._unfinished_tasks + def empty(self): '''Return True if the queue is empty, False otherwise (not reliable!). @@ -341,6 +345,10 @@ def qsize(self): """Number of items in the queue.""" return self._parent._qsize() + def unfinished(self): + '''Return the number of unfinished tasks.''' + return self._parent._unfinished_tasks + @property def maxsize(self): """Number of items allowed in the queue.""" From f98db97238bd21b930148090e0392455b527e7ae Mon Sep 17 00:00:00 2001 From: Richard Penman Date: Tue, 21 Feb 2017 14:07:56 +0800 Subject: [PATCH 2/3] changed to property for consistency with Queue and added test cases --- janus/__init__.py | 6 ++++-- tests/test_mixed.py | 14 ++++++++++++++ 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/janus/__init__.py b/janus/__init__.py index 1d75f61..d05e6d5 100644 --- a/janus/__init__.py +++ b/janus/__init__.py @@ -219,7 +219,8 @@ def qsize(self): '''Return the approximate size of the queue (not reliable!).''' return self._parent._qsize() - def unfinished(self): + @property + def unfinished_tasks(self): '''Return the number of unfinished tasks.''' return self._parent._unfinished_tasks @@ -345,7 +346,8 @@ def qsize(self): """Number of items in the queue.""" return self._parent._qsize() - def unfinished(self): + @property + def unfinished_tasks(self): '''Return the number of unfinished tasks.''' return self._parent._unfinished_tasks diff --git a/tests/test_mixed.py b/tests/test_mixed.py index b849b46..70aa44e 100644 --- a/tests/test_mixed.py +++ b/tests/test_mixed.py @@ -43,6 +43,20 @@ def test_maxsize_default(self): q = janus.Queue(loop=self.loop) self.assertIs(0, q.maxsize) + def test_unfinished(self): + q = janus.Queue(loop=self.loop) + self.assertEqual(q.sync_q.unfinished_tasks, 0) + self.assertEqual(q.async_q.unfinished_tasks, 0) + q.sync_q.put(1) + self.assertEqual(q.sync_q.unfinished_tasks, 1) + self.assertEqual(q.async_q.unfinished_tasks, 1) + q.sync_q.get() + self.assertEqual(q.sync_q.unfinished_tasks, 1) + self.assertEqual(q.async_q.unfinished_tasks, 1) + q.sync_q.task_done() + self.assertEqual(q.sync_q.unfinished_tasks, 0) + self.assertEqual(q.async_q.unfinished_tasks, 0) + def test_sync_put_async_get(self): q = janus.Queue(loop=self.loop) From e492828f50ed5fc5a971f7ff0b6ead030b715967 Mon Sep 17 00:00:00 2001 From: Richard Penman Date: Tue, 21 Feb 2017 21:23:23 +0800 Subject: [PATCH 3/3] remove whitespace --- tests/test_mixed.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test_mixed.py b/tests/test_mixed.py index 70aa44e..dddad64 100644 --- a/tests/test_mixed.py +++ b/tests/test_mixed.py @@ -56,7 +56,7 @@ def test_unfinished(self): q.sync_q.task_done() self.assertEqual(q.sync_q.unfinished_tasks, 0) self.assertEqual(q.async_q.unfinished_tasks, 0) - + def test_sync_put_async_get(self): q = janus.Queue(loop=self.loop)