Beispiel #1
0
async def test_broker_wrapper_fail_empty_body(amqp_connection):
    queue = Queue(name='test_queue')
    consumer = Consumer(agent=None,
                        handler=1,
                        queue=queue,
                        timeout=1,
                        options={})
    channel, connection = amqp_connection

    broker = AMQPBroker('amqp://localhost')
    wrapper = broker._amqp_wrapper(consumer)
    await wrapper(channel, 'null', MagicMock(delivery_tag=1), MagicMock())

    channel.basic_client_ack.assert_not_called()
Beispiel #2
0
async def test_broker_wrapper_fail_timeout(amqp_connection):
    queue = Queue(name='test_queue')
    consumer = Consumer(agent=None,
                        handler=AsyncMock(side_effect=asyncio.TimeoutError),
                        queue=queue,
                        timeout=1,
                        options={})
    channel, connection = amqp_connection

    broker = AMQPBroker('amqp://localhost')
    wrapper = broker._amqp_wrapper(consumer)
    await wrapper(channel, '{"a":1}', MagicMock(delivery_tag=1), MagicMock())

    channel.basic_client_ack.assert_not_called()
Beispiel #3
0
async def test_broker_wrapper_noack_ok(amqp_connection):
    queue = Queue(name='test_queue')
    consumer = Consumer(agent=None,
                        handler=AsyncMock(),
                        queue=queue,
                        timeout=1,
                        options={'autoack': False})
    channel, connection = amqp_connection

    broker = AMQPBroker('amqp://localhost')
    wrapper = broker._amqp_wrapper(consumer)
    await wrapper(channel, '{"a":1}', MagicMock(delivery_tag=1), MagicMock())

    consumer.handler.assert_called_once()
    assert consumer.handler.call_args.kwargs['a'] == 1
    assert consumer.handler.call_args.kwargs['amqp']
    channel.basic_client_ack.assert_not_called()