mirror of
https://github.com/django-q2/django-q2.git
synced 2026-10-03 08:58:11 +08:00
IronMQ broker
This commit is contained in:
@@ -74,7 +74,7 @@ def test_disque():
|
||||
broker.delete(task_id)
|
||||
assert broker.queue_size() == 0
|
||||
# fail
|
||||
task_id=broker.enqueue('test')
|
||||
task_id = broker.enqueue('test')
|
||||
broker.fail(task_id)
|
||||
# delete queue
|
||||
broker.enqueue('test')
|
||||
@@ -83,3 +83,49 @@ def test_disque():
|
||||
assert broker.queue_size() == 0
|
||||
# back to django-redis
|
||||
Conf.DISQUE_NODES = None
|
||||
|
||||
|
||||
@pytest.mark.skipif(not os.getenv('IRON_MQ_TOKEN'),
|
||||
reason="requires IronMQ credentials")
|
||||
def test_ironmq():
|
||||
Conf.IRON_MQ = {'host': os.getenv('IRON_MQ_HOST'),
|
||||
'token': os.getenv('IRON_MQ_TOKEN'),
|
||||
'project_id': os.getenv('IRON_MQ_PROJECT_ID')}
|
||||
# check broker
|
||||
broker = get_broker(list_key='djangoQ')
|
||||
assert broker.ping() is True
|
||||
assert broker.info() is not None
|
||||
# clear before we start
|
||||
broker.purge_queue()
|
||||
# enqueue
|
||||
broker.enqueue('test')
|
||||
assert broker.queue_size() == 1
|
||||
# dequeue
|
||||
task = broker.dequeue()
|
||||
assert task[1] == 'test'
|
||||
broker.acknowledge(task[0])
|
||||
assert broker.queue_size() == 0
|
||||
# Retry test
|
||||
Conf.RETRY = 1
|
||||
broker.enqueue('test')
|
||||
assert broker.queue_size() == 1
|
||||
assert broker.dequeue() is not None
|
||||
sleep(1.5)
|
||||
task = broker.dequeue()
|
||||
assert len(task) > 0
|
||||
broker.acknowledge(task[0])
|
||||
sleep(1.5)
|
||||
# delete job
|
||||
task_id = broker.enqueue('test')
|
||||
broker.delete(task_id)
|
||||
assert broker.queue_size() == 0
|
||||
# fail
|
||||
task_id = broker.enqueue('test')
|
||||
broker.fail(task_id)
|
||||
# delete queue
|
||||
broker.enqueue('test')
|
||||
broker.enqueue('test')
|
||||
broker.purge_queue()
|
||||
assert broker.queue_size() == 0
|
||||
# back to django-redis
|
||||
Conf.IRON_MQ = None
|
||||
|
||||
Reference in New Issue
Block a user