def test_service_worker_added(): svc = broker.Service() assert 0 == svc.available_workers svc.add_worker(broker.Worker(b'w1', b's1', time.time(), time.time())) assert 1 == svc.available_workers svc.add_worker(broker.Worker(b'w2', b's1', time.time(), time.time())) assert 2 == svc.available_workers
def test_service_request_queued(): svc = broker.Service() assert 0 == svc.queued_requests svc.queue_request(b'c1', [b'f1', b'f2']) assert 1 == svc.queued_requests svc.queue_request(b'c1', [b'f1', b'f2']) assert 2 == svc.queued_requests
def test_service_request_dequeued(): message = [b'f1', b'f2'] worker = broker.Worker(b'w1', b's1', time.time(), time.time()) client = b'c1' svc = broker.Service() svc.add_worker(worker) dequeued = list(svc.dequeue_pending()) assert 0 == len(dequeued) svc.queue_request(client, message) dequeued = list(svc.dequeue_pending()) assert 1 == len(dequeued) assert dequeued[0] == (message, worker, client)
def test_service_dequeue_no_requests(): svc = broker.Service() svc.queue_request(b'c1', [b'f1', b'f2']) svc.add_worker(broker.Worker(b'w1', b's1', time.time(), time.time())) svc.add_worker(broker.Worker(b'w2', b's1', time.time(), time.time())) assert 2 == svc.available_workers assert 1 == svc.queued_requests dequeued = list(svc.dequeue_pending()) assert 1 == len(dequeued) assert 1 == svc.available_workers assert 0 == svc.queued_requests dequeued = list(svc.dequeue_pending()) assert 0 == len(dequeued)