def test_set_lost(): worker = Main(1, 'test name', ['default']) worker.update_worker() # first time creates the row worker.worker.status = Worker.LOST worker.worker.save() worker.executor = mock.Mock() worker.update_worker() assert worker.state == State.terminate assert worker.executor.mark_terminated.called
def test_save_results(): # lots of setup worker = Main(1, 'test name', ['default']) worker.update_worker() name = WorkflowName.objects.create(name='workflow1') workflow = name.new_version(parameters={'parent': True, 'child': False}) Template.objects.create(workflow=workflow, name='task1', command=['']) run = workflow.submit_run(parameters={'child': True}) task1 = run.task_set.first() # type: Task execution = task1.start_execution(worker.worker) result = Result(execution_id=execution.id) result.stdout = 'test stdout' worker.results.append(result) # trigger a save worker.save_results() execution.refresh_from_db() assert execution.stdout == result.stdout assert not worker.results