Esempio n. 1
0
    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())

Esempio n. 2
0
    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())