Bin
2025-12-17 21f0498f62ada55651f4d232327e15fc47f498b1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import pytest
from label_studio_sdk.client import LabelStudio
from label_studio_sdk.data_manager import Column, Filters, Operator, Type
 
from .common import LABEL_CONFIG_AND_TASKS
 
 
@pytest.fixture
def test_project_with_view(django_live_url, business_client):
    ls = LabelStudio(base_url=django_live_url, api_key=business_client.api_key)
    p = ls.projects.create(title='New Project', label_config=LABEL_CONFIG_AND_TASKS['label_config'])
 
    project = ls.projects.get(id=p.id)
 
    task_data = [{'data': {'my_text': 'Test task ' + str(i)}} for i in range(10)]
    ls.projects.import_tasks(id=project.id, request=task_data)
    orig_tasks = []
    for task in ls.tasks.list(project=project.id):
        orig_tasks.append(task)
 
    filters = Filters.create(
        Filters.OR,
        [Filters.item(Column.id, Operator.EQUAL, Type.Number, Filters.value(t.id)) for t in orig_tasks[::2]],
    )
 
    view = ls.views.create(
        project=project.id, data=dict(title='Test View', filters=filters, ordering=['-' + Column.id])
    )
    return ls, project, orig_tasks, view