---
|
test_name: skip_queue_requeue_for_others
|
strict: false
|
marks:
|
- usefixtures:
|
- django_live_url
|
stages:
|
- id: signup
|
type: ref
|
- id: create_project
|
type: ref
|
|
- &create_first_task
|
name: create_task
|
request:
|
json:
|
data:
|
text: 'Test text'
|
project: '{project_pk}'
|
method: POST
|
url: '{django_live_url}/api/tasks'
|
response:
|
save:
|
json:
|
first_task_pk: id
|
status_code: 201
|
- &create_second_task
|
name: create_task
|
request:
|
json:
|
data:
|
text: 'Test text'
|
project: '{project_pk}'
|
method: POST
|
url: '{django_live_url}/api/tasks'
|
response:
|
save:
|
json:
|
second_task_pk: id
|
status_code: 201
|
|
- &get_next_task_first
|
name: get_next_task
|
request:
|
method: GET
|
url: '{django_live_url}/api/projects/{project_pk}/next'
|
response:
|
json:
|
id: !int '{first_task_pk}'
|
|
- &skip_first_task
|
name: skip_first_task
|
request:
|
headers:
|
content-type: application/json
|
json:
|
lead_time: 12.34
|
method: POST
|
url: '{django_live_url}/api/tasks/{first_task_pk}/annotations?was_cancelled=1'
|
response:
|
save:
|
json:
|
first_skipped_annotation_pk: id
|
status_code: 201
|
|
- &get_next_task_second
|
name: get_next_task
|
request:
|
method: GET
|
url: '{django_live_url}/api/projects/{project_pk}/next'
|
response:
|
json:
|
id: !int '{second_task_pk}'
|
|
- &create_annotation_second_task
|
name: create_annotation_second_task
|
request:
|
headers:
|
content-type: application/json
|
json:
|
lead_time: 12.34
|
result:
|
- from_name: label
|
to_name: text
|
type: choices
|
value:
|
choices:
|
- pos
|
method: POST
|
url: '{django_live_url}/api/tasks/{second_task_pk}/annotations'
|
response:
|
save:
|
json:
|
annotation_pk: id
|
status_code: 201
|
|
- &get_next_task_queue_is_empty
|
name: get_next_task_queue_is_empty
|
request:
|
method: GET
|
url: '{django_live_url}/api/projects/{project_pk}/next'
|
response:
|
status_code: 404
|
|
- &check_first_task_is_not_labeled
|
name: check_first_task_is_not_labeled
|
request:
|
method: GET
|
url: '{django_live_url}/api/tasks/{first_task_pk}'
|
response:
|
json:
|
is_labeled: false
|
|
- &check_second_task_is_labeled
|
name: check_second_task_is_labeled
|
request:
|
method: GET
|
url: '{django_live_url}/api/tasks/{second_task_pk}'
|
response:
|
json:
|
is_labeled: true
|
|
|
|
|
|
|
|
---
|
test_name: skip_queue_requeue_for_me
|
strict: false
|
marks:
|
- usefixtures:
|
- django_live_url
|
stages:
|
- id: signup
|
type: ref
|
- id: create_project
|
type: ref
|
|
- name: set_skip_queue_setting
|
request:
|
method: PATCH
|
url: '{django_live_url}/api/projects/{project_pk}'
|
headers:
|
content-type: application/json
|
json:
|
skip_queue: REQUEUE_FOR_ME
|
response:
|
status_code: 200
|
|
- *create_first_task
|
- *create_second_task
|
- *get_next_task_first
|
- *skip_first_task
|
- *get_next_task_second
|
- *create_annotation_second_task
|
|
# retry skipped
|
- *get_next_task_first
|
|
- name: delete_skipped_annotation_first_task
|
request:
|
method: DELETE
|
url: '{django_live_url}/api/annotations/{first_skipped_annotation_pk}'
|
response:
|
status_code: 204
|
|
- name: create_annotation_first_task
|
request:
|
headers:
|
content-type: application/json
|
json:
|
lead_time: 12.34
|
result:
|
- from_name: label
|
to_name: text
|
type: choices
|
value:
|
choices:
|
- pos
|
method: POST
|
url: '{django_live_url}/api/tasks/{first_task_pk}/annotations'
|
response:
|
save:
|
json:
|
annotation_pk: id
|
status_code: 201
|
|
- *get_next_task_queue_is_empty
|
|
- &check_first_task_is_labeled
|
name: check_first_task_is_labeled
|
request:
|
method: GET
|
url: '{django_live_url}/api/tasks/{first_task_pk}'
|
response:
|
json:
|
is_labeled: true
|
|
- *check_second_task_is_labeled
|
|
|
|
|
|
|
---
|
test_name: skip_queue_ignore_skipped
|
strict: false
|
marks:
|
- usefixtures:
|
- django_live_url
|
stages:
|
- id: signup
|
type: ref
|
- id: create_project
|
type: ref
|
|
- name: set_skip_queue_setting
|
request:
|
method: PATCH
|
url: '{django_live_url}/api/projects/{project_pk}'
|
headers:
|
content-type: application/json
|
json:
|
skip_queue: IGNORE_SKIPPED
|
response:
|
status_code: 200
|
|
- *create_first_task
|
- *create_second_task
|
|
- name: get_next_task
|
request:
|
method: GET
|
url: '{django_live_url}/api/projects/{project_pk}/next'
|
response:
|
json:
|
id: !int '{first_task_pk}'
|
|
- name: skip_first_task
|
request:
|
headers:
|
content-type: application/json
|
json:
|
lead_time: 12.34
|
method: POST
|
url: '{django_live_url}/api/tasks/{first_task_pk}/annotations?was_cancelled=1'
|
response:
|
save:
|
json:
|
first_skipped_annotation_pk: id
|
status_code: 201
|
|
- name: get_next_task
|
request:
|
method: GET
|
url: '{django_live_url}/api/projects/{project_pk}/next'
|
response:
|
json:
|
id: !int '{second_task_pk}'
|
|
- name: create_annotation_second_task
|
request:
|
headers:
|
content-type: application/json
|
json:
|
lead_time: 12.34
|
result:
|
- from_name: label
|
to_name: text
|
type: choices
|
value:
|
choices:
|
- pos
|
method: POST
|
url: '{django_live_url}/api/tasks/{second_task_pk}/annotations'
|
response:
|
save:
|
json:
|
annotation_pk: id
|
status_code: 201
|
|
- *get_next_task_queue_is_empty
|
- *check_first_task_is_labeled
|
- *check_second_task_is_labeled
|