def test_process_answer_set_stop_time_twice(): status_queue = Queue() under_test = InThreadStatusTracker(status_queue) answer = Response( "service_id", "job_id", "command_id", ActionType.SetStopTime, ActionOutcome.Success, "some message", 0, datetime.now(), ) assert status_queue.empty() now = datetime.now() under_test.process_answer(answer) under_test.send_status_if_updated(now) assert not status_queue.empty() assert type(status_queue.get()) is WorkerStatus assert type(status_queue.get()) is JobStatus assert type(status_queue.get()) is CommandStatus now = datetime.now() under_test.process_answer(answer) under_test.send_status_if_updated(now) assert not status_queue.empty() assert type(status_queue.get()) is JobStatus assert type(status_queue.get()) is CommandStatus assert status_queue.empty()
def test_process_msg_answer(): answ_msg = serialise_answer( "service id", "job id", "command id", ActionType.StartJob, ActionOutcome.Success, "some message", 0, datetime.now(), ) status_queue = Queue() under_test = InThreadStatusTracker(status_queue) under_test.process_answer = Mock() under_test.process_message(answ_msg) under_test.process_answer.assert_called_once_with( deserialise_answer(answ_msg))