def test_consume_close(self): def on_connection(promise, result): client.queue_declare(queue=self.name, auto_delete=True, callback=on_queue_declare) self.cleanup_promise(client.queue_delete, queue=self.name) def on_queue_declare(promise, result): client.basic_consume(queue=self.name, callback=on_basic_consume) client.loop_break() def on_basic_consume(promise, result): self.assertTrue(result.is_error) client = puka.Client(self.amqp_url) try: client.connect(callback=on_connection) client.loop() finally: self.run_cleanup_promises(client) promise = client.close() client.wait(promise) client.run_any_callbacks() if __name__ == '__main__': import tests tests.run_unittests(globals())
def test_connection_refused(self): client = puka.Client('amqp://127.0.0.1:9999/') with self.assertRaises(socket.error): # Can raise in connect or on wait promise = client.connect() client.wait(promise) # The following tests take 3 seconds each, due to Rabbit. def test_wrong_user(self): (username, password, vhost, host, port) = \ puka.connection.parse_amqp_url(AMQP_URL) client = puka.Client('amqp://%s:%s@%s:%s%s' % \ (username, 'wrongpass', host, port, vhost)) promise = client.connect() with self.assertRaises(socket.error): client.wait(promise) # def test_wrong_vhost(self): # client = puka.Client('amqp:///xxxx') # promise = client.connect() # with self.assertRaises(puka.ConnectionBroken): # client.wait(promise) if __name__ == '__main__': import tests tests.run_unittests(globals())