import json
|
|
import pytest
|
from tests.utils import make_project
|
|
|
@pytest.mark.django_db
|
def test_has_lock(business_client):
|
project = make_project({}, business_client.user, use_ml_backend=False)
|
|
tasks = [
|
{'data': {'location': 'London', 'text': 'text A'}},
|
]
|
r = business_client.post(
|
f'/api/projects/{project.id}/tasks/bulk', data=json.dumps(tasks), content_type='application/json'
|
)
|
assert r.status_code == 201
|
|
task = project.tasks.first()
|
|
annotation_data = {
|
'task': task.id,
|
'result': json.dumps(
|
[{'from_name': 'text_class', 'to_name': 'text', 'value': {'labels': ['class_A'], 'start': 0, 'end': 1}}]
|
),
|
}
|
r = business_client.post('/api/tasks/{}/annotations/'.format(task.id), data=annotation_data)
|
assert r.status_code == 201
|
r = business_client.post('/api/tasks/{}/annotations/'.format(task.id), data=annotation_data)
|
assert r.status_code == 201
|
|
task.refresh_from_db()
|
|
assert task.is_labeled is True
|
|
task.is_labeled = False
|
task.save()
|
|
task.has_lock()
|
task.refresh_from_db()
|
|
assert task.is_labeled is True
|