示例#1
0
def test_process_msg_has_stopped():
    stopped_msg = serialise_done("service id", "job id", True, "file name")
    status_queue = Queue()
    under_test = InThreadStatusTracker(status_queue)
    under_test.process_stopped = Mock()
    under_test.process_message(stopped_msg)
    under_test.process_stopped.assert_called_once_with(
        deserialise_done(stopped_msg))
示例#2
0
def test_process_stopped_error():
    status_queue = Queue()
    under_test = InThreadStatusTracker(status_queue)
    job_id = "some_job_id"
    service_id = "some_service_id"
    stopped = WritingFinished(service_id, job_id, True, "FileName",
                              """{"key": "meta data"}""", "some message")
    assert status_queue.empty()
    now = datetime.now()
    under_test.process_stopped(stopped)
    under_test.send_status_if_updated(now)
    assert not status_queue.empty()
    worker_status = status_queue.get()
    job_status = status_queue.get()
    assert status_queue.empty()
    assert worker_status.state == WorkerState.IDLE
    assert job_status.state == JobState.ERROR
    assert job_status.metadata is None