diff --git a/coolamqp/messages.py b/coolamqp/messages.py index 324a497dec8698ff05f61c1537c15e734e971a60..8fe56d7aab6fc67f6ab07dd0ce07871c3a126bca 100644 --- a/coolamqp/messages.py +++ b/coolamqp/messages.py @@ -13,6 +13,8 @@ class Message(object): :type body: str (py2) or bytes (py3) :param properties: AMQP properties to be sent along """ + if isinstance(body, six.text_type): + raise TypeError('body cannot be a text type!') self.body = six.binary_type(body) self.properties = {} if properties is None else properties diff --git a/coolamqp/orders.py b/coolamqp/orders.py index ddcaa19052d65060937a188f58577d52139bdb02..79399feff0abf0a97a542ccfcd898864e7825bea 100644 --- a/coolamqp/orders.py +++ b/coolamqp/orders.py @@ -75,9 +75,11 @@ class _Exchange(Order): Order.__init__(self, on_completed=on_completed, on_failed=on_failed) self.exchange = exchange + class DeclareExchange(_Exchange): """Declare an exchange""" + class DeleteExchange(_Exchange): """Delete an exchange""" @@ -88,18 +90,23 @@ class _Queue(Order): Order.__init__(self, on_completed=on_completed, on_failed=on_failed) self.queue = queue + class DeclareQueue(_Queue): """Declare a a queue""" + class ConsumeQueue(_Queue): """Declare and consume from a queue""" def __init__(self, queue, no_ack=False, on_completed=None, on_failed=None): _Queue.__init__(self, queue, on_completed=on_completed, on_failed=on_failed) self.no_ack = no_ack + + class DeleteQueue(_Queue): """Delete a queue""" + class CancelQueue(_Queue): """Cancel consuming from a queue""" @@ -108,8 +115,8 @@ class SetQoS(Order): """Set QoS""" def __init__(self, prefetch_window, prefetch_count, on_completed=None, on_failed=None): Order.__init__(self, on_completed=on_completed, on_failed=on_failed) - self.qos = (prefetch_window, prefetch_count) - + self.qos = prefetch_window, prefetch_count +1 class _AcksAndNacks(Order): """related to acking and nacking""" @@ -118,8 +125,10 @@ class _AcksAndNacks(Order): self.connect_id = connect_id self.delivery_tag = delivery_tag + class AcknowledgeMessage(_AcksAndNacks): """ACK a message""" + class NAcknowledgeMessage(_AcksAndNacks): """NACK a message""" diff --git a/tests/test_basics.py b/tests/test_basics.py index 7535e516b8ec8250b53e81075d55c6b317fcd8a8..c777f4e1c8a6234b1d65eff32ebf7de751ed3639 100644 --- a/tests/test_basics.py +++ b/tests/test_basics.py @@ -23,7 +23,7 @@ class TestThings(unittest.TestCase): class TestBasics(unittest.TestCase): def setUp(self): self.amqp = getamqp() - self.assertIsInstance(self.amqp.drain(1), ConnectionUp) + self.assertIsInstance(self.amqp.drain(2), ConnectionUp) def tearDown(self): self.amqp.shutdown() diff --git a/tests/test_noack.py b/tests/test_noack.py index 16219fbd278ed04bafbfd8557dc6d63fd8c1a500..3a83f89d1fd8c332b608fa7d5ec1515686391f69 100644 --- a/tests/test_noack.py +++ b/tests/test_noack.py @@ -35,7 +35,7 @@ class TestNoAcknowledge(unittest.TestCase): def test_noack_works_after_restart(self): myq = Queue('myqueue', exclusive=True) - self.amqp.qos(0,1 ) + self.amqp.qos(0, 1) self.amqp.consume(myq, no_ack=True)