diff --git a/.travis.yml b/.travis.yml index 8a5cbaa4ff2c23e3c69d6f63638532f87cd043df..95b2e309a7607b0f16dbb97e23e56e857c87949f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -11,6 +11,10 @@ install: - pip install coverage - pip install codeclimate-test-reporter - pip install -r requirements.txt + - sudo rabbitmq-plugins enable rabbitmq_management + - sudo rabbitmqctl add_user user user + - sudo rabbitmqctl set_permissions -p / user ".*" ".*" ".*" + - sudo rabbitmqctl set_user_tags user administrator after_success: - CODECLIMATE_REPO_TOKEN=e8e05973a6c49139de5f98013cd285f9238b78d20f053f37f6e7deeab2c2c52f codeclimate-test-reporter services: diff --git a/Vagrantfile b/Vagrantfile index ec0bd057a6a0dbe0de91f37ad10e7352b1618317..b67a7ca4ed9c8f582b1c1bf623c6778fdcbbcd95 100644 --- a/Vagrantfile +++ b/Vagrantfile @@ -12,7 +12,7 @@ Vagrant.configure("2") do |config| pip install --upgrade pip setuptools /usr/lib/rabbitmq/bin/rabbitmq-plugins enable rabbitmq_management - service rabbitmq-server restart + sudo service rabbitmq-server restart rabbitmqctl add_user user user rabbitmqctl set_permissions -p / user ".*" ".*" ".*" rabbitmqctl set_user_tags user administrator diff --git a/tests/test_cluster.py b/tests/test_basics.py similarity index 76% rename from tests/test_cluster.py rename to tests/test_basics.py index a9ee173e873fdaea86fcf10ed2d81f58b08f62c3..d67ffec25c5f7d6448284bc132358a5ecd111f73 100644 --- a/tests/test_cluster.py +++ b/tests/test_basics.py @@ -6,7 +6,7 @@ from coolamqp import Cluster, ClusterNode, Queue, MessageReceived, ConnectionUp, ConnectionDown, ConsumerCancelled, Message -class MyTestCase(unittest.TestCase): +class TestBasics(unittest.TestCase): def setUp(self): self.amqp = Cluster([ClusterNode('127.0.0.1', 'guest', 'guest')]) self.amqp.start() @@ -15,24 +15,38 @@ class MyTestCase(unittest.TestCase): def tearDown(self): self.amqp.shutdown() + def test_acknowledge(self): + myq = Queue('myqueue', exclusive=True) + + self.amqp.consume(myq) + self.amqp.send(Message(b'what the fuck'), '', routing_key='myqueue') + + p = self.amqp.drain(wait=4) + self.assertIsInstance(p, MessageReceived) + self.assertEquals(p.message.body, b'what the fuck') + p.message.ack() + + self.assertIs(self.amqp.drain(wait=4), None) + + self.amqp.delete_queue(myq) + def test_nacknowledge(self): myq = Queue('myqueue', exclusive=True) self.amqp.consume(myq) self.amqp.send(Message(b'what the fuck'), '', routing_key='myqueue') - p = self.amqp.drain(wait=10) + p = self.amqp.drain(wait=4) self.assertIsInstance(p, MessageReceived) self.assertEquals(p.message.body, b'what the fuck') p.message.nack() - p = self.amqp.drain(wait=10) + p = self.amqp.drain(wait=4) self.assertIsInstance(p, MessageReceived) self.assertEquals(p.message.body, b'what the fuck') self.amqp.delete_queue(myq) - def test_send_and_receive(self): myq = Queue('myqueue', exclusive=True)