summaryrefslogtreecommitdiff
path: root/kazoo/tests/test_queue.py
diff options
context:
space:
mode:
Diffstat (limited to 'kazoo/tests/test_queue.py')
-rw-r--r--kazoo/tests/test_queue.py181
1 files changed, 97 insertions, 84 deletions
diff --git a/kazoo/tests/test_queue.py b/kazoo/tests/test_queue.py
index b54b63f..59ece16 100644
--- a/kazoo/tests/test_queue.py
+++ b/kazoo/tests/test_queue.py
@@ -1,43 +1,46 @@
import uuid
-from nose import SkipTest
-from nose.tools import eq_, ok_
+import pytest
from kazoo.testing import KazooTestCase
from kazoo.tests.util import TRAVIS_ZK_VERSION
class KazooQueueTests(KazooTestCase):
-
def _makeOne(self):
path = "/" + uuid.uuid4().hex
return self.client.Queue(path)
def test_queue_validation(self):
queue = self._makeOne()
- self.assertRaises(TypeError, queue.put, {})
- self.assertRaises(TypeError, queue.put, b"one", b"100")
- self.assertRaises(TypeError, queue.put, b"one", 10.0)
- self.assertRaises(ValueError, queue.put, b"one", -100)
- self.assertRaises(ValueError, queue.put, b"one", 100000)
+ with pytest.raises(TypeError):
+ queue.put({})
+ with pytest.raises(TypeError):
+ queue.put(b"one", b"100")
+ with pytest.raises(TypeError):
+ queue.put(b"one", 10.0)
+ with pytest.raises(ValueError):
+ queue.put(b"one", -100)
+ with pytest.raises(ValueError):
+ queue.put(b"one", 100000)
def test_empty_queue(self):
queue = self._makeOne()
- eq_(len(queue), 0)
- self.assertTrue(queue.get() is None)
- eq_(len(queue), 0)
+ assert len(queue) == 0
+ assert queue.get() is None
+ assert len(queue) == 0
def test_queue(self):
queue = self._makeOne()
queue.put(b"one")
queue.put(b"two")
queue.put(b"three")
- eq_(len(queue), 3)
+ assert len(queue) == 3
- eq_(queue.get(), b"one")
- eq_(queue.get(), b"two")
- eq_(queue.get(), b"three")
- eq_(len(queue), 0)
+ assert queue.get() == b"one"
+ assert queue.get() == b"two"
+ assert queue.get() == b"three"
+ assert len(queue) == 0
def test_priority(self):
queue = self._makeOne()
@@ -46,14 +49,13 @@ class KazooQueueTests(KazooTestCase):
queue.put(b"two", priority=0)
queue.put(b"three", priority=10)
- eq_(queue.get(), b"one")
- eq_(queue.get(), b"two")
- eq_(queue.get(), b"three")
- eq_(queue.get(), b"four")
+ assert queue.get() == b"one"
+ assert queue.get() == b"two"
+ assert queue.get() == b"three"
+ assert queue.get() == b"four"
class KazooLockingQueueTests(KazooTestCase):
-
def setUp(self):
KazooTestCase.setUp(self)
skip = False
@@ -66,7 +68,7 @@ class KazooLockingQueueTests(KazooTestCase):
if ver[1] < 4:
skip = True
if skip:
- raise SkipTest("Must use Zookeeper 3.4 or above")
+ pytest.skip("Must use Zookeeper 3.4 or above")
def _makeOne(self):
path = "/" + uuid.uuid4().hex
@@ -74,80 +76,91 @@ class KazooLockingQueueTests(KazooTestCase):
def test_queue_validation(self):
queue = self._makeOne()
- self.assertRaises(TypeError, queue.put, {})
- self.assertRaises(TypeError, queue.put, b"one", b"100")
- self.assertRaises(TypeError, queue.put, b"one", 10.0)
- self.assertRaises(ValueError, queue.put, b"one", -100)
- self.assertRaises(ValueError, queue.put, b"one", 100000)
- self.assertRaises(TypeError, queue.put_all, {})
- self.assertRaises(TypeError, queue.put_all, [{}])
- self.assertRaises(TypeError, queue.put_all, [b"one"], b"100")
- self.assertRaises(TypeError, queue.put_all, [b"one"], 10.0)
- self.assertRaises(ValueError, queue.put_all, [b"one"], -100)
- self.assertRaises(ValueError, queue.put_all, [b"one"], 100000)
+ with pytest.raises(TypeError):
+ queue.put({})
+ with pytest.raises(TypeError):
+ queue.put(b"one", b"100")
+ with pytest.raises(TypeError):
+ queue.put(b"one", 10.0)
+ with pytest.raises(ValueError):
+ queue.put(b"one", -100)
+ with pytest.raises(ValueError):
+ queue.put(b"one", 100000)
+ with pytest.raises(TypeError):
+ queue.put_all({})
+ with pytest.raises(TypeError):
+ queue.put_all([{}])
+ with pytest.raises(TypeError):
+ queue.put_all([b"one"], b"100")
+ with pytest.raises(TypeError):
+ queue.put_all([b"one"], 10.0)
+ with pytest.raises(ValueError):
+ queue.put_all([b"one"], -100)
+ with pytest.raises(ValueError):
+ queue.put_all([b"one"], 100000)
def test_empty_queue(self):
queue = self._makeOne()
- eq_(len(queue), 0)
- self.assertTrue(queue.get(0) is None)
- eq_(len(queue), 0)
+ assert len(queue) == 0
+ assert queue.get(0) is None
+ assert len(queue) == 0
def test_queue(self):
queue = self._makeOne()
queue.put(b"one")
queue.put_all([b"two", b"three"])
- eq_(len(queue), 3)
+ assert len(queue) == 3
- ok_(not queue.consume())
- ok_(not queue.holds_lock())
- eq_(queue.get(1), b"one")
- ok_(queue.holds_lock())
+ assert not queue.consume()
+ assert not queue.holds_lock()
+ assert queue.get(1) == b"one"
+ assert queue.holds_lock()
# Without consuming, should return the same element
- eq_(queue.get(1), b"one")
- ok_(queue.consume())
- ok_(not queue.holds_lock())
- eq_(queue.get(1), b"two")
- ok_(queue.holds_lock())
- ok_(queue.consume())
- ok_(not queue.holds_lock())
- eq_(queue.get(1), b"three")
- ok_(queue.holds_lock())
- ok_(queue.consume())
- ok_(not queue.holds_lock())
- ok_(not queue.consume())
- eq_(len(queue), 0)
+ assert queue.get(1) == b"one"
+ assert queue.consume()
+ assert not queue.holds_lock()
+ assert queue.get(1) == b"two"
+ assert queue.holds_lock()
+ assert queue.consume()
+ assert not queue.holds_lock()
+ assert queue.get(1) == b"three"
+ assert queue.holds_lock()
+ assert queue.consume()
+ assert not queue.holds_lock()
+ assert not queue.consume()
+ assert len(queue) == 0
def test_consume(self):
queue = self._makeOne()
queue.put(b"one")
- ok_(not queue.consume())
- queue.get(.1)
- ok_(queue.consume())
- ok_(not queue.consume())
+ assert not queue.consume()
+ queue.get(0.1)
+ assert queue.consume()
+ assert not queue.consume()
def test_release(self):
queue = self._makeOne()
queue.put(b"one")
- eq_(queue.get(1), b"one")
- ok_(queue.holds_lock())
- ok_(queue.release())
- ok_(not queue.holds_lock())
- eq_(queue.get(1), b"one")
- ok_(queue.consume())
- ok_(not queue.release())
- eq_(len(queue), 0)
+ assert queue.get(1) == b"one"
+ assert queue.holds_lock()
+ assert queue.release()
+ assert not queue.holds_lock()
+ assert queue.get(1) == b"one"
+ assert queue.consume()
+ assert not queue.release()
+ assert len(queue) == 0
def test_holds_lock(self):
queue = self._makeOne()
- ok_(not queue.holds_lock())
+ assert not queue.holds_lock()
queue.put(b"one")
- queue.get(.1)
- ok_(queue.holds_lock())
+ queue.get(0.1)
+ assert queue.holds_lock()
queue.consume()
- ok_(not queue.holds_lock())
+ assert not queue.holds_lock()
def test_priority(self):
queue = self._makeOne()
@@ -156,14 +169,14 @@ class KazooLockingQueueTests(KazooTestCase):
queue.put(b"two", priority=0)
queue.put(b"three", priority=10)
- eq_(queue.get(1), b"one")
- ok_(queue.consume())
- eq_(queue.get(1), b"two")
- ok_(queue.consume())
- eq_(queue.get(1), b"three")
- ok_(queue.consume())
- eq_(queue.get(1), b"four")
- ok_(queue.consume())
+ assert queue.get(1) == b"one"
+ assert queue.consume()
+ assert queue.get(1) == b"two"
+ assert queue.consume()
+ assert queue.get(1) == b"three"
+ assert queue.consume()
+ assert queue.get(1) == b"four"
+ assert queue.consume()
def test_concurrent_execution(self):
queue = self._makeOne()
@@ -176,17 +189,17 @@ class KazooLockingQueueTests(KazooTestCase):
def get_concurrently(value, event):
q = self.client.LockingQueue(queue.path)
- value.append(q.get(.1))
+ value.append(q.get(0.1))
event.set()
self.client.handler.spawn(get_concurrently, value1, event1)
self.client.handler.spawn(get_concurrently, value2, event2)
self.client.handler.spawn(get_concurrently, value3, event3)
queue.put(b"one")
- event1.wait(.2)
- event2.wait(.2)
- event3.wait(.2)
+ event1.wait(0.2)
+ event2.wait(0.2)
+ event3.wait(0.2)
result = value1 + value2 + value3
- eq_(result.count(b"one"), 1)
- eq_(result.count(None), 2)
+ assert result.count(b"one") == 1
+ assert result.count(None) == 2