def test_publish_task(self): handler = ToReviewHandler(self.open_status_id, self.to_review_status_id) events.register( "task:to-review", "mark_event_as_fired", handler ) tasks_service.task_to_review( self.task.id, self.person.serialize(), "my comment" ) self.is_event_fired = handler.is_event_fired data = handler.data task = Task.get(self.task.id) self.assertEqual(task.task_status_id, self.to_review_status_id) self.assert_event_is_fired() self.assertEqual( data["previous_task_status_id"], str(self.open_status_id) ) self.assertEqual(data["comment"], "my comment")
def put(self, task_id): ( person_id, comment, name, revision, change_status, ) = self.get_arguments() try: task = tasks_service.get_task(task_id) user_service.check_project_access(task["project_id"]) user_service.check_entity_access(task["project_id"]) if person_id is not None: person = persons_service.get_person(person_id) else: person = persons_service.get_current_user() preview_path = self.get_preview_path(task, name, revision) task = tasks_service.task_to_review(task["id"], person, comment, preview_path, change_status) except PersonNotFoundException: return {"error": True, "message": "Cannot find given person."}, 400 return task
def put(self, task_id): (person_id, comment, working_file_id) = self.get_arguments() try: task = tasks_service.get_task(task_id) if not permissions.has_manager_permissions(): user_service.check_assigned(task_id) person = persons_service.get_person(person_id) preview_path = "" if working_file_id is not None: working_file = files_service.get_working_file(working_file_id) software = files_service.get_software( working_file["software_id"]) revision = working_file["revision"] preview_path = self.get_preview_path(task, working_file["name"], revision, software) task = tasks_service.task_to_review(task["id"], person, comment, preview_path) except PersonNotFoundException: return {"error": "Cannot find given person."}, 400 return task
def put(self, task_id): (person_id, comment, name, revision) = self.get_arguments() try: task = tasks_service.get_task(task_id) if not permissions.has_manager_permissions(): user_service.check_assigned(task_id) if person_id is not None: person = persons_service.get_person(person_id) else: person = persons_service.get_current_user() preview_path = self.get_preview_path(task, name, revision) task = tasks_service.task_to_review(task["id"], person, comment, preview_path) except PersonNotFoundException: return {"error": True, "message": "Cannot find given person."}, 400 return task
def put(self, task_id): """ Change a task status to "to review". --- tags: - Tasks description: It creates a new preview file entry and set path from the hard disk. parameters: - in: path name: task_id required: True schema: type: UUID example: a24a6ea4-ce75-4665-a070-57453082c25 - in: body name: Task description: person ID, name, comment, revision and change status of task schema: type: object properties: person_id: type: UUID example: a24a6ea4-ce75-4665-a070-57453082c25 comment: type: string name: type: string revision: type: integer change_status: type: boolean responses: 200: description: Task status changed to "to review" 400: description: Given person not found """ ( person_id, comment, name, revision, change_status, ) = self.get_arguments() try: task = tasks_service.get_task(task_id) user_service.check_project_access(task["project_id"]) user_service.check_entity_access(task["project_id"]) if person_id is not None: person = persons_service.get_person(person_id) else: person = persons_service.get_current_user() preview_path = self.get_preview_path(task, name, revision) task = tasks_service.task_to_review(task["id"], person, comment, preview_path, change_status) except PersonNotFoundException: return {"error": True, "message": "Cannot find given person."}, 400 return task