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))
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