(task_data, session)
| 698 | |
| 699 | |
| 700 | def create_task(task_data, session): |
| 701 | task = Task() |
| 702 | session.add(task) |
| 703 | |
| 704 | task.is_live = task_data.get('is_live', True) |
| 705 | |
| 706 | # # # |
| 707 | if 'job' not in task_data: |
| 708 | job = create_job({'name': f"jobtest:{task_data.get('name')}"}, session) |
| 709 | else: |
| 710 | job = task_data.get('job') |
| 711 | task.job_id = job.id |
| 712 | task.job = job |
| 713 | if 'file' not in task_data: |
| 714 | # TODO: add file create mock. |
| 715 | file_id = None |
| 716 | else: |
| 717 | file_id = task_data.get('file').id |
| 718 | task.file_id = file_id |
| 719 | task.file = task_data.get('file') |
| 720 | # TODO: might need to create mock functions for the following relations |
| 721 | task.guide_id = task_data.get('guide_id', None) |
| 722 | |
| 723 | task.label_dict = task_data.get('label_dict', {}) |
| 724 | task.file_original_id = task_data.get('file_original_id', None) |
| 725 | task.file_original = task_data.get('file_original', None) |
| 726 | task.completion_directory_id = task_data.get('completion_directory_id', None) |
| 727 | task.incoming_directory_id = task_data.get('incoming_directory_id', None) |
| 728 | task.task_type = task_data.get('task_type', 'draw') |
| 729 | |
| 730 | if task.task_type == 'draw': |
| 731 | # Set draw tasks to be available instead of |
| 732 | # default of created |
| 733 | task.status = 'available' |
| 734 | |
| 735 | # Cache from job |
| 736 | task.status = task_data.get('status', 'available') |
| 737 | task.project_id = job.project_id |
| 738 | task.job_type = job.type |
| 739 | task.label_mode = job.label_mode |
| 740 | |
| 741 | # Have defaults |
| 742 | task.kind = task.task_type = task_data.get('kind', 'human') |
| 743 | regular_methods.commit_with_rollback(session) |
| 744 | |
| 745 | return task |
| 746 | |
| 747 | |
| 748 | def create_sync_event(sync_event_data, session): |
nothing calls this directly
no test coverage detected