Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hotfix v0.2091.1 #501

Merged
merged 1 commit into from
Jun 24, 2024

BI-5570: fix .over() serialization (#476)

1917680
Select commit
Loading
Failed to load commit list.
Sign in for the full log view
Merged

Hotfix v0.2091.1 #501

BI-5570: fix .over() serialization (#476)
1917680
Select commit
Loading
Failed to load commit list.
GitHub Actions / Test Results failed Jun 24, 2024 in 0s

13 errors, 3 fail, 348 skipped, 2 918 pass in 1h 56m 29s

     46 files       46 suites   1h 56m 29s ⏱️
3 282 tests 2 918 ✔️ 348 💤 3  13 🔥
3 288 runs  2 924 ✔️ 348 💤 3  13 🔥

Results for commit 1917680.

Annotations

Check failure on line 0 in dl_connector_bitrix_gds_tests.ext.api.test_connection.TestBitrixConnection

See this annotation in the file changed.

@github-actions github-actions / Test Results

test_test_connection[pyloop] (dl_connector_bitrix_gds_tests.ext.api.test_connection.TestBitrixConnection) failed

./report/pytest_reports_dl_connector_bitrix_gds_442724729/_src_lib_dl_connector_bitrix_gds_dl_connector_bitrix_gds_tests-ext-ad12e63037fc49018d8f609250f83756.xml [took 3s]
Raw output
AssertionError: {'message': 'Data source is unavailable', 'code': 'ERR.DS_API.DATABASE_UNAVAILABLE', 'debug': {}, 'details': {}}
self = <dl_connector_bitrix_gds_tests.ext.api.test_connection.TestBitrixConnection object at 0x7fcfe437c490>
control_api_sync_client = FlaskSyncApiClient(_int_wclient=<TestClient <Flask 'dl_api_lib.app.control_api.app'>>)
saved_connection_id = 'ymqjfyf4df0ul', bi_headers = None

    def test_test_connection(
        self,
        control_api_sync_client: SyncHttpClientBase,
        saved_connection_id: str,
        bi_headers: Optional[dict[str, str]],
    ) -> None:
        resp = control_api_sync_client.post(
            f"/api/v1/connections/test_connection/{saved_connection_id}",
            content_type="application/json",
            data=json.dumps({}),
            headers=bi_headers,
        )
>       assert resp.status_code == 200, resp.json
E       AssertionError: {'message': 'Data source is unavailable', 'code': 'ERR.DS_API.DATABASE_UNAVAILABLE', 'debug': {}, 'details': {}}

/venv/lib/python3.10/site-packages/dl_api_lib_testing/connector/connection_suite.py:35: AssertionError

Check failure on line 0 in dl_connector_bitrix_gds_tests.ext.api.test_data.TestBitrixDataResult

See this annotation in the file changed.

@github-actions github-actions / Test Results

test_basic_result (dl_connector_bitrix_gds_tests.ext.api.test_data.TestBitrixDataResult) with error

./report/pytest_reports_dl_connector_bitrix_gds_442724729/_src_lib_dl_connector_bitrix_gds_dl_connector_bitrix_gds_tests-ext-ad12e63037fc49018d8f609250f83756.xml [took 3s]
Raw output
failed on setup with "AssertionError: {'code': 'ERR.DS_API.VALIDATION.ERROR', 'dataset': {'result_schema_aux': {'inter_dependencies': {'deps': []}}, 'revision_id': None, 'avatar_relations': [], 'preview_enabled': True, 'rls': {}, 'component_errors': {'items': [{'id': '68e3248b-ca7f-4970-b01a-da6b424827d4', 'type': 'data_source', 'errors': [{'message': 'Data source (table) identified by: `default..crm_deal` does not exist.', 'code': 'ERR.DS_API.DB.SOURCE_DOES_NOT_EXIST', 'level': 'error', 'details': {'db_message': ''}}]}]}, 'obligatory_filters': [], 'sources': [{'source_type': 'BITRIX_GDS', 'parameters': {'db_version': None, 'table_name': 'crm_deal', 'db_name': 'default'}, 'id': '68e3248b-ca7f-4970-b01a-da6b424827d4', 'raw_schema': [], 'virtual': False, 'valid': False, 'managed_by': 'user', 'parameter_hash': '4a9115ae1e7e8ae5', 'index_info_set': None, 'title': 'crm_deal', 'connection_id': 'g48128a84x2u3'}], 'result_schema': [], 'source_avatars': [{'source_id': '68e3248b-ca7f-4970-b01a-da6b424827d4', 'id': '2febb553-0269-438d-a2a4-7dcc683455ec', 'virtual': False, 'valid': True, 'managed_by': 'user', 'title': 'avatar_1', 'is_root': True}], 'load_preview_by_default': True}, 'message': 'Validation finished with errors.', 'dataset_errors': [], 'options': {'schema_update_enabled': False, 'data_types': {'items': [{'casts': ['string', 'date', 'genericdatetime', 'boolean', 'integer', 'float', 'geopoint', 'geopolygon'], 'type': 'string', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['integer', 'float', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'integer', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['float', 'integer', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'float', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['date', 'genericdatetime', 'string', 'integer', 'float', 'boolean'], 'type': 'date', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['genericdatetime', 'datetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetime', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['boolean', 'integer', 'float', 'string'], 'type': 'boolean', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopoint', 'string'], 'type': 'geopoint', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopolygon', 'string'], 'type': 'geopolygon', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['uuid', 'string'], 'type': 'uuid', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['markup'], 'type': 'markup', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['datetimetz', 'genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetimetz', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['unsupported'], 'type': 'unsupported', 'aggregations': [], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['array_str', 'string'], 'type': 'array_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_int', 'string'], 'type': 'array_int', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_float', 'string'], 'type': 'array_float', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['tree_str'], 'type': 'tree_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'genericdatetime', 'aggregations': ['count', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}]}, 'join': {'types': ['inner', 'left', 'right', 'full'], 'operators': ['eq']}, 'connections': {'max': 1, 'items': [{'id': 'g48128a84x2u3', 'replacement_types': [{'conn_type': 'postgres'}]}], 'compatible_types': []}, 'fields': {'items': []}, 'preview': {'enabled': True}, 'sources': {'items': [{'id': '68e3248b-ca7f-4970-b01a-da6b424827d4', 'schema_update_enabled': False}], 'compatible_types': [{'source_type': 'BITRIX_GDS'}]}, 'supports_offset': True, 'supported_functions': ['abs', 'acos', 'all_concat', 'any', 'arr_remove', 'arr_str', 'array', 'ascii', 'asin', 'atan', 'atan2', 'avg', 'avg_if', 'bold', 'bool', 'br', 'case', 'cast_arr_float', 'cast_arr_int', 'cast_arr_str', 'ceiling', 'char', 'color', 'concat', 'contains', 'contains_all', 'contains_any', 'cos', 'cot', 'count', 'count_if', 'count_item', 'countd', 'countd_if', 'date', 'dateadd', 'datepart', 'datetime', 'datetrunc', 'day', 'dayofweek', 'db_cast', 'degrees', 'div', 'div_safe', 'endswith', 'exp', 'fdiv_safe', 'find', 'first', 'float', 'floor', 'geopoint', 'geopolygon', 'get_item', 'greatest', 'hour', 'icontains', 'iendswith', 'if', 'ifnan', 'ifnull', 'iif', 'image', 'int', 'isnan', 'isnull', 'istartswith', 'italic', 'lag', 'last', 'least', 'left', 'len', 'ln', 'log', 'log10', 'lower', 'ltrim', 'markup', 'mavg', 'max', 'mcount', 'median', 'min', 'minute', 'mmax', 'mmin', 'month', 'msum', 'notcontains', 'now', 'pi', 'power', 'quantile', 'quarter', 'radians', 'rank', 'rank_dense', 'rank_percentile', 'rank_unique', 'ravg', 'rcount', 'regexp_extract', 'regexp_extract_nth', 'regexp_match', 'regexp_replace', 'replace', 'right', 'rmax', 'rmin', 'round', 'rsum', 'rtrim', 'second', 'sign', 'sin', 'size', 'slice', 'space', 'split', 'sqrt', 'square', 'startswith', 'stdev', 'stdevp', 'str', 'substr', 'sum', 'sum_if', 'tan', 'today', 'tree', 'trim', 'unnest', 'upper', 'url', 'var', 'varp', 'week', 'year', 'zn'], 'source_avatars': {'max': 32, 'items': [{'id': '2febb553-0269-438d-a2a4-7dcc683455ec', 'schema_update_enabled': False}]}}}"
>       lambda: ihook(item=item, **kwds), when=when, reraise=reraise
    )

/venv/lib/python3.10/site-packages/flaky/flaky_pytest_plugin.py:146: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/venv/lib/python3.10/site-packages/pytest_lazyfixture.py:39: in fill
    _fillfixtures()
/venv/lib/python3.10/site-packages/dl_api_lib_testing/dataset_base.py:41: in saved_dataset
    ds = self.make_basic_dataset(
/venv/lib/python3.10/site-packages/dl_api_lib_testing/dataset_base.py:30: in make_basic_dataset
    ds = control_api.apply_updates(dataset=ds, fail_ok=False).dataset
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = SyncHttpDatasetApiV1(client=FlaskSyncApiClient(_int_wclient=<TestClient <Flask 'dl_api_lib.app.control_api.app'>>), headers={}, _created_dataset_id_list=[], serial_adapter=DatasetApiV1SerializationAdapter())
dataset = Dataset(id='5b70463d-46c4-4f7b-9270-2a76ace0deb2', created_=False, name=None, revision_id=None, load_preview_by_defaul...sultSchemaAux(inter_dependencies={}), rls={}, component_errors=ComponentErrorRegistry(items=[]), obligatory_filters=[])
updates = [UpdateAction(action=<Action.add: 'add'>, item=DataSource(id='68e3248b-ca7f-4970-b01a-da6b424827d4', created_=False, c...', title='avatar_1', is_root=False, managed_by=<ManagedBy.user: 'user'>, valid=True), custom_data=None, order_index=0)]
fail_ok = False

    def apply_updates(  # type: ignore  # TODO: fix
        self,
        dataset: Dataset,
        updates: list[Union[UpdateAction, dict]] = None,  # type: ignore  # 2024-01-24 # TODO: Incompatible default for argument "updates" (default has type "None", argument has type "list[UpdateAction | dict[Any, Any]]")  [assignment]
        fail_ok: bool = False,
    ) -> HttpDatasetApiResponse:
        if dataset.created_:
            url = f"/api/v1/datasets/{dataset.id}/versions/draft/validators/schema"
        else:
            url = "/api/v1/datasets/validators/dataset"
    
        data = self.dump_dataset_to_request_body(dataset)
        updates = list(updates or ()) + self.serial_adapter.generate_implicit_updates(dataset)  # type: ignore  # 2024-01-24 # TODO: Unsupported operand types for + ("list[UpdateAction | dict[Any, Any]]" and "list[UpdateAction]")  [operator]
        data["updates"] = self.serial_adapter.dump_updates(updates)
        response = self._request(url, method="post", data=data)
    
        if fail_ok:
            # `fail_ok` should not mean `allow 5xx`
            assert response.status_code < 500, response.json
        else:
            try:
>               assert response.status_code == HTTPStatus.OK, response.json
E               AssertionError: {'code': 'ERR.DS_API.VALIDATION.ERROR', 'dataset': {'result_schema_aux': {'inter_dependencies': {'deps': []}}, 'revision_id': None, 'avatar_relations': [], 'preview_enabled': True, 'rls': {}, 'component_errors': {'items': [{'id': '68e3248b-ca7f-4970-b01a-da6b424827d4', 'type': 'data_source', 'errors': [{'message': 'Data source (table) identified by: `default..crm_deal` does not exist.', 'code': 'ERR.DS_API.DB.SOURCE_DOES_NOT_EXIST', 'level': 'error', 'details': {'db_message': ''}}]}]}, 'obligatory_filters': [], 'sources': [{'source_type': 'BITRIX_GDS', 'parameters': {'db_version': None, 'table_name': 'crm_deal', 'db_name': 'default'}, 'id': '68e3248b-ca7f-4970-b01a-da6b424827d4', 'raw_schema': [], 'virtual': False, 'valid': False, 'managed_by': 'user', 'parameter_hash': '4a9115ae1e7e8ae5', 'index_info_set': None, 'title': 'crm_deal', 'connection_id': 'g48128a84x2u3'}], 'result_schema': [], 'source_avatars': [{'source_id': '68e3248b-ca7f-4970-b01a-da6b424827d4', 'id': '2febb553-0269-438d-a2a4-7dcc683455ec', 'virtual': False, 'valid': True, 'managed_by': 'user', 'title': 'avatar_1', 'is_root': True}], 'load_preview_by_default': True}, 'message': 'Validation finished with errors.', 'dataset_errors': [], 'options': {'schema_update_enabled': False, 'data_types': {'items': [{'casts': ['string', 'date', 'genericdatetime', 'boolean', 'integer', 'float', 'geopoint', 'geopolygon'], 'type': 'string', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['integer', 'float', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'integer', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['float', 'integer', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'float', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['date', 'genericdatetime', 'string', 'integer', 'float', 'boolean'], 'type': 'date', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['genericdatetime', 'datetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetime', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['boolean', 'integer', 'float', 'string'], 'type': 'boolean', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopoint', 'string'], 'type': 'geopoint', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopolygon', 'string'], 'type': 'geopolygon', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['uuid', 'string'], 'type': 'uuid', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['markup'], 'type': 'markup', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['datetimetz', 'genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetimetz', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['unsupported'], 'type': 'unsupported', 'aggregations': [], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['array_str', 'string'], 'type': 'array_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_int', 'string'], 'type': 'array_int', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_float', 'string'], 'type': 'array_float', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['tree_str'], 'type': 'tree_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'genericdatetime', 'aggregations': ['count', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}]}, 'join': {'types': ['inner', 'left', 'right', 'full'], 'operators': ['eq']}, 'connections': {'max': 1, 'items': [{'id': 'g48128a84x2u3', 'replacement_types': [{'conn_type': 'postgres'}]}], 'compatible_types': []}, 'fields': {'items': []}, 'preview': {'enabled': True}, 'sources': {'items': [{'id': '68e3248b-ca7f-4970-b01a-da6b424827d4', 'schema_update_enabled': False}], 'compatible_types': [{'source_type': 'BITRIX_GDS'}]}, 'supports_offset': True, 'supported_functions': ['abs', 'acos', 'all_concat', 'any', 'arr_remove', 'arr_str', 'array', 'ascii', 'asin', 'atan', 'atan2', 'avg', 'avg_if', 'bold', 'bool', 'br', 'case', 'cast_arr_float', 'cast_arr_int', 'cast_arr_str', 'ceiling', 'char', 'color', 'concat', 'contains', 'contains_all', 'contains_any', 'cos', 'cot', 'count', 'count_if', 'count_item', 'countd', 'countd_if', 'date', 'dateadd', 'datepart', 'datetime', 'datetrunc', 'day', 'dayofweek', 'db_cast', 'degrees', 'div', 'div_safe', 'endswith', 'exp', 'fdiv_safe', 'find', 'first', 'float', 'floor', 'geopoint', 'geopolygon', 'get_item', 'greatest', 'hour', 'icontains', 'iendswith', 'if', 'ifnan', 'ifnull', 'iif', 'image', 'int', 'isnan', 'isnull', 'istartswith', 'italic', 'lag', 'last', 'least', 'left', 'len', 'ln', 'log', 'log10', 'lower', 'ltrim', 'markup', 'mavg', 'max', 'mcount', 'median', 'min', 'minute', 'mmax', 'mmin', 'month', 'msum', 'notcontains', 'now', 'pi', 'power', 'quantile', 'quarter', 'radians', 'rank', 'rank_dense', 'rank_percentile', 'rank_unique', 'ravg', 'rcount', 'regexp_extract', 'regexp_extract_nth', 'regexp_match', 'regexp_replace', 'replace', 'right', 'rmax', 'rmin', 'round', 'rsum', 'rtrim', 'second', 'sign', 'sin', 'size', 'slice', 'space', 'split', 'sqrt', 'square', 'startswith', 'stdev', 'stdevp', 'str', 'substr', 'sum', 'sum_if', 'tan', 'today', 'tree', 'trim', 'unnest', 'upper', 'url', 'var', 'varp', 'week', 'year', 'zn'], 'source_avatars': {'max': 32, 'items': [{'id': '2febb553-0269-438d-a2a4-7dcc683455ec', 'schema_update_enabled': False}]}}}

/venv/lib/python3.10/site-packages/dl_api_client/dsmaker/api/dataset_api.py:234: AssertionError

Check failure on line 0 in dl_connector_bitrix_gds_tests.ext.api.test_data.TestBitrixDataResult

See this annotation in the file changed.

@github-actions github-actions / Test Results

test_duplicated_expressions (dl_connector_bitrix_gds_tests.ext.api.test_data.TestBitrixDataResult) with error

./report/pytest_reports_dl_connector_bitrix_gds_442724729/_src_lib_dl_connector_bitrix_gds_dl_connector_bitrix_gds_tests-ext-ad12e63037fc49018d8f609250f83756.xml [took 3s]
Raw output
failed on setup with "AssertionError: {'code': 'ERR.DS_API.VALIDATION.ERROR', 'dataset': {'result_schema_aux': {'inter_dependencies': {'deps': []}}, 'revision_id': None, 'avatar_relations': [], 'preview_enabled': True, 'rls': {}, 'component_errors': {'items': [{'id': '1c2cf98f-346f-4477-98de-e94bad736618', 'type': 'data_source', 'errors': [{'message': 'Data source (table) identified by: `default..crm_deal` does not exist.', 'code': 'ERR.DS_API.DB.SOURCE_DOES_NOT_EXIST', 'level': 'error', 'details': {'db_message': ''}}]}]}, 'obligatory_filters': [], 'sources': [{'source_type': 'BITRIX_GDS', 'parameters': {'db_version': None, 'table_name': 'crm_deal', 'db_name': 'default'}, 'id': '1c2cf98f-346f-4477-98de-e94bad736618', 'raw_schema': [], 'virtual': False, 'valid': False, 'managed_by': 'user', 'parameter_hash': '8a59d69e7c21c4af', 'index_info_set': None, 'title': 'crm_deal', 'connection_id': 'uimfgzz21psah'}], 'result_schema': [], 'source_avatars': [{'source_id': '1c2cf98f-346f-4477-98de-e94bad736618', 'id': '6b45b1d6-755b-416f-b412-1ed81f1b06d0', 'virtual': False, 'valid': True, 'managed_by': 'user', 'title': 'avatar_1', 'is_root': True}], 'load_preview_by_default': True}, 'message': 'Validation finished with errors.', 'dataset_errors': [], 'options': {'schema_update_enabled': False, 'data_types': {'items': [{'casts': ['string', 'date', 'genericdatetime', 'boolean', 'integer', 'float', 'geopoint', 'geopolygon'], 'type': 'string', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['integer', 'float', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'integer', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['float', 'integer', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'float', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['date', 'genericdatetime', 'string', 'integer', 'float', 'boolean'], 'type': 'date', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['genericdatetime', 'datetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetime', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['boolean', 'integer', 'float', 'string'], 'type': 'boolean', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopoint', 'string'], 'type': 'geopoint', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopolygon', 'string'], 'type': 'geopolygon', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['uuid', 'string'], 'type': 'uuid', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['markup'], 'type': 'markup', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['datetimetz', 'genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetimetz', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['unsupported'], 'type': 'unsupported', 'aggregations': [], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['array_str', 'string'], 'type': 'array_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_int', 'string'], 'type': 'array_int', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_float', 'string'], 'type': 'array_float', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['tree_str'], 'type': 'tree_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'genericdatetime', 'aggregations': ['count', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}]}, 'join': {'types': ['inner', 'left', 'right', 'full'], 'operators': ['eq']}, 'connections': {'max': 1, 'items': [{'id': 'uimfgzz21psah', 'replacement_types': [{'conn_type': 'postgres'}]}], 'compatible_types': []}, 'fields': {'items': []}, 'preview': {'enabled': True}, 'sources': {'items': [{'id': '1c2cf98f-346f-4477-98de-e94bad736618', 'schema_update_enabled': False}], 'compatible_types': [{'source_type': 'BITRIX_GDS'}]}, 'supports_offset': True, 'supported_functions': ['abs', 'acos', 'all_concat', 'any', 'arr_remove', 'arr_str', 'array', 'ascii', 'asin', 'atan', 'atan2', 'avg', 'avg_if', 'bold', 'bool', 'br', 'case', 'cast_arr_float', 'cast_arr_int', 'cast_arr_str', 'ceiling', 'char', 'color', 'concat', 'contains', 'contains_all', 'contains_any', 'cos', 'cot', 'count', 'count_if', 'count_item', 'countd', 'countd_if', 'date', 'dateadd', 'datepart', 'datetime', 'datetrunc', 'day', 'dayofweek', 'db_cast', 'degrees', 'div', 'div_safe', 'endswith', 'exp', 'fdiv_safe', 'find', 'first', 'float', 'floor', 'geopoint', 'geopolygon', 'get_item', 'greatest', 'hour', 'icontains', 'iendswith', 'if', 'ifnan', 'ifnull', 'iif', 'image', 'int', 'isnan', 'isnull', 'istartswith', 'italic', 'lag', 'last', 'least', 'left', 'len', 'ln', 'log', 'log10', 'lower', 'ltrim', 'markup', 'mavg', 'max', 'mcount', 'median', 'min', 'minute', 'mmax', 'mmin', 'month', 'msum', 'notcontains', 'now', 'pi', 'power', 'quantile', 'quarter', 'radians', 'rank', 'rank_dense', 'rank_percentile', 'rank_unique', 'ravg', 'rcount', 'regexp_extract', 'regexp_extract_nth', 'regexp_match', 'regexp_replace', 'replace', 'right', 'rmax', 'rmin', 'round', 'rsum', 'rtrim', 'second', 'sign', 'sin', 'size', 'slice', 'space', 'split', 'sqrt', 'square', 'startswith', 'stdev', 'stdevp', 'str', 'substr', 'sum', 'sum_if', 'tan', 'today', 'tree', 'trim', 'unnest', 'upper', 'url', 'var', 'varp', 'week', 'year', 'zn'], 'source_avatars': {'max': 32, 'items': [{'id': '6b45b1d6-755b-416f-b412-1ed81f1b06d0', 'schema_update_enabled': False}]}}}"
>       lambda: ihook(item=item, **kwds), when=when, reraise=reraise
    )

/venv/lib/python3.10/site-packages/flaky/flaky_pytest_plugin.py:146: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/venv/lib/python3.10/site-packages/pytest_lazyfixture.py:39: in fill
    _fillfixtures()
/venv/lib/python3.10/site-packages/dl_api_lib_testing/dataset_base.py:41: in saved_dataset
    ds = self.make_basic_dataset(
/venv/lib/python3.10/site-packages/dl_api_lib_testing/dataset_base.py:30: in make_basic_dataset
    ds = control_api.apply_updates(dataset=ds, fail_ok=False).dataset
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = SyncHttpDatasetApiV1(client=FlaskSyncApiClient(_int_wclient=<TestClient <Flask 'dl_api_lib.app.control_api.app'>>), headers={}, _created_dataset_id_list=[], serial_adapter=DatasetApiV1SerializationAdapter())
dataset = Dataset(id='b0ed249f-916f-4398-bf55-060823111208', created_=False, name=None, revision_id=None, load_preview_by_defaul...sultSchemaAux(inter_dependencies={}), rls={}, component_errors=ComponentErrorRegistry(items=[]), obligatory_filters=[])
updates = [UpdateAction(action=<Action.add: 'add'>, item=DataSource(id='1c2cf98f-346f-4477-98de-e94bad736618', created_=False, c...', title='avatar_1', is_root=False, managed_by=<ManagedBy.user: 'user'>, valid=True), custom_data=None, order_index=0)]
fail_ok = False

    def apply_updates(  # type: ignore  # TODO: fix
        self,
        dataset: Dataset,
        updates: list[Union[UpdateAction, dict]] = None,  # type: ignore  # 2024-01-24 # TODO: Incompatible default for argument "updates" (default has type "None", argument has type "list[UpdateAction | dict[Any, Any]]")  [assignment]
        fail_ok: bool = False,
    ) -> HttpDatasetApiResponse:
        if dataset.created_:
            url = f"/api/v1/datasets/{dataset.id}/versions/draft/validators/schema"
        else:
            url = "/api/v1/datasets/validators/dataset"
    
        data = self.dump_dataset_to_request_body(dataset)
        updates = list(updates or ()) + self.serial_adapter.generate_implicit_updates(dataset)  # type: ignore  # 2024-01-24 # TODO: Unsupported operand types for + ("list[UpdateAction | dict[Any, Any]]" and "list[UpdateAction]")  [operator]
        data["updates"] = self.serial_adapter.dump_updates(updates)
        response = self._request(url, method="post", data=data)
    
        if fail_ok:
            # `fail_ok` should not mean `allow 5xx`
            assert response.status_code < 500, response.json
        else:
            try:
>               assert response.status_code == HTTPStatus.OK, response.json
E               AssertionError: {'code': 'ERR.DS_API.VALIDATION.ERROR', 'dataset': {'result_schema_aux': {'inter_dependencies': {'deps': []}}, 'revision_id': None, 'avatar_relations': [], 'preview_enabled': True, 'rls': {}, 'component_errors': {'items': [{'id': '1c2cf98f-346f-4477-98de-e94bad736618', 'type': 'data_source', 'errors': [{'message': 'Data source (table) identified by: `default..crm_deal` does not exist.', 'code': 'ERR.DS_API.DB.SOURCE_DOES_NOT_EXIST', 'level': 'error', 'details': {'db_message': ''}}]}]}, 'obligatory_filters': [], 'sources': [{'source_type': 'BITRIX_GDS', 'parameters': {'db_version': None, 'table_name': 'crm_deal', 'db_name': 'default'}, 'id': '1c2cf98f-346f-4477-98de-e94bad736618', 'raw_schema': [], 'virtual': False, 'valid': False, 'managed_by': 'user', 'parameter_hash': '8a59d69e7c21c4af', 'index_info_set': None, 'title': 'crm_deal', 'connection_id': 'uimfgzz21psah'}], 'result_schema': [], 'source_avatars': [{'source_id': '1c2cf98f-346f-4477-98de-e94bad736618', 'id': '6b45b1d6-755b-416f-b412-1ed81f1b06d0', 'virtual': False, 'valid': True, 'managed_by': 'user', 'title': 'avatar_1', 'is_root': True}], 'load_preview_by_default': True}, 'message': 'Validation finished with errors.', 'dataset_errors': [], 'options': {'schema_update_enabled': False, 'data_types': {'items': [{'casts': ['string', 'date', 'genericdatetime', 'boolean', 'integer', 'float', 'geopoint', 'geopolygon'], 'type': 'string', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['integer', 'float', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'integer', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['float', 'integer', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'float', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['date', 'genericdatetime', 'string', 'integer', 'float', 'boolean'], 'type': 'date', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['genericdatetime', 'datetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetime', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['boolean', 'integer', 'float', 'string'], 'type': 'boolean', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopoint', 'string'], 'type': 'geopoint', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopolygon', 'string'], 'type': 'geopolygon', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['uuid', 'string'], 'type': 'uuid', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['markup'], 'type': 'markup', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['datetimetz', 'genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetimetz', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['unsupported'], 'type': 'unsupported', 'aggregations': [], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['array_str', 'string'], 'type': 'array_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_int', 'string'], 'type': 'array_int', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_float', 'string'], 'type': 'array_float', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['tree_str'], 'type': 'tree_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'genericdatetime', 'aggregations': ['count', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}]}, 'join': {'types': ['inner', 'left', 'right', 'full'], 'operators': ['eq']}, 'connections': {'max': 1, 'items': [{'id': 'uimfgzz21psah', 'replacement_types': [{'conn_type': 'postgres'}]}], 'compatible_types': []}, 'fields': {'items': []}, 'preview': {'enabled': True}, 'sources': {'items': [{'id': '1c2cf98f-346f-4477-98de-e94bad736618', 'schema_update_enabled': False}], 'compatible_types': [{'source_type': 'BITRIX_GDS'}]}, 'supports_offset': True, 'supported_functions': ['abs', 'acos', 'all_concat', 'any', 'arr_remove', 'arr_str', 'array', 'ascii', 'asin', 'atan', 'atan2', 'avg', 'avg_if', 'bold', 'bool', 'br', 'case', 'cast_arr_float', 'cast_arr_int', 'cast_arr_str', 'ceiling', 'char', 'color', 'concat', 'contains', 'contains_all', 'contains_any', 'cos', 'cot', 'count', 'count_if', 'count_item', 'countd', 'countd_if', 'date', 'dateadd', 'datepart', 'datetime', 'datetrunc', 'day', 'dayofweek', 'db_cast', 'degrees', 'div', 'div_safe', 'endswith', 'exp', 'fdiv_safe', 'find', 'first', 'float', 'floor', 'geopoint', 'geopolygon', 'get_item', 'greatest', 'hour', 'icontains', 'iendswith', 'if', 'ifnan', 'ifnull', 'iif', 'image', 'int', 'isnan', 'isnull', 'istartswith', 'italic', 'lag', 'last', 'least', 'left', 'len', 'ln', 'log', 'log10', 'lower', 'ltrim', 'markup', 'mavg', 'max', 'mcount', 'median', 'min', 'minute', 'mmax', 'mmin', 'month', 'msum', 'notcontains', 'now', 'pi', 'power', 'quantile', 'quarter', 'radians', 'rank', 'rank_dense', 'rank_percentile', 'rank_unique', 'ravg', 'rcount', 'regexp_extract', 'regexp_extract_nth', 'regexp_match', 'regexp_replace', 'replace', 'right', 'rmax', 'rmin', 'round', 'rsum', 'rtrim', 'second', 'sign', 'sin', 'size', 'slice', 'space', 'split', 'sqrt', 'square', 'startswith', 'stdev', 'stdevp', 'str', 'substr', 'sum', 'sum_if', 'tan', 'today', 'tree', 'trim', 'unnest', 'upper', 'url', 'var', 'varp', 'week', 'year', 'zn'], 'source_avatars': {'max': 32, 'items': [{'id': '6b45b1d6-755b-416f-b412-1ed81f1b06d0', 'schema_update_enabled': False}]}}}

/venv/lib/python3.10/site-packages/dl_api_client/dsmaker/api/dataset_api.py:234: AssertionError

Check failure on line 0 in dl_connector_bitrix_gds_tests.ext.api.test_data.TestBitrixDataResult

See this annotation in the file changed.

@github-actions github-actions / Test Results

test_dates (dl_connector_bitrix_gds_tests.ext.api.test_data.TestBitrixDataResult) with error

./report/pytest_reports_dl_connector_bitrix_gds_442724729/_src_lib_dl_connector_bitrix_gds_dl_connector_bitrix_gds_tests-ext-ad12e63037fc49018d8f609250f83756.xml [took 3s]
Raw output
failed on setup with "AssertionError: {'code': 'ERR.DS_API.VALIDATION.ERROR', 'dataset': {'result_schema_aux': {'inter_dependencies': {'deps': []}}, 'revision_id': None, 'avatar_relations': [], 'preview_enabled': True, 'rls': {}, 'component_errors': {'items': [{'id': 'f29d258b-18d4-4004-8d3e-789d77a51814', 'type': 'data_source', 'errors': [{'message': 'Data source (table) identified by: `default..crm_deal` does not exist.', 'code': 'ERR.DS_API.DB.SOURCE_DOES_NOT_EXIST', 'level': 'error', 'details': {'db_message': ''}}]}]}, 'obligatory_filters': [], 'sources': [{'source_type': 'BITRIX_GDS', 'parameters': {'db_version': None, 'table_name': 'crm_deal', 'db_name': 'default'}, 'id': 'f29d258b-18d4-4004-8d3e-789d77a51814', 'raw_schema': [], 'virtual': False, 'valid': False, 'managed_by': 'user', 'parameter_hash': '01fc7335d9e163a0', 'index_info_set': None, 'title': 'crm_deal', 'connection_id': 'g4812zupsj123'}], 'result_schema': [], 'source_avatars': [{'source_id': 'f29d258b-18d4-4004-8d3e-789d77a51814', 'id': '01dc1c4c-4beb-4050-a516-e000bd2bf770', 'virtual': False, 'valid': True, 'managed_by': 'user', 'title': 'avatar_1', 'is_root': True}], 'load_preview_by_default': True}, 'message': 'Validation finished with errors.', 'dataset_errors': [], 'options': {'schema_update_enabled': False, 'data_types': {'items': [{'casts': ['string', 'date', 'genericdatetime', 'boolean', 'integer', 'float', 'geopoint', 'geopolygon'], 'type': 'string', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['integer', 'float', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'integer', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['float', 'integer', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'float', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['date', 'genericdatetime', 'string', 'integer', 'float', 'boolean'], 'type': 'date', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['genericdatetime', 'datetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetime', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['boolean', 'integer', 'float', 'string'], 'type': 'boolean', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopoint', 'string'], 'type': 'geopoint', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopolygon', 'string'], 'type': 'geopolygon', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['uuid', 'string'], 'type': 'uuid', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['markup'], 'type': 'markup', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['datetimetz', 'genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetimetz', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['unsupported'], 'type': 'unsupported', 'aggregations': [], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['array_str', 'string'], 'type': 'array_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_int', 'string'], 'type': 'array_int', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_float', 'string'], 'type': 'array_float', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['tree_str'], 'type': 'tree_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'genericdatetime', 'aggregations': ['count', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}]}, 'join': {'types': ['inner', 'left', 'right', 'full'], 'operators': ['eq']}, 'connections': {'max': 1, 'items': [{'id': 'g4812zupsj123', 'replacement_types': [{'conn_type': 'postgres'}]}], 'compatible_types': []}, 'fields': {'items': []}, 'preview': {'enabled': True}, 'sources': {'items': [{'id': 'f29d258b-18d4-4004-8d3e-789d77a51814', 'schema_update_enabled': False}], 'compatible_types': [{'source_type': 'BITRIX_GDS'}]}, 'supports_offset': True, 'supported_functions': ['abs', 'acos', 'all_concat', 'any', 'arr_remove', 'arr_str', 'array', 'ascii', 'asin', 'atan', 'atan2', 'avg', 'avg_if', 'bold', 'bool', 'br', 'case', 'cast_arr_float', 'cast_arr_int', 'cast_arr_str', 'ceiling', 'char', 'color', 'concat', 'contains', 'contains_all', 'contains_any', 'cos', 'cot', 'count', 'count_if', 'count_item', 'countd', 'countd_if', 'date', 'dateadd', 'datepart', 'datetime', 'datetrunc', 'day', 'dayofweek', 'db_cast', 'degrees', 'div', 'div_safe', 'endswith', 'exp', 'fdiv_safe', 'find', 'first', 'float', 'floor', 'geopoint', 'geopolygon', 'get_item', 'greatest', 'hour', 'icontains', 'iendswith', 'if', 'ifnan', 'ifnull', 'iif', 'image', 'int', 'isnan', 'isnull', 'istartswith', 'italic', 'lag', 'last', 'least', 'left', 'len', 'ln', 'log', 'log10', 'lower', 'ltrim', 'markup', 'mavg', 'max', 'mcount', 'median', 'min', 'minute', 'mmax', 'mmin', 'month', 'msum', 'notcontains', 'now', 'pi', 'power', 'quantile', 'quarter', 'radians', 'rank', 'rank_dense', 'rank_percentile', 'rank_unique', 'ravg', 'rcount', 'regexp_extract', 'regexp_extract_nth', 'regexp_match', 'regexp_replace', 'replace', 'right', 'rmax', 'rmin', 'round', 'rsum', 'rtrim', 'second', 'sign', 'sin', 'size', 'slice', 'space', 'split', 'sqrt', 'square', 'startswith', 'stdev', 'stdevp', 'str', 'substr', 'sum', 'sum_if', 'tan', 'today', 'tree', 'trim', 'unnest', 'upper', 'url', 'var', 'varp', 'week', 'year', 'zn'], 'source_avatars': {'max': 32, 'items': [{'id': '01dc1c4c-4beb-4050-a516-e000bd2bf770', 'schema_update_enabled': False}]}}}"
>       lambda: ihook(item=item, **kwds), when=when, reraise=reraise
    )

/venv/lib/python3.10/site-packages/flaky/flaky_pytest_plugin.py:146: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/venv/lib/python3.10/site-packages/pytest_lazyfixture.py:39: in fill
    _fillfixtures()
/venv/lib/python3.10/site-packages/dl_api_lib_testing/dataset_base.py:41: in saved_dataset
    ds = self.make_basic_dataset(
/venv/lib/python3.10/site-packages/dl_api_lib_testing/dataset_base.py:30: in make_basic_dataset
    ds = control_api.apply_updates(dataset=ds, fail_ok=False).dataset
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = SyncHttpDatasetApiV1(client=FlaskSyncApiClient(_int_wclient=<TestClient <Flask 'dl_api_lib.app.control_api.app'>>), headers={}, _created_dataset_id_list=[], serial_adapter=DatasetApiV1SerializationAdapter())
dataset = Dataset(id='28c4a147-d396-4c74-8c31-a988aafadfd8', created_=False, name=None, revision_id=None, load_preview_by_defaul...sultSchemaAux(inter_dependencies={}), rls={}, component_errors=ComponentErrorRegistry(items=[]), obligatory_filters=[])
updates = [UpdateAction(action=<Action.add: 'add'>, item=DataSource(id='f29d258b-18d4-4004-8d3e-789d77a51814', created_=False, c...', title='avatar_1', is_root=False, managed_by=<ManagedBy.user: 'user'>, valid=True), custom_data=None, order_index=0)]
fail_ok = False

    def apply_updates(  # type: ignore  # TODO: fix
        self,
        dataset: Dataset,
        updates: list[Union[UpdateAction, dict]] = None,  # type: ignore  # 2024-01-24 # TODO: Incompatible default for argument "updates" (default has type "None", argument has type "list[UpdateAction | dict[Any, Any]]")  [assignment]
        fail_ok: bool = False,
    ) -> HttpDatasetApiResponse:
        if dataset.created_:
            url = f"/api/v1/datasets/{dataset.id}/versions/draft/validators/schema"
        else:
            url = "/api/v1/datasets/validators/dataset"
    
        data = self.dump_dataset_to_request_body(dataset)
        updates = list(updates or ()) + self.serial_adapter.generate_implicit_updates(dataset)  # type: ignore  # 2024-01-24 # TODO: Unsupported operand types for + ("list[UpdateAction | dict[Any, Any]]" and "list[UpdateAction]")  [operator]
        data["updates"] = self.serial_adapter.dump_updates(updates)
        response = self._request(url, method="post", data=data)
    
        if fail_ok:
            # `fail_ok` should not mean `allow 5xx`
            assert response.status_code < 500, response.json
        else:
            try:
>               assert response.status_code == HTTPStatus.OK, response.json
E               AssertionError: {'code': 'ERR.DS_API.VALIDATION.ERROR', 'dataset': {'result_schema_aux': {'inter_dependencies': {'deps': []}}, 'revision_id': None, 'avatar_relations': [], 'preview_enabled': True, 'rls': {}, 'component_errors': {'items': [{'id': 'f29d258b-18d4-4004-8d3e-789d77a51814', 'type': 'data_source', 'errors': [{'message': 'Data source (table) identified by: `default..crm_deal` does not exist.', 'code': 'ERR.DS_API.DB.SOURCE_DOES_NOT_EXIST', 'level': 'error', 'details': {'db_message': ''}}]}]}, 'obligatory_filters': [], 'sources': [{'source_type': 'BITRIX_GDS', 'parameters': {'db_version': None, 'table_name': 'crm_deal', 'db_name': 'default'}, 'id': 'f29d258b-18d4-4004-8d3e-789d77a51814', 'raw_schema': [], 'virtual': False, 'valid': False, 'managed_by': 'user', 'parameter_hash': '01fc7335d9e163a0', 'index_info_set': None, 'title': 'crm_deal', 'connection_id': 'g4812zupsj123'}], 'result_schema': [], 'source_avatars': [{'source_id': 'f29d258b-18d4-4004-8d3e-789d77a51814', 'id': '01dc1c4c-4beb-4050-a516-e000bd2bf770', 'virtual': False, 'valid': True, 'managed_by': 'user', 'title': 'avatar_1', 'is_root': True}], 'load_preview_by_default': True}, 'message': 'Validation finished with errors.', 'dataset_errors': [], 'options': {'schema_update_enabled': False, 'data_types': {'items': [{'casts': ['string', 'date', 'genericdatetime', 'boolean', 'integer', 'float', 'geopoint', 'geopolygon'], 'type': 'string', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['integer', 'float', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'integer', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['float', 'integer', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'float', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['date', 'genericdatetime', 'string', 'integer', 'float', 'boolean'], 'type': 'date', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['genericdatetime', 'datetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetime', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['boolean', 'integer', 'float', 'string'], 'type': 'boolean', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopoint', 'string'], 'type': 'geopoint', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopolygon', 'string'], 'type': 'geopolygon', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['uuid', 'string'], 'type': 'uuid', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['markup'], 'type': 'markup', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['datetimetz', 'genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetimetz', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['unsupported'], 'type': 'unsupported', 'aggregations': [], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['array_str', 'string'], 'type': 'array_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_int', 'string'], 'type': 'array_int', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_float', 'string'], 'type': 'array_float', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['tree_str'], 'type': 'tree_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'genericdatetime', 'aggregations': ['count', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}]}, 'join': {'types': ['inner', 'left', 'right', 'full'], 'operators': ['eq']}, 'connections': {'max': 1, 'items': [{'id': 'g4812zupsj123', 'replacement_types': [{'conn_type': 'postgres'}]}], 'compatible_types': []}, 'fields': {'items': []}, 'preview': {'enabled': True}, 'sources': {'items': [{'id': 'f29d258b-18d4-4004-8d3e-789d77a51814', 'schema_update_enabled': False}], 'compatible_types': [{'source_type': 'BITRIX_GDS'}]}, 'supports_offset': True, 'supported_functions': ['abs', 'acos', 'all_concat', 'any', 'arr_remove', 'arr_str', 'array', 'ascii', 'asin', 'atan', 'atan2', 'avg', 'avg_if', 'bold', 'bool', 'br', 'case', 'cast_arr_float', 'cast_arr_int', 'cast_arr_str', 'ceiling', 'char', 'color', 'concat', 'contains', 'contains_all', 'contains_any', 'cos', 'cot', 'count', 'count_if', 'count_item', 'countd', 'countd_if', 'date', 'dateadd', 'datepart', 'datetime', 'datetrunc', 'day', 'dayofweek', 'db_cast', 'degrees', 'div', 'div_safe', 'endswith', 'exp', 'fdiv_safe', 'find', 'first', 'float', 'floor', 'geopoint', 'geopolygon', 'get_item', 'greatest', 'hour', 'icontains', 'iendswith', 'if', 'ifnan', 'ifnull', 'iif', 'image', 'int', 'isnan', 'isnull', 'istartswith', 'italic', 'lag', 'last', 'least', 'left', 'len', 'ln', 'log', 'log10', 'lower', 'ltrim', 'markup', 'mavg', 'max', 'mcount', 'median', 'min', 'minute', 'mmax', 'mmin', 'month', 'msum', 'notcontains', 'now', 'pi', 'power', 'quantile', 'quarter', 'radians', 'rank', 'rank_dense', 'rank_percentile', 'rank_unique', 'ravg', 'rcount', 'regexp_extract', 'regexp_extract_nth', 'regexp_match', 'regexp_replace', 'replace', 'right', 'rmax', 'rmin', 'round', 'rsum', 'rtrim', 'second', 'sign', 'sin', 'size', 'slice', 'space', 'split', 'sqrt', 'square', 'startswith', 'stdev', 'stdevp', 'str', 'substr', 'sum', 'sum_if', 'tan', 'today', 'tree', 'trim', 'unnest', 'upper', 'url', 'var', 'varp', 'week', 'year', 'zn'], 'source_avatars': {'max': 32, 'items': [{'id': '01dc1c4c-4beb-4050-a516-e000bd2bf770', 'schema_update_enabled': False}]}}}

/venv/lib/python3.10/site-packages/dl_api_client/dsmaker/api/dataset_api.py:234: AssertionError

Check failure on line 0 in dl_connector_bitrix_gds_tests.ext.api.test_data.TestBitrixDataResult

See this annotation in the file changed.

@github-actions github-actions / Test Results

test_get_result_with_formula_in_where (dl_connector_bitrix_gds_tests.ext.api.test_data.TestBitrixDataResult) with error

./report/pytest_reports_dl_connector_bitrix_gds_442724729/_src_lib_dl_connector_bitrix_gds_dl_connector_bitrix_gds_tests-ext-ad12e63037fc49018d8f609250f83756.xml [took 3s]
Raw output
failed on setup with "AssertionError: {'code': 'ERR.DS_API.VALIDATION.ERROR', 'dataset': {'result_schema_aux': {'inter_dependencies': {'deps': []}}, 'revision_id': None, 'avatar_relations': [], 'preview_enabled': True, 'rls': {}, 'component_errors': {'items': [{'id': '538d07f9-9033-41a4-a249-d78772ece0a8', 'type': 'data_source', 'errors': [{'message': 'Data source (table) identified by: `default..crm_deal` does not exist.', 'code': 'ERR.DS_API.DB.SOURCE_DOES_NOT_EXIST', 'level': 'error', 'details': {'db_message': ''}}]}]}, 'obligatory_filters': [], 'sources': [{'source_type': 'BITRIX_GDS', 'parameters': {'db_version': None, 'table_name': 'crm_deal', 'db_name': 'default'}, 'id': '538d07f9-9033-41a4-a249-d78772ece0a8', 'raw_schema': [], 'virtual': False, 'valid': False, 'managed_by': 'user', 'parameter_hash': '5737ef29b10c6b0e', 'index_info_set': None, 'title': 'crm_deal', 'connection_id': 'ymqklvo8smn6l'}], 'result_schema': [], 'source_avatars': [{'source_id': '538d07f9-9033-41a4-a249-d78772ece0a8', 'id': '1ff943c7-53ec-4200-9e31-35d1b7ae7796', 'virtual': False, 'valid': True, 'managed_by': 'user', 'title': 'avatar_1', 'is_root': True}], 'load_preview_by_default': True}, 'message': 'Validation finished with errors.', 'dataset_errors': [], 'options': {'schema_update_enabled': False, 'data_types': {'items': [{'casts': ['string', 'date', 'genericdatetime', 'boolean', 'integer', 'float', 'geopoint', 'geopolygon'], 'type': 'string', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['integer', 'float', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'integer', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['float', 'integer', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'float', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['date', 'genericdatetime', 'string', 'integer', 'float', 'boolean'], 'type': 'date', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['genericdatetime', 'datetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetime', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['boolean', 'integer', 'float', 'string'], 'type': 'boolean', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopoint', 'string'], 'type': 'geopoint', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopolygon', 'string'], 'type': 'geopolygon', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['uuid', 'string'], 'type': 'uuid', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['markup'], 'type': 'markup', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['datetimetz', 'genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetimetz', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['unsupported'], 'type': 'unsupported', 'aggregations': [], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['array_str', 'string'], 'type': 'array_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_int', 'string'], 'type': 'array_int', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_float', 'string'], 'type': 'array_float', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['tree_str'], 'type': 'tree_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'genericdatetime', 'aggregations': ['count', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}]}, 'join': {'types': ['inner', 'left', 'right', 'full'], 'operators': ['eq']}, 'connections': {'max': 1, 'items': [{'id': 'ymqklvo8smn6l', 'replacement_types': [{'conn_type': 'postgres'}]}], 'compatible_types': []}, 'fields': {'items': []}, 'preview': {'enabled': True}, 'sources': {'items': [{'id': '538d07f9-9033-41a4-a249-d78772ece0a8', 'schema_update_enabled': False}], 'compatible_types': [{'source_type': 'BITRIX_GDS'}]}, 'supports_offset': True, 'supported_functions': ['abs', 'acos', 'all_concat', 'any', 'arr_remove', 'arr_str', 'array', 'ascii', 'asin', 'atan', 'atan2', 'avg', 'avg_if', 'bold', 'bool', 'br', 'case', 'cast_arr_float', 'cast_arr_int', 'cast_arr_str', 'ceiling', 'char', 'color', 'concat', 'contains', 'contains_all', 'contains_any', 'cos', 'cot', 'count', 'count_if', 'count_item', 'countd', 'countd_if', 'date', 'dateadd', 'datepart', 'datetime', 'datetrunc', 'day', 'dayofweek', 'db_cast', 'degrees', 'div', 'div_safe', 'endswith', 'exp', 'fdiv_safe', 'find', 'first', 'float', 'floor', 'geopoint', 'geopolygon', 'get_item', 'greatest', 'hour', 'icontains', 'iendswith', 'if', 'ifnan', 'ifnull', 'iif', 'image', 'int', 'isnan', 'isnull', 'istartswith', 'italic', 'lag', 'last', 'least', 'left', 'len', 'ln', 'log', 'log10', 'lower', 'ltrim', 'markup', 'mavg', 'max', 'mcount', 'median', 'min', 'minute', 'mmax', 'mmin', 'month', 'msum', 'notcontains', 'now', 'pi', 'power', 'quantile', 'quarter', 'radians', 'rank', 'rank_dense', 'rank_percentile', 'rank_unique', 'ravg', 'rcount', 'regexp_extract', 'regexp_extract_nth', 'regexp_match', 'regexp_replace', 'replace', 'right', 'rmax', 'rmin', 'round', 'rsum', 'rtrim', 'second', 'sign', 'sin', 'size', 'slice', 'space', 'split', 'sqrt', 'square', 'startswith', 'stdev', 'stdevp', 'str', 'substr', 'sum', 'sum_if', 'tan', 'today', 'tree', 'trim', 'unnest', 'upper', 'url', 'var', 'varp', 'week', 'year', 'zn'], 'source_avatars': {'max': 32, 'items': [{'id': '1ff943c7-53ec-4200-9e31-35d1b7ae7796', 'schema_update_enabled': False}]}}}"
>       lambda: ihook(item=item, **kwds), when=when, reraise=reraise
    )

/venv/lib/python3.10/site-packages/flaky/flaky_pytest_plugin.py:146: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/venv/lib/python3.10/site-packages/pytest_lazyfixture.py:39: in fill
    _fillfixtures()
/venv/lib/python3.10/site-packages/dl_api_lib_testing/dataset_base.py:41: in saved_dataset
    ds = self.make_basic_dataset(
/venv/lib/python3.10/site-packages/dl_api_lib_testing/dataset_base.py:30: in make_basic_dataset
    ds = control_api.apply_updates(dataset=ds, fail_ok=False).dataset
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = SyncHttpDatasetApiV1(client=FlaskSyncApiClient(_int_wclient=<TestClient <Flask 'dl_api_lib.app.control_api.app'>>), headers={}, _created_dataset_id_list=[], serial_adapter=DatasetApiV1SerializationAdapter())
dataset = Dataset(id='4f2bcc7c-9f98-414b-a250-a7d8afd7f4da', created_=False, name=None, revision_id=None, load_preview_by_defaul...sultSchemaAux(inter_dependencies={}), rls={}, component_errors=ComponentErrorRegistry(items=[]), obligatory_filters=[])
updates = [UpdateAction(action=<Action.add: 'add'>, item=DataSource(id='538d07f9-9033-41a4-a249-d78772ece0a8', created_=False, c...', title='avatar_1', is_root=False, managed_by=<ManagedBy.user: 'user'>, valid=True), custom_data=None, order_index=0)]
fail_ok = False

    def apply_updates(  # type: ignore  # TODO: fix
        self,
        dataset: Dataset,
        updates: list[Union[UpdateAction, dict]] = None,  # type: ignore  # 2024-01-24 # TODO: Incompatible default for argument "updates" (default has type "None", argument has type "list[UpdateAction | dict[Any, Any]]")  [assignment]
        fail_ok: bool = False,
    ) -> HttpDatasetApiResponse:
        if dataset.created_:
            url = f"/api/v1/datasets/{dataset.id}/versions/draft/validators/schema"
        else:
            url = "/api/v1/datasets/validators/dataset"
    
        data = self.dump_dataset_to_request_body(dataset)
        updates = list(updates or ()) + self.serial_adapter.generate_implicit_updates(dataset)  # type: ignore  # 2024-01-24 # TODO: Unsupported operand types for + ("list[UpdateAction | dict[Any, Any]]" and "list[UpdateAction]")  [operator]
        data["updates"] = self.serial_adapter.dump_updates(updates)
        response = self._request(url, method="post", data=data)
    
        if fail_ok:
            # `fail_ok` should not mean `allow 5xx`
            assert response.status_code < 500, response.json
        else:
            try:
>               assert response.status_code == HTTPStatus.OK, response.json
E               AssertionError: {'code': 'ERR.DS_API.VALIDATION.ERROR', 'dataset': {'result_schema_aux': {'inter_dependencies': {'deps': []}}, 'revision_id': None, 'avatar_relations': [], 'preview_enabled': True, 'rls': {}, 'component_errors': {'items': [{'id': '538d07f9-9033-41a4-a249-d78772ece0a8', 'type': 'data_source', 'errors': [{'message': 'Data source (table) identified by: `default..crm_deal` does not exist.', 'code': 'ERR.DS_API.DB.SOURCE_DOES_NOT_EXIST', 'level': 'error', 'details': {'db_message': ''}}]}]}, 'obligatory_filters': [], 'sources': [{'source_type': 'BITRIX_GDS', 'parameters': {'db_version': None, 'table_name': 'crm_deal', 'db_name': 'default'}, 'id': '538d07f9-9033-41a4-a249-d78772ece0a8', 'raw_schema': [], 'virtual': False, 'valid': False, 'managed_by': 'user', 'parameter_hash': '5737ef29b10c6b0e', 'index_info_set': None, 'title': 'crm_deal', 'connection_id': 'ymqklvo8smn6l'}], 'result_schema': [], 'source_avatars': [{'source_id': '538d07f9-9033-41a4-a249-d78772ece0a8', 'id': '1ff943c7-53ec-4200-9e31-35d1b7ae7796', 'virtual': False, 'valid': True, 'managed_by': 'user', 'title': 'avatar_1', 'is_root': True}], 'load_preview_by_default': True}, 'message': 'Validation finished with errors.', 'dataset_errors': [], 'options': {'schema_update_enabled': False, 'data_types': {'items': [{'casts': ['string', 'date', 'genericdatetime', 'boolean', 'integer', 'float', 'geopoint', 'geopolygon'], 'type': 'string', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['integer', 'float', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'integer', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['float', 'integer', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'float', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['date', 'genericdatetime', 'string', 'integer', 'float', 'boolean'], 'type': 'date', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['genericdatetime', 'datetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetime', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['boolean', 'integer', 'float', 'string'], 'type': 'boolean', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopoint', 'string'], 'type': 'geopoint', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopolygon', 'string'], 'type': 'geopolygon', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['uuid', 'string'], 'type': 'uuid', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['markup'], 'type': 'markup', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['datetimetz', 'genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetimetz', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['unsupported'], 'type': 'unsupported', 'aggregations': [], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['array_str', 'string'], 'type': 'array_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_int', 'string'], 'type': 'array_int', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_float', 'string'], 'type': 'array_float', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['tree_str'], 'type': 'tree_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'genericdatetime', 'aggregations': ['count', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}]}, 'join': {'types': ['inner', 'left', 'right', 'full'], 'operators': ['eq']}, 'connections': {'max': 1, 'items': [{'id': 'ymqklvo8smn6l', 'replacement_types': [{'conn_type': 'postgres'}]}], 'compatible_types': []}, 'fields': {'items': []}, 'preview': {'enabled': True}, 'sources': {'items': [{'id': '538d07f9-9033-41a4-a249-d78772ece0a8', 'schema_update_enabled': False}], 'compatible_types': [{'source_type': 'BITRIX_GDS'}]}, 'supports_offset': True, 'supported_functions': ['abs', 'acos', 'all_concat', 'any', 'arr_remove', 'arr_str', 'array', 'ascii', 'asin', 'atan', 'atan2', 'avg', 'avg_if', 'bold', 'bool', 'br', 'case', 'cast_arr_float', 'cast_arr_int', 'cast_arr_str', 'ceiling', 'char', 'color', 'concat', 'contains', 'contains_all', 'contains_any', 'cos', 'cot', 'count', 'count_if', 'count_item', 'countd', 'countd_if', 'date', 'dateadd', 'datepart', 'datetime', 'datetrunc', 'day', 'dayofweek', 'db_cast', 'degrees', 'div', 'div_safe', 'endswith', 'exp', 'fdiv_safe', 'find', 'first', 'float', 'floor', 'geopoint', 'geopolygon', 'get_item', 'greatest', 'hour', 'icontains', 'iendswith', 'if', 'ifnan', 'ifnull', 'iif', 'image', 'int', 'isnan', 'isnull', 'istartswith', 'italic', 'lag', 'last', 'least', 'left', 'len', 'ln', 'log', 'log10', 'lower', 'ltrim', 'markup', 'mavg', 'max', 'mcount', 'median', 'min', 'minute', 'mmax', 'mmin', 'month', 'msum', 'notcontains', 'now', 'pi', 'power', 'quantile', 'quarter', 'radians', 'rank', 'rank_dense', 'rank_percentile', 'rank_unique', 'ravg', 'rcount', 'regexp_extract', 'regexp_extract_nth', 'regexp_match', 'regexp_replace', 'replace', 'right', 'rmax', 'rmin', 'round', 'rsum', 'rtrim', 'second', 'sign', 'sin', 'size', 'slice', 'space', 'split', 'sqrt', 'square', 'startswith', 'stdev', 'stdevp', 'str', 'substr', 'sum', 'sum_if', 'tan', 'today', 'tree', 'trim', 'unnest', 'upper', 'url', 'var', 'varp', 'week', 'year', 'zn'], 'source_avatars': {'max': 32, 'items': [{'id': '1ff943c7-53ec-4200-9e31-35d1b7ae7796', 'schema_update_enabled': False}]}}}

/venv/lib/python3.10/site-packages/dl_api_client/dsmaker/api/dataset_api.py:234: AssertionError

Check failure on line 0 in dl_connector_bitrix_gds_tests.ext.api.test_data.TestBitrixDataResult

See this annotation in the file changed.

@github-actions github-actions / Test Results

test_get_result_with_string_filter_operations_for_numbers (dl_connector_bitrix_gds_tests.ext.api.test_data.TestBitrixDataResult) with error

./report/pytest_reports_dl_connector_bitrix_gds_442724729/_src_lib_dl_connector_bitrix_gds_dl_connector_bitrix_gds_tests-ext-ad12e63037fc49018d8f609250f83756.xml [took 3s]
Raw output
failed on setup with "AssertionError: {'code': 'ERR.DS_API.VALIDATION.ERROR', 'dataset': {'result_schema_aux': {'inter_dependencies': {'deps': []}}, 'revision_id': None, 'avatar_relations': [], 'preview_enabled': True, 'rls': {}, 'component_errors': {'items': [{'id': '04aca34b-0d69-4b29-ae98-cee76512c722', 'type': 'data_source', 'errors': [{'message': 'Data source (table) identified by: `default..crm_deal` does not exist.', 'code': 'ERR.DS_API.DB.SOURCE_DOES_NOT_EXIST', 'level': 'error', 'details': {'db_message': ''}}]}]}, 'obligatory_filters': [], 'sources': [{'source_type': 'BITRIX_GDS', 'parameters': {'db_version': None, 'table_name': 'crm_deal', 'db_name': 'default'}, 'id': '04aca34b-0d69-4b29-ae98-cee76512c722', 'raw_schema': [], 'virtual': False, 'valid': False, 'managed_by': 'user', 'parameter_hash': '6aff1b790c7a03f8', 'index_info_set': None, 'title': 'crm_deal', 'connection_id': '4swqrd85th5er'}], 'result_schema': [], 'source_avatars': [{'source_id': '04aca34b-0d69-4b29-ae98-cee76512c722', 'id': '309bc99d-9700-42d5-9b8c-f410afa0cbc5', 'virtual': False, 'valid': True, 'managed_by': 'user', 'title': 'avatar_1', 'is_root': True}], 'load_preview_by_default': True}, 'message': 'Validation finished with errors.', 'dataset_errors': [], 'options': {'schema_update_enabled': False, 'data_types': {'items': [{'casts': ['string', 'date', 'genericdatetime', 'boolean', 'integer', 'float', 'geopoint', 'geopolygon'], 'type': 'string', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['integer', 'float', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'integer', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['float', 'integer', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'float', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['date', 'genericdatetime', 'string', 'integer', 'float', 'boolean'], 'type': 'date', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['genericdatetime', 'datetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetime', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['boolean', 'integer', 'float', 'string'], 'type': 'boolean', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopoint', 'string'], 'type': 'geopoint', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopolygon', 'string'], 'type': 'geopolygon', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['uuid', 'string'], 'type': 'uuid', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['markup'], 'type': 'markup', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['datetimetz', 'genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetimetz', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['unsupported'], 'type': 'unsupported', 'aggregations': [], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['array_str', 'string'], 'type': 'array_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_int', 'string'], 'type': 'array_int', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_float', 'string'], 'type': 'array_float', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['tree_str'], 'type': 'tree_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'genericdatetime', 'aggregations': ['count', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}]}, 'join': {'types': ['inner', 'left', 'right', 'full'], 'operators': ['eq']}, 'connections': {'max': 1, 'items': [{'id': '4swqrd85th5er', 'replacement_types': [{'conn_type': 'postgres'}]}], 'compatible_types': []}, 'fields': {'items': []}, 'preview': {'enabled': True}, 'sources': {'items': [{'id': '04aca34b-0d69-4b29-ae98-cee76512c722', 'schema_update_enabled': False}], 'compatible_types': [{'source_type': 'BITRIX_GDS'}]}, 'supports_offset': True, 'supported_functions': ['abs', 'acos', 'all_concat', 'any', 'arr_remove', 'arr_str', 'array', 'ascii', 'asin', 'atan', 'atan2', 'avg', 'avg_if', 'bold', 'bool', 'br', 'case', 'cast_arr_float', 'cast_arr_int', 'cast_arr_str', 'ceiling', 'char', 'color', 'concat', 'contains', 'contains_all', 'contains_any', 'cos', 'cot', 'count', 'count_if', 'count_item', 'countd', 'countd_if', 'date', 'dateadd', 'datepart', 'datetime', 'datetrunc', 'day', 'dayofweek', 'db_cast', 'degrees', 'div', 'div_safe', 'endswith', 'exp', 'fdiv_safe', 'find', 'first', 'float', 'floor', 'geopoint', 'geopolygon', 'get_item', 'greatest', 'hour', 'icontains', 'iendswith', 'if', 'ifnan', 'ifnull', 'iif', 'image', 'int', 'isnan', 'isnull', 'istartswith', 'italic', 'lag', 'last', 'least', 'left', 'len', 'ln', 'log', 'log10', 'lower', 'ltrim', 'markup', 'mavg', 'max', 'mcount', 'median', 'min', 'minute', 'mmax', 'mmin', 'month', 'msum', 'notcontains', 'now', 'pi', 'power', 'quantile', 'quarter', 'radians', 'rank', 'rank_dense', 'rank_percentile', 'rank_unique', 'ravg', 'rcount', 'regexp_extract', 'regexp_extract_nth', 'regexp_match', 'regexp_replace', 'replace', 'right', 'rmax', 'rmin', 'round', 'rsum', 'rtrim', 'second', 'sign', 'sin', 'size', 'slice', 'space', 'split', 'sqrt', 'square', 'startswith', 'stdev', 'stdevp', 'str', 'substr', 'sum', 'sum_if', 'tan', 'today', 'tree', 'trim', 'unnest', 'upper', 'url', 'var', 'varp', 'week', 'year', 'zn'], 'source_avatars': {'max': 32, 'items': [{'id': '309bc99d-9700-42d5-9b8c-f410afa0cbc5', 'schema_update_enabled': False}]}}}"
>       lambda: ihook(item=item, **kwds), when=when, reraise=reraise
    )

/venv/lib/python3.10/site-packages/flaky/flaky_pytest_plugin.py:146: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/venv/lib/python3.10/site-packages/pytest_lazyfixture.py:39: in fill
    _fillfixtures()
/venv/lib/python3.10/site-packages/dl_api_lib_testing/dataset_base.py:41: in saved_dataset
    ds = self.make_basic_dataset(
/venv/lib/python3.10/site-packages/dl_api_lib_testing/dataset_base.py:30: in make_basic_dataset
    ds = control_api.apply_updates(dataset=ds, fail_ok=False).dataset
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = SyncHttpDatasetApiV1(client=FlaskSyncApiClient(_int_wclient=<TestClient <Flask 'dl_api_lib.app.control_api.app'>>), headers={}, _created_dataset_id_list=[], serial_adapter=DatasetApiV1SerializationAdapter())
dataset = Dataset(id='f9add707-c5b8-4700-ae2a-63255485dad2', created_=False, name=None, revision_id=None, load_preview_by_defaul...sultSchemaAux(inter_dependencies={}), rls={}, component_errors=ComponentErrorRegistry(items=[]), obligatory_filters=[])
updates = [UpdateAction(action=<Action.add: 'add'>, item=DataSource(id='04aca34b-0d69-4b29-ae98-cee76512c722', created_=False, c...', title='avatar_1', is_root=False, managed_by=<ManagedBy.user: 'user'>, valid=True), custom_data=None, order_index=0)]
fail_ok = False

    def apply_updates(  # type: ignore  # TODO: fix
        self,
        dataset: Dataset,
        updates: list[Union[UpdateAction, dict]] = None,  # type: ignore  # 2024-01-24 # TODO: Incompatible default for argument "updates" (default has type "None", argument has type "list[UpdateAction | dict[Any, Any]]")  [assignment]
        fail_ok: bool = False,
    ) -> HttpDatasetApiResponse:
        if dataset.created_:
            url = f"/api/v1/datasets/{dataset.id}/versions/draft/validators/schema"
        else:
            url = "/api/v1/datasets/validators/dataset"
    
        data = self.dump_dataset_to_request_body(dataset)
        updates = list(updates or ()) + self.serial_adapter.generate_implicit_updates(dataset)  # type: ignore  # 2024-01-24 # TODO: Unsupported operand types for + ("list[UpdateAction | dict[Any, Any]]" and "list[UpdateAction]")  [operator]
        data["updates"] = self.serial_adapter.dump_updates(updates)
        response = self._request(url, method="post", data=data)
    
        if fail_ok:
            # `fail_ok` should not mean `allow 5xx`
            assert response.status_code < 500, response.json
        else:
            try:
>               assert response.status_code == HTTPStatus.OK, response.json
E               AssertionError: {'code': 'ERR.DS_API.VALIDATION.ERROR', 'dataset': {'result_schema_aux': {'inter_dependencies': {'deps': []}}, 'revision_id': None, 'avatar_relations': [], 'preview_enabled': True, 'rls': {}, 'component_errors': {'items': [{'id': '04aca34b-0d69-4b29-ae98-cee76512c722', 'type': 'data_source', 'errors': [{'message': 'Data source (table) identified by: `default..crm_deal` does not exist.', 'code': 'ERR.DS_API.DB.SOURCE_DOES_NOT_EXIST', 'level': 'error', 'details': {'db_message': ''}}]}]}, 'obligatory_filters': [], 'sources': [{'source_type': 'BITRIX_GDS', 'parameters': {'db_version': None, 'table_name': 'crm_deal', 'db_name': 'default'}, 'id': '04aca34b-0d69-4b29-ae98-cee76512c722', 'raw_schema': [], 'virtual': False, 'valid': False, 'managed_by': 'user', 'parameter_hash': '6aff1b790c7a03f8', 'index_info_set': None, 'title': 'crm_deal', 'connection_id': '4swqrd85th5er'}], 'result_schema': [], 'source_avatars': [{'source_id': '04aca34b-0d69-4b29-ae98-cee76512c722', 'id': '309bc99d-9700-42d5-9b8c-f410afa0cbc5', 'virtual': False, 'valid': True, 'managed_by': 'user', 'title': 'avatar_1', 'is_root': True}], 'load_preview_by_default': True}, 'message': 'Validation finished with errors.', 'dataset_errors': [], 'options': {'schema_update_enabled': False, 'data_types': {'items': [{'casts': ['string', 'date', 'genericdatetime', 'boolean', 'integer', 'float', 'geopoint', 'geopolygon'], 'type': 'string', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['integer', 'float', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'integer', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['float', 'integer', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'float', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['date', 'genericdatetime', 'string', 'integer', 'float', 'boolean'], 'type': 'date', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['genericdatetime', 'datetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetime', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['boolean', 'integer', 'float', 'string'], 'type': 'boolean', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopoint', 'string'], 'type': 'geopoint', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopolygon', 'string'], 'type': 'geopolygon', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['uuid', 'string'], 'type': 'uuid', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['markup'], 'type': 'markup', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['datetimetz', 'genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetimetz', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['unsupported'], 'type': 'unsupported', 'aggregations': [], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['array_str', 'string'], 'type': 'array_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_int', 'string'], 'type': 'array_int', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_float', 'string'], 'type': 'array_float', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['tree_str'], 'type': 'tree_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'genericdatetime', 'aggregations': ['count', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}]}, 'join': {'types': ['inner', 'left', 'right', 'full'], 'operators': ['eq']}, 'connections': {'max': 1, 'items': [{'id': '4swqrd85th5er', 'replacement_types': [{'conn_type': 'postgres'}]}], 'compatible_types': []}, 'fields': {'items': []}, 'preview': {'enabled': True}, 'sources': {'items': [{'id': '04aca34b-0d69-4b29-ae98-cee76512c722', 'schema_update_enabled': False}], 'compatible_types': [{'source_type': 'BITRIX_GDS'}]}, 'supports_offset': True, 'supported_functions': ['abs', 'acos', 'all_concat', 'any', 'arr_remove', 'arr_str', 'array', 'ascii', 'asin', 'atan', 'atan2', 'avg', 'avg_if', 'bold', 'bool', 'br', 'case', 'cast_arr_float', 'cast_arr_int', 'cast_arr_str', 'ceiling', 'char', 'color', 'concat', 'contains', 'contains_all', 'contains_any', 'cos', 'cot', 'count', 'count_if', 'count_item', 'countd', 'countd_if', 'date', 'dateadd', 'datepart', 'datetime', 'datetrunc', 'day', 'dayofweek', 'db_cast', 'degrees', 'div', 'div_safe', 'endswith', 'exp', 'fdiv_safe', 'find', 'first', 'float', 'floor', 'geopoint', 'geopolygon', 'get_item', 'greatest', 'hour', 'icontains', 'iendswith', 'if', 'ifnan', 'ifnull', 'iif', 'image', 'int', 'isnan', 'isnull', 'istartswith', 'italic', 'lag', 'last', 'least', 'left', 'len', 'ln', 'log', 'log10', 'lower', 'ltrim', 'markup', 'mavg', 'max', 'mcount', 'median', 'min', 'minute', 'mmax', 'mmin', 'month', 'msum', 'notcontains', 'now', 'pi', 'power', 'quantile', 'quarter', 'radians', 'rank', 'rank_dense', 'rank_percentile', 'rank_unique', 'ravg', 'rcount', 'regexp_extract', 'regexp_extract_nth', 'regexp_match', 'regexp_replace', 'replace', 'right', 'rmax', 'rmin', 'round', 'rsum', 'rtrim', 'second', 'sign', 'sin', 'size', 'slice', 'space', 'split', 'sqrt', 'square', 'startswith', 'stdev', 'stdevp', 'str', 'substr', 'sum', 'sum_if', 'tan', 'today', 'tree', 'trim', 'unnest', 'upper', 'url', 'var', 'varp', 'week', 'year', 'zn'], 'source_avatars': {'max': 32, 'items': [{'id': '309bc99d-9700-42d5-9b8c-f410afa0cbc5', 'schema_update_enabled': False}]}}}

/venv/lib/python3.10/site-packages/dl_api_client/dsmaker/api/dataset_api.py:234: AssertionError

Check failure on line 0 in dl_connector_bitrix_gds_tests.ext.api.test_data.TestBitrixDataGroupBy

See this annotation in the file changed.

@github-actions github-actions / Test Results

test_ordered_result (dl_connector_bitrix_gds_tests.ext.api.test_data.TestBitrixDataGroupBy) with error

./report/pytest_reports_dl_connector_bitrix_gds_442724729/_src_lib_dl_connector_bitrix_gds_dl_connector_bitrix_gds_tests-ext-ad12e63037fc49018d8f609250f83756.xml [took 3s]
Raw output
failed on setup with "AssertionError: {'code': 'ERR.DS_API.VALIDATION.ERROR', 'dataset': {'result_schema_aux': {'inter_dependencies': {'deps': []}}, 'revision_id': None, 'avatar_relations': [], 'preview_enabled': True, 'rls': {}, 'component_errors': {'items': [{'id': 'efab9f7b-2a47-49a7-a0ef-b396dd4d0b13', 'type': 'data_source', 'errors': [{'message': 'Data source (table) identified by: `default..crm_deal` does not exist.', 'code': 'ERR.DS_API.DB.SOURCE_DOES_NOT_EXIST', 'level': 'error', 'details': {'db_message': ''}}]}]}, 'obligatory_filters': [], 'sources': [{'source_type': 'BITRIX_GDS', 'parameters': {'db_version': None, 'table_name': 'crm_deal', 'db_name': 'default'}, 'id': 'efab9f7b-2a47-49a7-a0ef-b396dd4d0b13', 'raw_schema': [], 'virtual': False, 'valid': False, 'managed_by': 'user', 'parameter_hash': '0628bdbe81673fb1', 'index_info_set': None, 'title': 'crm_deal', 'connection_id': 'mae8b6l213bu9'}], 'result_schema': [], 'source_avatars': [{'source_id': 'efab9f7b-2a47-49a7-a0ef-b396dd4d0b13', 'id': 'c9536589-5d79-45ec-b671-f1f591a7bbc2', 'virtual': False, 'valid': True, 'managed_by': 'user', 'title': 'avatar_1', 'is_root': True}], 'load_preview_by_default': True}, 'message': 'Validation finished with errors.', 'dataset_errors': [], 'options': {'schema_update_enabled': False, 'data_types': {'items': [{'casts': ['string', 'date', 'genericdatetime', 'boolean', 'integer', 'float', 'geopoint', 'geopolygon'], 'type': 'string', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['integer', 'float', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'integer', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['float', 'integer', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'float', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['date', 'genericdatetime', 'string', 'integer', 'float', 'boolean'], 'type': 'date', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['genericdatetime', 'datetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetime', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['boolean', 'integer', 'float', 'string'], 'type': 'boolean', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopoint', 'string'], 'type': 'geopoint', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopolygon', 'string'], 'type': 'geopolygon', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['uuid', 'string'], 'type': 'uuid', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['markup'], 'type': 'markup', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['datetimetz', 'genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetimetz', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['unsupported'], 'type': 'unsupported', 'aggregations': [], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['array_str', 'string'], 'type': 'array_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_int', 'string'], 'type': 'array_int', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_float', 'string'], 'type': 'array_float', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['tree_str'], 'type': 'tree_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'genericdatetime', 'aggregations': ['count', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}]}, 'join': {'types': ['inner', 'left', 'right', 'full'], 'operators': ['eq']}, 'connections': {'max': 1, 'items': [{'id': 'mae8b6l213bu9', 'replacement_types': [{'conn_type': 'postgres'}]}], 'compatible_types': []}, 'fields': {'items': []}, 'preview': {'enabled': True}, 'sources': {'items': [{'id': 'efab9f7b-2a47-49a7-a0ef-b396dd4d0b13', 'schema_update_enabled': False}], 'compatible_types': [{'source_type': 'BITRIX_GDS'}]}, 'supports_offset': True, 'supported_functions': ['abs', 'acos', 'all_concat', 'any', 'arr_remove', 'arr_str', 'array', 'ascii', 'asin', 'atan', 'atan2', 'avg', 'avg_if', 'bold', 'bool', 'br', 'case', 'cast_arr_float', 'cast_arr_int', 'cast_arr_str', 'ceiling', 'char', 'color', 'concat', 'contains', 'contains_all', 'contains_any', 'cos', 'cot', 'count', 'count_if', 'count_item', 'countd', 'countd_if', 'date', 'dateadd', 'datepart', 'datetime', 'datetrunc', 'day', 'dayofweek', 'db_cast', 'degrees', 'div', 'div_safe', 'endswith', 'exp', 'fdiv_safe', 'find', 'first', 'float', 'floor', 'geopoint', 'geopolygon', 'get_item', 'greatest', 'hour', 'icontains', 'iendswith', 'if', 'ifnan', 'ifnull', 'iif', 'image', 'int', 'isnan', 'isnull', 'istartswith', 'italic', 'lag', 'last', 'least', 'left', 'len', 'ln', 'log', 'log10', 'lower', 'ltrim', 'markup', 'mavg', 'max', 'mcount', 'median', 'min', 'minute', 'mmax', 'mmin', 'month', 'msum', 'notcontains', 'now', 'pi', 'power', 'quantile', 'quarter', 'radians', 'rank', 'rank_dense', 'rank_percentile', 'rank_unique', 'ravg', 'rcount', 'regexp_extract', 'regexp_extract_nth', 'regexp_match', 'regexp_replace', 'replace', 'right', 'rmax', 'rmin', 'round', 'rsum', 'rtrim', 'second', 'sign', 'sin', 'size', 'slice', 'space', 'split', 'sqrt', 'square', 'startswith', 'stdev', 'stdevp', 'str', 'substr', 'sum', 'sum_if', 'tan', 'today', 'tree', 'trim', 'unnest', 'upper', 'url', 'var', 'varp', 'week', 'year', 'zn'], 'source_avatars': {'max': 32, 'items': [{'id': 'c9536589-5d79-45ec-b671-f1f591a7bbc2', 'schema_update_enabled': False}]}}}"
>       lambda: ihook(item=item, **kwds), when=when, reraise=reraise
    )

/venv/lib/python3.10/site-packages/flaky/flaky_pytest_plugin.py:146: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/venv/lib/python3.10/site-packages/pytest_lazyfixture.py:39: in fill
    _fillfixtures()
/venv/lib/python3.10/site-packages/dl_api_lib_testing/dataset_base.py:41: in saved_dataset
    ds = self.make_basic_dataset(
/venv/lib/python3.10/site-packages/dl_api_lib_testing/dataset_base.py:30: in make_basic_dataset
    ds = control_api.apply_updates(dataset=ds, fail_ok=False).dataset
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = SyncHttpDatasetApiV1(client=FlaskSyncApiClient(_int_wclient=<TestClient <Flask 'dl_api_lib.app.control_api.app'>>), headers={}, _created_dataset_id_list=[], serial_adapter=DatasetApiV1SerializationAdapter())
dataset = Dataset(id='4236722b-e979-430a-8148-0c165157e244', created_=False, name=None, revision_id=None, load_preview_by_defaul...sultSchemaAux(inter_dependencies={}), rls={}, component_errors=ComponentErrorRegistry(items=[]), obligatory_filters=[])
updates = [UpdateAction(action=<Action.add: 'add'>, item=DataSource(id='efab9f7b-2a47-49a7-a0ef-b396dd4d0b13', created_=False, c...', title='avatar_1', is_root=False, managed_by=<ManagedBy.user: 'user'>, valid=True), custom_data=None, order_index=0)]
fail_ok = False

    def apply_updates(  # type: ignore  # TODO: fix
        self,
        dataset: Dataset,
        updates: list[Union[UpdateAction, dict]] = None,  # type: ignore  # 2024-01-24 # TODO: Incompatible default for argument "updates" (default has type "None", argument has type "list[UpdateAction | dict[Any, Any]]")  [assignment]
        fail_ok: bool = False,
    ) -> HttpDatasetApiResponse:
        if dataset.created_:
            url = f"/api/v1/datasets/{dataset.id}/versions/draft/validators/schema"
        else:
            url = "/api/v1/datasets/validators/dataset"
    
        data = self.dump_dataset_to_request_body(dataset)
        updates = list(updates or ()) + self.serial_adapter.generate_implicit_updates(dataset)  # type: ignore  # 2024-01-24 # TODO: Unsupported operand types for + ("list[UpdateAction | dict[Any, Any]]" and "list[UpdateAction]")  [operator]
        data["updates"] = self.serial_adapter.dump_updates(updates)
        response = self._request(url, method="post", data=data)
    
        if fail_ok:
            # `fail_ok` should not mean `allow 5xx`
            assert response.status_code < 500, response.json
        else:
            try:
>               assert response.status_code == HTTPStatus.OK, response.json
E               AssertionError: {'code': 'ERR.DS_API.VALIDATION.ERROR', 'dataset': {'result_schema_aux': {'inter_dependencies': {'deps': []}}, 'revision_id': None, 'avatar_relations': [], 'preview_enabled': True, 'rls': {}, 'component_errors': {'items': [{'id': 'efab9f7b-2a47-49a7-a0ef-b396dd4d0b13', 'type': 'data_source', 'errors': [{'message': 'Data source (table) identified by: `default..crm_deal` does not exist.', 'code': 'ERR.DS_API.DB.SOURCE_DOES_NOT_EXIST', 'level': 'error', 'details': {'db_message': ''}}]}]}, 'obligatory_filters': [], 'sources': [{'source_type': 'BITRIX_GDS', 'parameters': {'db_version': None, 'table_name': 'crm_deal', 'db_name': 'default'}, 'id': 'efab9f7b-2a47-49a7-a0ef-b396dd4d0b13', 'raw_schema': [], 'virtual': False, 'valid': False, 'managed_by': 'user', 'parameter_hash': '0628bdbe81673fb1', 'index_info_set': None, 'title': 'crm_deal', 'connection_id': 'mae8b6l213bu9'}], 'result_schema': [], 'source_avatars': [{'source_id': 'efab9f7b-2a47-49a7-a0ef-b396dd4d0b13', 'id': 'c9536589-5d79-45ec-b671-f1f591a7bbc2', 'virtual': False, 'valid': True, 'managed_by': 'user', 'title': 'avatar_1', 'is_root': True}], 'load_preview_by_default': True}, 'message': 'Validation finished with errors.', 'dataset_errors': [], 'options': {'schema_update_enabled': False, 'data_types': {'items': [{'casts': ['string', 'date', 'genericdatetime', 'boolean', 'integer', 'float', 'geopoint', 'geopolygon'], 'type': 'string', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['integer', 'float', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'integer', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['float', 'integer', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'float', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['date', 'genericdatetime', 'string', 'integer', 'float', 'boolean'], 'type': 'date', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['genericdatetime', 'datetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetime', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['boolean', 'integer', 'float', 'string'], 'type': 'boolean', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopoint', 'string'], 'type': 'geopoint', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopolygon', 'string'], 'type': 'geopolygon', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['uuid', 'string'], 'type': 'uuid', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['markup'], 'type': 'markup', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['datetimetz', 'genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetimetz', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['unsupported'], 'type': 'unsupported', 'aggregations': [], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['array_str', 'string'], 'type': 'array_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_int', 'string'], 'type': 'array_int', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_float', 'string'], 'type': 'array_float', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['tree_str'], 'type': 'tree_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'genericdatetime', 'aggregations': ['count', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}]}, 'join': {'types': ['inner', 'left', 'right', 'full'], 'operators': ['eq']}, 'connections': {'max': 1, 'items': [{'id': 'mae8b6l213bu9', 'replacement_types': [{'conn_type': 'postgres'}]}], 'compatible_types': []}, 'fields': {'items': []}, 'preview': {'enabled': True}, 'sources': {'items': [{'id': 'efab9f7b-2a47-49a7-a0ef-b396dd4d0b13', 'schema_update_enabled': False}], 'compatible_types': [{'source_type': 'BITRIX_GDS'}]}, 'supports_offset': True, 'supported_functions': ['abs', 'acos', 'all_concat', 'any', 'arr_remove', 'arr_str', 'array', 'ascii', 'asin', 'atan', 'atan2', 'avg', 'avg_if', 'bold', 'bool', 'br', 'case', 'cast_arr_float', 'cast_arr_int', 'cast_arr_str', 'ceiling', 'char', 'color', 'concat', 'contains', 'contains_all', 'contains_any', 'cos', 'cot', 'count', 'count_if', 'count_item', 'countd', 'countd_if', 'date', 'dateadd', 'datepart', 'datetime', 'datetrunc', 'day', 'dayofweek', 'db_cast', 'degrees', 'div', 'div_safe', 'endswith', 'exp', 'fdiv_safe', 'find', 'first', 'float', 'floor', 'geopoint', 'geopolygon', 'get_item', 'greatest', 'hour', 'icontains', 'iendswith', 'if', 'ifnan', 'ifnull', 'iif', 'image', 'int', 'isnan', 'isnull', 'istartswith', 'italic', 'lag', 'last', 'least', 'left', 'len', 'ln', 'log', 'log10', 'lower', 'ltrim', 'markup', 'mavg', 'max', 'mcount', 'median', 'min', 'minute', 'mmax', 'mmin', 'month', 'msum', 'notcontains', 'now', 'pi', 'power', 'quantile', 'quarter', 'radians', 'rank', 'rank_dense', 'rank_percentile', 'rank_unique', 'ravg', 'rcount', 'regexp_extract', 'regexp_extract_nth', 'regexp_match', 'regexp_replace', 'replace', 'right', 'rmax', 'rmin', 'round', 'rsum', 'rtrim', 'second', 'sign', 'sin', 'size', 'slice', 'space', 'split', 'sqrt', 'square', 'startswith', 'stdev', 'stdevp', 'str', 'substr', 'sum', 'sum_if', 'tan', 'today', 'tree', 'trim', 'unnest', 'upper', 'url', 'var', 'varp', 'week', 'year', 'zn'], 'source_avatars': {'max': 32, 'items': [{'id': 'c9536589-5d79-45ec-b671-f1f591a7bbc2', 'schema_update_enabled': False}]}}}

/venv/lib/python3.10/site-packages/dl_api_client/dsmaker/api/dataset_api.py:234: AssertionError

Check failure on line 0 in dl_connector_bitrix_gds_tests.ext.api.test_data.TestBitrixDataGroupBy

See this annotation in the file changed.

@github-actions github-actions / Test Results

test_complex_result (dl_connector_bitrix_gds_tests.ext.api.test_data.TestBitrixDataGroupBy) with error

./report/pytest_reports_dl_connector_bitrix_gds_442724729/_src_lib_dl_connector_bitrix_gds_dl_connector_bitrix_gds_tests-ext-ad12e63037fc49018d8f609250f83756.xml [took 3s]
Raw output
failed on setup with "AssertionError: {'code': 'ERR.DS_API.VALIDATION.ERROR', 'dataset': {'result_schema_aux': {'inter_dependencies': {'deps': []}}, 'revision_id': None, 'avatar_relations': [], 'preview_enabled': True, 'rls': {}, 'component_errors': {'items': [{'id': '5934667d-4030-4ca6-a70a-47b00cc430a9', 'type': 'data_source', 'errors': [{'message': 'Data source (table) identified by: `default..crm_deal` does not exist.', 'code': 'ERR.DS_API.DB.SOURCE_DOES_NOT_EXIST', 'level': 'error', 'details': {'db_message': ''}}]}]}, 'obligatory_filters': [], 'sources': [{'source_type': 'BITRIX_GDS', 'parameters': {'db_version': None, 'table_name': 'crm_deal', 'db_name': 'default'}, 'id': '5934667d-4030-4ca6-a70a-47b00cc430a9', 'raw_schema': [], 'virtual': False, 'valid': False, 'managed_by': 'user', 'parameter_hash': 'dcf51ce7181eb69a', 'index_info_set': None, 'title': 'crm_deal', 'connection_id': '4swqu156gd2ar'}], 'result_schema': [], 'source_avatars': [{'source_id': '5934667d-4030-4ca6-a70a-47b00cc430a9', 'id': '26c71850-a486-4cde-a0ee-b9def8a53e01', 'virtual': False, 'valid': True, 'managed_by': 'user', 'title': 'avatar_1', 'is_root': True}], 'load_preview_by_default': True}, 'message': 'Validation finished with errors.', 'dataset_errors': [], 'options': {'schema_update_enabled': False, 'data_types': {'items': [{'casts': ['string', 'date', 'genericdatetime', 'boolean', 'integer', 'float', 'geopoint', 'geopolygon'], 'type': 'string', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['integer', 'float', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'integer', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['float', 'integer', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'float', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['date', 'genericdatetime', 'string', 'integer', 'float', 'boolean'], 'type': 'date', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['genericdatetime', 'datetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetime', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['boolean', 'integer', 'float', 'string'], 'type': 'boolean', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopoint', 'string'], 'type': 'geopoint', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopolygon', 'string'], 'type': 'geopolygon', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['uuid', 'string'], 'type': 'uuid', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['markup'], 'type': 'markup', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['datetimetz', 'genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetimetz', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['unsupported'], 'type': 'unsupported', 'aggregations': [], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['array_str', 'string'], 'type': 'array_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_int', 'string'], 'type': 'array_int', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_float', 'string'], 'type': 'array_float', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['tree_str'], 'type': 'tree_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'genericdatetime', 'aggregations': ['count', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}]}, 'join': {'types': ['inner', 'left', 'right', 'full'], 'operators': ['eq']}, 'connections': {'max': 1, 'items': [{'id': '4swqu156gd2ar', 'replacement_types': [{'conn_type': 'postgres'}]}], 'compatible_types': []}, 'fields': {'items': []}, 'preview': {'enabled': True}, 'sources': {'items': [{'id': '5934667d-4030-4ca6-a70a-47b00cc430a9', 'schema_update_enabled': False}], 'compatible_types': [{'source_type': 'BITRIX_GDS'}]}, 'supports_offset': True, 'supported_functions': ['abs', 'acos', 'all_concat', 'any', 'arr_remove', 'arr_str', 'array', 'ascii', 'asin', 'atan', 'atan2', 'avg', 'avg_if', 'bold', 'bool', 'br', 'case', 'cast_arr_float', 'cast_arr_int', 'cast_arr_str', 'ceiling', 'char', 'color', 'concat', 'contains', 'contains_all', 'contains_any', 'cos', 'cot', 'count', 'count_if', 'count_item', 'countd', 'countd_if', 'date', 'dateadd', 'datepart', 'datetime', 'datetrunc', 'day', 'dayofweek', 'db_cast', 'degrees', 'div', 'div_safe', 'endswith', 'exp', 'fdiv_safe', 'find', 'first', 'float', 'floor', 'geopoint', 'geopolygon', 'get_item', 'greatest', 'hour', 'icontains', 'iendswith', 'if', 'ifnan', 'ifnull', 'iif', 'image', 'int', 'isnan', 'isnull', 'istartswith', 'italic', 'lag', 'last', 'least', 'left', 'len', 'ln', 'log', 'log10', 'lower', 'ltrim', 'markup', 'mavg', 'max', 'mcount', 'median', 'min', 'minute', 'mmax', 'mmin', 'month', 'msum', 'notcontains', 'now', 'pi', 'power', 'quantile', 'quarter', 'radians', 'rank', 'rank_dense', 'rank_percentile', 'rank_unique', 'ravg', 'rcount', 'regexp_extract', 'regexp_extract_nth', 'regexp_match', 'regexp_replace', 'replace', 'right', 'rmax', 'rmin', 'round', 'rsum', 'rtrim', 'second', 'sign', 'sin', 'size', 'slice', 'space', 'split', 'sqrt', 'square', 'startswith', 'stdev', 'stdevp', 'str', 'substr', 'sum', 'sum_if', 'tan', 'today', 'tree', 'trim', 'unnest', 'upper', 'url', 'var', 'varp', 'week', 'year', 'zn'], 'source_avatars': {'max': 32, 'items': [{'id': '26c71850-a486-4cde-a0ee-b9def8a53e01', 'schema_update_enabled': False}]}}}"
>       lambda: ihook(item=item, **kwds), when=when, reraise=reraise
    )

/venv/lib/python3.10/site-packages/flaky/flaky_pytest_plugin.py:146: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/venv/lib/python3.10/site-packages/pytest_lazyfixture.py:39: in fill
    _fillfixtures()
/venv/lib/python3.10/site-packages/dl_api_lib_testing/dataset_base.py:41: in saved_dataset
    ds = self.make_basic_dataset(
/venv/lib/python3.10/site-packages/dl_api_lib_testing/dataset_base.py:30: in make_basic_dataset
    ds = control_api.apply_updates(dataset=ds, fail_ok=False).dataset
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = SyncHttpDatasetApiV1(client=FlaskSyncApiClient(_int_wclient=<TestClient <Flask 'dl_api_lib.app.control_api.app'>>), headers={}, _created_dataset_id_list=[], serial_adapter=DatasetApiV1SerializationAdapter())
dataset = Dataset(id='db4de162-3dfe-4ee4-a474-aa69ff04d17c', created_=False, name=None, revision_id=None, load_preview_by_defaul...sultSchemaAux(inter_dependencies={}), rls={}, component_errors=ComponentErrorRegistry(items=[]), obligatory_filters=[])
updates = [UpdateAction(action=<Action.add: 'add'>, item=DataSource(id='5934667d-4030-4ca6-a70a-47b00cc430a9', created_=False, c...', title='avatar_1', is_root=False, managed_by=<ManagedBy.user: 'user'>, valid=True), custom_data=None, order_index=0)]
fail_ok = False

    def apply_updates(  # type: ignore  # TODO: fix
        self,
        dataset: Dataset,
        updates: list[Union[UpdateAction, dict]] = None,  # type: ignore  # 2024-01-24 # TODO: Incompatible default for argument "updates" (default has type "None", argument has type "list[UpdateAction | dict[Any, Any]]")  [assignment]
        fail_ok: bool = False,
    ) -> HttpDatasetApiResponse:
        if dataset.created_:
            url = f"/api/v1/datasets/{dataset.id}/versions/draft/validators/schema"
        else:
            url = "/api/v1/datasets/validators/dataset"
    
        data = self.dump_dataset_to_request_body(dataset)
        updates = list(updates or ()) + self.serial_adapter.generate_implicit_updates(dataset)  # type: ignore  # 2024-01-24 # TODO: Unsupported operand types for + ("list[UpdateAction | dict[Any, Any]]" and "list[UpdateAction]")  [operator]
        data["updates"] = self.serial_adapter.dump_updates(updates)
        response = self._request(url, method="post", data=data)
    
        if fail_ok:
            # `fail_ok` should not mean `allow 5xx`
            assert response.status_code < 500, response.json
        else:
            try:
>               assert response.status_code == HTTPStatus.OK, response.json
E               AssertionError: {'code': 'ERR.DS_API.VALIDATION.ERROR', 'dataset': {'result_schema_aux': {'inter_dependencies': {'deps': []}}, 'revision_id': None, 'avatar_relations': [], 'preview_enabled': True, 'rls': {}, 'component_errors': {'items': [{'id': '5934667d-4030-4ca6-a70a-47b00cc430a9', 'type': 'data_source', 'errors': [{'message': 'Data source (table) identified by: `default..crm_deal` does not exist.', 'code': 'ERR.DS_API.DB.SOURCE_DOES_NOT_EXIST', 'level': 'error', 'details': {'db_message': ''}}]}]}, 'obligatory_filters': [], 'sources': [{'source_type': 'BITRIX_GDS', 'parameters': {'db_version': None, 'table_name': 'crm_deal', 'db_name': 'default'}, 'id': '5934667d-4030-4ca6-a70a-47b00cc430a9', 'raw_schema': [], 'virtual': False, 'valid': False, 'managed_by': 'user', 'parameter_hash': 'dcf51ce7181eb69a', 'index_info_set': None, 'title': 'crm_deal', 'connection_id': '4swqu156gd2ar'}], 'result_schema': [], 'source_avatars': [{'source_id': '5934667d-4030-4ca6-a70a-47b00cc430a9', 'id': '26c71850-a486-4cde-a0ee-b9def8a53e01', 'virtual': False, 'valid': True, 'managed_by': 'user', 'title': 'avatar_1', 'is_root': True}], 'load_preview_by_default': True}, 'message': 'Validation finished with errors.', 'dataset_errors': [], 'options': {'schema_update_enabled': False, 'data_types': {'items': [{'casts': ['string', 'date', 'genericdatetime', 'boolean', 'integer', 'float', 'geopoint', 'geopolygon'], 'type': 'string', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['integer', 'float', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'integer', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['float', 'integer', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'float', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['date', 'genericdatetime', 'string', 'integer', 'float', 'boolean'], 'type': 'date', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['genericdatetime', 'datetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetime', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['boolean', 'integer', 'float', 'string'], 'type': 'boolean', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopoint', 'string'], 'type': 'geopoint', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopolygon', 'string'], 'type': 'geopolygon', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['uuid', 'string'], 'type': 'uuid', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['markup'], 'type': 'markup', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['datetimetz', 'genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetimetz', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['unsupported'], 'type': 'unsupported', 'aggregations': [], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['array_str', 'string'], 'type': 'array_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_int', 'string'], 'type': 'array_int', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_float', 'string'], 'type': 'array_float', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['tree_str'], 'type': 'tree_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'genericdatetime', 'aggregations': ['count', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}]}, 'join': {'types': ['inner', 'left', 'right', 'full'], 'operators': ['eq']}, 'connections': {'max': 1, 'items': [{'id': '4swqu156gd2ar', 'replacement_types': [{'conn_type': 'postgres'}]}], 'compatible_types': []}, 'fields': {'items': []}, 'preview': {'enabled': True}, 'sources': {'items': [{'id': '5934667d-4030-4ca6-a70a-47b00cc430a9', 'schema_update_enabled': False}], 'compatible_types': [{'source_type': 'BITRIX_GDS'}]}, 'supports_offset': True, 'supported_functions': ['abs', 'acos', 'all_concat', 'any', 'arr_remove', 'arr_str', 'array', 'ascii', 'asin', 'atan', 'atan2', 'avg', 'avg_if', 'bold', 'bool', 'br', 'case', 'cast_arr_float', 'cast_arr_int', 'cast_arr_str', 'ceiling', 'char', 'color', 'concat', 'contains', 'contains_all', 'contains_any', 'cos', 'cot', 'count', 'count_if', 'count_item', 'countd', 'countd_if', 'date', 'dateadd', 'datepart', 'datetime', 'datetrunc', 'day', 'dayofweek', 'db_cast', 'degrees', 'div', 'div_safe', 'endswith', 'exp', 'fdiv_safe', 'find', 'first', 'float', 'floor', 'geopoint', 'geopolygon', 'get_item', 'greatest', 'hour', 'icontains', 'iendswith', 'if', 'ifnan', 'ifnull', 'iif', 'image', 'int', 'isnan', 'isnull', 'istartswith', 'italic', 'lag', 'last', 'least', 'left', 'len', 'ln', 'log', 'log10', 'lower', 'ltrim', 'markup', 'mavg', 'max', 'mcount', 'median', 'min', 'minute', 'mmax', 'mmin', 'month', 'msum', 'notcontains', 'now', 'pi', 'power', 'quantile', 'quarter', 'radians', 'rank', 'rank_dense', 'rank_percentile', 'rank_unique', 'ravg', 'rcount', 'regexp_extract', 'regexp_extract_nth', 'regexp_match', 'regexp_replace', 'replace', 'right', 'rmax', 'rmin', 'round', 'rsum', 'rtrim', 'second', 'sign', 'sin', 'size', 'slice', 'space', 'split', 'sqrt', 'square', 'startswith', 'stdev', 'stdevp', 'str', 'substr', 'sum', 'sum_if', 'tan', 'today', 'tree', 'trim', 'unnest', 'upper', 'url', 'var', 'varp', 'week', 'year', 'zn'], 'source_avatars': {'max': 32, 'items': [{'id': '26c71850-a486-4cde-a0ee-b9def8a53e01', 'schema_update_enabled': False}]}}}

/venv/lib/python3.10/site-packages/dl_api_client/dsmaker/api/dataset_api.py:234: AssertionError

Check failure on line 0 in dl_connector_bitrix_gds_tests.ext.api.test_data.TestBitrixDataRange

See this annotation in the file changed.

@github-actions github-actions / Test Results

test_basic_range (dl_connector_bitrix_gds_tests.ext.api.test_data.TestBitrixDataRange) with error

./report/pytest_reports_dl_connector_bitrix_gds_442724729/_src_lib_dl_connector_bitrix_gds_dl_connector_bitrix_gds_tests-ext-ad12e63037fc49018d8f609250f83756.xml [took 3s]
Raw output
failed on setup with "AssertionError: {'code': 'ERR.DS_API.VALIDATION.ERROR', 'dataset': {'result_schema_aux': {'inter_dependencies': {'deps': []}}, 'revision_id': None, 'avatar_relations': [], 'preview_enabled': True, 'rls': {}, 'component_errors': {'items': [{'id': '204e4628-e010-495a-8d91-f88336b16ea5', 'type': 'data_source', 'errors': [{'message': 'Data source (table) identified by: `default..crm_deal` does not exist.', 'code': 'ERR.DS_API.DB.SOURCE_DOES_NOT_EXIST', 'level': 'error', 'details': {'db_message': ''}}]}]}, 'obligatory_filters': [], 'sources': [{'source_type': 'BITRIX_GDS', 'parameters': {'db_version': None, 'table_name': 'crm_deal', 'db_name': 'default'}, 'id': '204e4628-e010-495a-8d91-f88336b16ea5', 'raw_schema': [], 'virtual': False, 'valid': False, 'managed_by': 'user', 'parameter_hash': '63e0e0e5993e791c', 'index_info_set': None, 'title': 'crm_deal', 'connection_id': 'ymqko875xgnul'}], 'result_schema': [], 'source_avatars': [{'source_id': '204e4628-e010-495a-8d91-f88336b16ea5', 'id': '207c4c16-1778-47ea-a45d-7d721d1b42cf', 'virtual': False, 'valid': True, 'managed_by': 'user', 'title': 'avatar_1', 'is_root': True}], 'load_preview_by_default': True}, 'message': 'Validation finished with errors.', 'dataset_errors': [], 'options': {'schema_update_enabled': False, 'data_types': {'items': [{'casts': ['string', 'date', 'genericdatetime', 'boolean', 'integer', 'float', 'geopoint', 'geopolygon'], 'type': 'string', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['integer', 'float', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'integer', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['float', 'integer', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'float', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['date', 'genericdatetime', 'string', 'integer', 'float', 'boolean'], 'type': 'date', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['genericdatetime', 'datetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetime', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['boolean', 'integer', 'float', 'string'], 'type': 'boolean', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopoint', 'string'], 'type': 'geopoint', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopolygon', 'string'], 'type': 'geopolygon', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['uuid', 'string'], 'type': 'uuid', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['markup'], 'type': 'markup', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['datetimetz', 'genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetimetz', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['unsupported'], 'type': 'unsupported', 'aggregations': [], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['array_str', 'string'], 'type': 'array_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_int', 'string'], 'type': 'array_int', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_float', 'string'], 'type': 'array_float', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['tree_str'], 'type': 'tree_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'genericdatetime', 'aggregations': ['count', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}]}, 'join': {'types': ['inner', 'left', 'right', 'full'], 'operators': ['eq']}, 'connections': {'max': 1, 'items': [{'id': 'ymqko875xgnul', 'replacement_types': [{'conn_type': 'postgres'}]}], 'compatible_types': []}, 'fields': {'items': []}, 'preview': {'enabled': True}, 'sources': {'items': [{'id': '204e4628-e010-495a-8d91-f88336b16ea5', 'schema_update_enabled': False}], 'compatible_types': [{'source_type': 'BITRIX_GDS'}]}, 'supports_offset': True, 'supported_functions': ['abs', 'acos', 'all_concat', 'any', 'arr_remove', 'arr_str', 'array', 'ascii', 'asin', 'atan', 'atan2', 'avg', 'avg_if', 'bold', 'bool', 'br', 'case', 'cast_arr_float', 'cast_arr_int', 'cast_arr_str', 'ceiling', 'char', 'color', 'concat', 'contains', 'contains_all', 'contains_any', 'cos', 'cot', 'count', 'count_if', 'count_item', 'countd', 'countd_if', 'date', 'dateadd', 'datepart', 'datetime', 'datetrunc', 'day', 'dayofweek', 'db_cast', 'degrees', 'div', 'div_safe', 'endswith', 'exp', 'fdiv_safe', 'find', 'first', 'float', 'floor', 'geopoint', 'geopolygon', 'get_item', 'greatest', 'hour', 'icontains', 'iendswith', 'if', 'ifnan', 'ifnull', 'iif', 'image', 'int', 'isnan', 'isnull', 'istartswith', 'italic', 'lag', 'last', 'least', 'left', 'len', 'ln', 'log', 'log10', 'lower', 'ltrim', 'markup', 'mavg', 'max', 'mcount', 'median', 'min', 'minute', 'mmax', 'mmin', 'month', 'msum', 'notcontains', 'now', 'pi', 'power', 'quantile', 'quarter', 'radians', 'rank', 'rank_dense', 'rank_percentile', 'rank_unique', 'ravg', 'rcount', 'regexp_extract', 'regexp_extract_nth', 'regexp_match', 'regexp_replace', 'replace', 'right', 'rmax', 'rmin', 'round', 'rsum', 'rtrim', 'second', 'sign', 'sin', 'size', 'slice', 'space', 'split', 'sqrt', 'square', 'startswith', 'stdev', 'stdevp', 'str', 'substr', 'sum', 'sum_if', 'tan', 'today', 'tree', 'trim', 'unnest', 'upper', 'url', 'var', 'varp', 'week', 'year', 'zn'], 'source_avatars': {'max': 32, 'items': [{'id': '207c4c16-1778-47ea-a45d-7d721d1b42cf', 'schema_update_enabled': False}]}}}"
>       lambda: ihook(item=item, **kwds), when=when, reraise=reraise
    )

/venv/lib/python3.10/site-packages/flaky/flaky_pytest_plugin.py:146: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/venv/lib/python3.10/site-packages/pytest_lazyfixture.py:39: in fill
    _fillfixtures()
/venv/lib/python3.10/site-packages/dl_api_lib_testing/dataset_base.py:41: in saved_dataset
    ds = self.make_basic_dataset(
/venv/lib/python3.10/site-packages/dl_api_lib_testing/dataset_base.py:30: in make_basic_dataset
    ds = control_api.apply_updates(dataset=ds, fail_ok=False).dataset
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = SyncHttpDatasetApiV1(client=FlaskSyncApiClient(_int_wclient=<TestClient <Flask 'dl_api_lib.app.control_api.app'>>), headers={}, _created_dataset_id_list=[], serial_adapter=DatasetApiV1SerializationAdapter())
dataset = Dataset(id='235252d5-4a18-4f34-837b-80b798e14c83', created_=False, name=None, revision_id=None, load_preview_by_defaul...sultSchemaAux(inter_dependencies={}), rls={}, component_errors=ComponentErrorRegistry(items=[]), obligatory_filters=[])
updates = [UpdateAction(action=<Action.add: 'add'>, item=DataSource(id='204e4628-e010-495a-8d91-f88336b16ea5', created_=False, c...', title='avatar_1', is_root=False, managed_by=<ManagedBy.user: 'user'>, valid=True), custom_data=None, order_index=0)]
fail_ok = False

    def apply_updates(  # type: ignore  # TODO: fix
        self,
        dataset: Dataset,
        updates: list[Union[UpdateAction, dict]] = None,  # type: ignore  # 2024-01-24 # TODO: Incompatible default for argument "updates" (default has type "None", argument has type "list[UpdateAction | dict[Any, Any]]")  [assignment]
        fail_ok: bool = False,
    ) -> HttpDatasetApiResponse:
        if dataset.created_:
            url = f"/api/v1/datasets/{dataset.id}/versions/draft/validators/schema"
        else:
            url = "/api/v1/datasets/validators/dataset"
    
        data = self.dump_dataset_to_request_body(dataset)
        updates = list(updates or ()) + self.serial_adapter.generate_implicit_updates(dataset)  # type: ignore  # 2024-01-24 # TODO: Unsupported operand types for + ("list[UpdateAction | dict[Any, Any]]" and "list[UpdateAction]")  [operator]
        data["updates"] = self.serial_adapter.dump_updates(updates)
        response = self._request(url, method="post", data=data)
    
        if fail_ok:
            # `fail_ok` should not mean `allow 5xx`
            assert response.status_code < 500, response.json
        else:
            try:
>               assert response.status_code == HTTPStatus.OK, response.json
E               AssertionError: {'code': 'ERR.DS_API.VALIDATION.ERROR', 'dataset': {'result_schema_aux': {'inter_dependencies': {'deps': []}}, 'revision_id': None, 'avatar_relations': [], 'preview_enabled': True, 'rls': {}, 'component_errors': {'items': [{'id': '204e4628-e010-495a-8d91-f88336b16ea5', 'type': 'data_source', 'errors': [{'message': 'Data source (table) identified by: `default..crm_deal` does not exist.', 'code': 'ERR.DS_API.DB.SOURCE_DOES_NOT_EXIST', 'level': 'error', 'details': {'db_message': ''}}]}]}, 'obligatory_filters': [], 'sources': [{'source_type': 'BITRIX_GDS', 'parameters': {'db_version': None, 'table_name': 'crm_deal', 'db_name': 'default'}, 'id': '204e4628-e010-495a-8d91-f88336b16ea5', 'raw_schema': [], 'virtual': False, 'valid': False, 'managed_by': 'user', 'parameter_hash': '63e0e0e5993e791c', 'index_info_set': None, 'title': 'crm_deal', 'connection_id': 'ymqko875xgnul'}], 'result_schema': [], 'source_avatars': [{'source_id': '204e4628-e010-495a-8d91-f88336b16ea5', 'id': '207c4c16-1778-47ea-a45d-7d721d1b42cf', 'virtual': False, 'valid': True, 'managed_by': 'user', 'title': 'avatar_1', 'is_root': True}], 'load_preview_by_default': True}, 'message': 'Validation finished with errors.', 'dataset_errors': [], 'options': {'schema_update_enabled': False, 'data_types': {'items': [{'casts': ['string', 'date', 'genericdatetime', 'boolean', 'integer', 'float', 'geopoint', 'geopolygon'], 'type': 'string', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['integer', 'float', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'integer', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['float', 'integer', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'float', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['date', 'genericdatetime', 'string', 'integer', 'float', 'boolean'], 'type': 'date', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['genericdatetime', 'datetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetime', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['boolean', 'integer', 'float', 'string'], 'type': 'boolean', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopoint', 'string'], 'type': 'geopoint', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopolygon', 'string'], 'type': 'geopolygon', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['uuid', 'string'], 'type': 'uuid', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['markup'], 'type': 'markup', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['datetimetz', 'genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetimetz', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['unsupported'], 'type': 'unsupported', 'aggregations': [], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['array_str', 'string'], 'type': 'array_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_int', 'string'], 'type': 'array_int', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_float', 'string'], 'type': 'array_float', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['tree_str'], 'type': 'tree_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'genericdatetime', 'aggregations': ['count', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}]}, 'join': {'types': ['inner', 'left', 'right', 'full'], 'operators': ['eq']}, 'connections': {'max': 1, 'items': [{'id': 'ymqko875xgnul', 'replacement_types': [{'conn_type': 'postgres'}]}], 'compatible_types': []}, 'fields': {'items': []}, 'preview': {'enabled': True}, 'sources': {'items': [{'id': '204e4628-e010-495a-8d91-f88336b16ea5', 'schema_update_enabled': False}], 'compatible_types': [{'source_type': 'BITRIX_GDS'}]}, 'supports_offset': True, 'supported_functions': ['abs', 'acos', 'all_concat', 'any', 'arr_remove', 'arr_str', 'array', 'ascii', 'asin', 'atan', 'atan2', 'avg', 'avg_if', 'bold', 'bool', 'br', 'case', 'cast_arr_float', 'cast_arr_int', 'cast_arr_str', 'ceiling', 'char', 'color', 'concat', 'contains', 'contains_all', 'contains_any', 'cos', 'cot', 'count', 'count_if', 'count_item', 'countd', 'countd_if', 'date', 'dateadd', 'datepart', 'datetime', 'datetrunc', 'day', 'dayofweek', 'db_cast', 'degrees', 'div', 'div_safe', 'endswith', 'exp', 'fdiv_safe', 'find', 'first', 'float', 'floor', 'geopoint', 'geopolygon', 'get_item', 'greatest', 'hour', 'icontains', 'iendswith', 'if', 'ifnan', 'ifnull', 'iif', 'image', 'int', 'isnan', 'isnull', 'istartswith', 'italic', 'lag', 'last', 'least', 'left', 'len', 'ln', 'log', 'log10', 'lower', 'ltrim', 'markup', 'mavg', 'max', 'mcount', 'median', 'min', 'minute', 'mmax', 'mmin', 'month', 'msum', 'notcontains', 'now', 'pi', 'power', 'quantile', 'quarter', 'radians', 'rank', 'rank_dense', 'rank_percentile', 'rank_unique', 'ravg', 'rcount', 'regexp_extract', 'regexp_extract_nth', 'regexp_match', 'regexp_replace', 'replace', 'right', 'rmax', 'rmin', 'round', 'rsum', 'rtrim', 'second', 'sign', 'sin', 'size', 'slice', 'space', 'split', 'sqrt', 'square', 'startswith', 'stdev', 'stdevp', 'str', 'substr', 'sum', 'sum_if', 'tan', 'today', 'tree', 'trim', 'unnest', 'upper', 'url', 'var', 'varp', 'week', 'year', 'zn'], 'source_avatars': {'max': 32, 'items': [{'id': '207c4c16-1778-47ea-a45d-7d721d1b42cf', 'schema_update_enabled': False}]}}}

/venv/lib/python3.10/site-packages/dl_api_client/dsmaker/api/dataset_api.py:234: AssertionError

Check failure on line 0 in dl_connector_bitrix_gds_tests.ext.api.test_data.TestBitrixDataDistinct

See this annotation in the file changed.

@github-actions github-actions / Test Results

test_basic_distinct (dl_connector_bitrix_gds_tests.ext.api.test_data.TestBitrixDataDistinct) with error

./report/pytest_reports_dl_connector_bitrix_gds_442724729/_src_lib_dl_connector_bitrix_gds_dl_connector_bitrix_gds_tests-ext-ad12e63037fc49018d8f609250f83756.xml [took 3s]
Raw output
failed on setup with "AssertionError: {'code': 'ERR.DS_API.VALIDATION.ERROR', 'dataset': {'result_schema_aux': {'inter_dependencies': {'deps': []}}, 'revision_id': None, 'avatar_relations': [], 'preview_enabled': True, 'rls': {}, 'component_errors': {'items': [{'id': '28a78339-f392-43b6-ad7e-04c7ada5f89f', 'type': 'data_source', 'errors': [{'message': 'Data source (table) identified by: `default..crm_deal` does not exist.', 'code': 'ERR.DS_API.DB.SOURCE_DOES_NOT_EXIST', 'level': 'error', 'details': {'db_message': ''}}]}]}, 'obligatory_filters': [], 'sources': [{'source_type': 'BITRIX_GDS', 'parameters': {'db_version': None, 'table_name': 'crm_deal', 'db_name': 'default'}, 'id': '28a78339-f392-43b6-ad7e-04c7ada5f89f', 'raw_schema': [], 'virtual': False, 'valid': False, 'managed_by': 'user', 'parameter_hash': '608cfb441605aedd', 'index_info_set': None, 'title': 'crm_deal', 'connection_id': '0osmro6wnttyn'}], 'result_schema': [], 'source_avatars': [{'source_id': '28a78339-f392-43b6-ad7e-04c7ada5f89f', 'id': '8a92eb19-6582-4f42-b1b0-051c76411fd9', 'virtual': False, 'valid': True, 'managed_by': 'user', 'title': 'avatar_1', 'is_root': True}], 'load_preview_by_default': True}, 'message': 'Validation finished with errors.', 'dataset_errors': [], 'options': {'schema_update_enabled': False, 'data_types': {'items': [{'casts': ['string', 'date', 'genericdatetime', 'boolean', 'integer', 'float', 'geopoint', 'geopolygon'], 'type': 'string', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['integer', 'float', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'integer', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['float', 'integer', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'float', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['date', 'genericdatetime', 'string', 'integer', 'float', 'boolean'], 'type': 'date', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['genericdatetime', 'datetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetime', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['boolean', 'integer', 'float', 'string'], 'type': 'boolean', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopoint', 'string'], 'type': 'geopoint', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopolygon', 'string'], 'type': 'geopolygon', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['uuid', 'string'], 'type': 'uuid', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['markup'], 'type': 'markup', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['datetimetz', 'genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetimetz', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['unsupported'], 'type': 'unsupported', 'aggregations': [], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['array_str', 'string'], 'type': 'array_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_int', 'string'], 'type': 'array_int', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_float', 'string'], 'type': 'array_float', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['tree_str'], 'type': 'tree_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'genericdatetime', 'aggregations': ['count', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}]}, 'join': {'types': ['inner', 'left', 'right', 'full'], 'operators': ['eq']}, 'connections': {'max': 1, 'items': [{'id': '0osmro6wnttyn', 'replacement_types': [{'conn_type': 'postgres'}]}], 'compatible_types': []}, 'fields': {'items': []}, 'preview': {'enabled': True}, 'sources': {'items': [{'id': '28a78339-f392-43b6-ad7e-04c7ada5f89f', 'schema_update_enabled': False}], 'compatible_types': [{'source_type': 'BITRIX_GDS'}]}, 'supports_offset': True, 'supported_functions': ['abs', 'acos', 'all_concat', 'any', 'arr_remove', 'arr_str', 'array', 'ascii', 'asin', 'atan', 'atan2', 'avg', 'avg_if', 'bold', 'bool', 'br', 'case', 'cast_arr_float', 'cast_arr_int', 'cast_arr_str', 'ceiling', 'char', 'color', 'concat', 'contains', 'contains_all', 'contains_any', 'cos', 'cot', 'count', 'count_if', 'count_item', 'countd', 'countd_if', 'date', 'dateadd', 'datepart', 'datetime', 'datetrunc', 'day', 'dayofweek', 'db_cast', 'degrees', 'div', 'div_safe', 'endswith', 'exp', 'fdiv_safe', 'find', 'first', 'float', 'floor', 'geopoint', 'geopolygon', 'get_item', 'greatest', 'hour', 'icontains', 'iendswith', 'if', 'ifnan', 'ifnull', 'iif', 'image', 'int', 'isnan', 'isnull', 'istartswith', 'italic', 'lag', 'last', 'least', 'left', 'len', 'ln', 'log', 'log10', 'lower', 'ltrim', 'markup', 'mavg', 'max', 'mcount', 'median', 'min', 'minute', 'mmax', 'mmin', 'month', 'msum', 'notcontains', 'now', 'pi', 'power', 'quantile', 'quarter', 'radians', 'rank', 'rank_dense', 'rank_percentile', 'rank_unique', 'ravg', 'rcount', 'regexp_extract', 'regexp_extract_nth', 'regexp_match', 'regexp_replace', 'replace', 'right', 'rmax', 'rmin', 'round', 'rsum', 'rtrim', 'second', 'sign', 'sin', 'size', 'slice', 'space', 'split', 'sqrt', 'square', 'startswith', 'stdev', 'stdevp', 'str', 'substr', 'sum', 'sum_if', 'tan', 'today', 'tree', 'trim', 'unnest', 'upper', 'url', 'var', 'varp', 'week', 'year', 'zn'], 'source_avatars': {'max': 32, 'items': [{'id': '8a92eb19-6582-4f42-b1b0-051c76411fd9', 'schema_update_enabled': False}]}}}"
>       lambda: ihook(item=item, **kwds), when=when, reraise=reraise
    )

/venv/lib/python3.10/site-packages/flaky/flaky_pytest_plugin.py:146: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/venv/lib/python3.10/site-packages/pytest_lazyfixture.py:39: in fill
    _fillfixtures()
/venv/lib/python3.10/site-packages/dl_api_lib_testing/dataset_base.py:41: in saved_dataset
    ds = self.make_basic_dataset(
/venv/lib/python3.10/site-packages/dl_api_lib_testing/dataset_base.py:30: in make_basic_dataset
    ds = control_api.apply_updates(dataset=ds, fail_ok=False).dataset
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = SyncHttpDatasetApiV1(client=FlaskSyncApiClient(_int_wclient=<TestClient <Flask 'dl_api_lib.app.control_api.app'>>), headers={}, _created_dataset_id_list=[], serial_adapter=DatasetApiV1SerializationAdapter())
dataset = Dataset(id='d7b3c911-8aa8-4e01-9e2d-ff9d1740e885', created_=False, name=None, revision_id=None, load_preview_by_defaul...sultSchemaAux(inter_dependencies={}), rls={}, component_errors=ComponentErrorRegistry(items=[]), obligatory_filters=[])
updates = [UpdateAction(action=<Action.add: 'add'>, item=DataSource(id='28a78339-f392-43b6-ad7e-04c7ada5f89f', created_=False, c...', title='avatar_1', is_root=False, managed_by=<ManagedBy.user: 'user'>, valid=True), custom_data=None, order_index=0)]
fail_ok = False

    def apply_updates(  # type: ignore  # TODO: fix
        self,
        dataset: Dataset,
        updates: list[Union[UpdateAction, dict]] = None,  # type: ignore  # 2024-01-24 # TODO: Incompatible default for argument "updates" (default has type "None", argument has type "list[UpdateAction | dict[Any, Any]]")  [assignment]
        fail_ok: bool = False,
    ) -> HttpDatasetApiResponse:
        if dataset.created_:
            url = f"/api/v1/datasets/{dataset.id}/versions/draft/validators/schema"
        else:
            url = "/api/v1/datasets/validators/dataset"
    
        data = self.dump_dataset_to_request_body(dataset)
        updates = list(updates or ()) + self.serial_adapter.generate_implicit_updates(dataset)  # type: ignore  # 2024-01-24 # TODO: Unsupported operand types for + ("list[UpdateAction | dict[Any, Any]]" and "list[UpdateAction]")  [operator]
        data["updates"] = self.serial_adapter.dump_updates(updates)
        response = self._request(url, method="post", data=data)
    
        if fail_ok:
            # `fail_ok` should not mean `allow 5xx`
            assert response.status_code < 500, response.json
        else:
            try:
>               assert response.status_code == HTTPStatus.OK, response.json
E               AssertionError: {'code': 'ERR.DS_API.VALIDATION.ERROR', 'dataset': {'result_schema_aux': {'inter_dependencies': {'deps': []}}, 'revision_id': None, 'avatar_relations': [], 'preview_enabled': True, 'rls': {}, 'component_errors': {'items': [{'id': '28a78339-f392-43b6-ad7e-04c7ada5f89f', 'type': 'data_source', 'errors': [{'message': 'Data source (table) identified by: `default..crm_deal` does not exist.', 'code': 'ERR.DS_API.DB.SOURCE_DOES_NOT_EXIST', 'level': 'error', 'details': {'db_message': ''}}]}]}, 'obligatory_filters': [], 'sources': [{'source_type': 'BITRIX_GDS', 'parameters': {'db_version': None, 'table_name': 'crm_deal', 'db_name': 'default'}, 'id': '28a78339-f392-43b6-ad7e-04c7ada5f89f', 'raw_schema': [], 'virtual': False, 'valid': False, 'managed_by': 'user', 'parameter_hash': '608cfb441605aedd', 'index_info_set': None, 'title': 'crm_deal', 'connection_id': '0osmro6wnttyn'}], 'result_schema': [], 'source_avatars': [{'source_id': '28a78339-f392-43b6-ad7e-04c7ada5f89f', 'id': '8a92eb19-6582-4f42-b1b0-051c76411fd9', 'virtual': False, 'valid': True, 'managed_by': 'user', 'title': 'avatar_1', 'is_root': True}], 'load_preview_by_default': True}, 'message': 'Validation finished with errors.', 'dataset_errors': [], 'options': {'schema_update_enabled': False, 'data_types': {'items': [{'casts': ['string', 'date', 'genericdatetime', 'boolean', 'integer', 'float', 'geopoint', 'geopolygon'], 'type': 'string', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['integer', 'float', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'integer', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['float', 'integer', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'float', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['date', 'genericdatetime', 'string', 'integer', 'float', 'boolean'], 'type': 'date', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['genericdatetime', 'datetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetime', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['boolean', 'integer', 'float', 'string'], 'type': 'boolean', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopoint', 'string'], 'type': 'geopoint', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopolygon', 'string'], 'type': 'geopolygon', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['uuid', 'string'], 'type': 'uuid', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['markup'], 'type': 'markup', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['datetimetz', 'genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetimetz', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['unsupported'], 'type': 'unsupported', 'aggregations': [], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['array_str', 'string'], 'type': 'array_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_int', 'string'], 'type': 'array_int', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_float', 'string'], 'type': 'array_float', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['tree_str'], 'type': 'tree_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'genericdatetime', 'aggregations': ['count', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}]}, 'join': {'types': ['inner', 'left', 'right', 'full'], 'operators': ['eq']}, 'connections': {'max': 1, 'items': [{'id': '0osmro6wnttyn', 'replacement_types': [{'conn_type': 'postgres'}]}], 'compatible_types': []}, 'fields': {'items': []}, 'preview': {'enabled': True}, 'sources': {'items': [{'id': '28a78339-f392-43b6-ad7e-04c7ada5f89f', 'schema_update_enabled': False}], 'compatible_types': [{'source_type': 'BITRIX_GDS'}]}, 'supports_offset': True, 'supported_functions': ['abs', 'acos', 'all_concat', 'any', 'arr_remove', 'arr_str', 'array', 'ascii', 'asin', 'atan', 'atan2', 'avg', 'avg_if', 'bold', 'bool', 'br', 'case', 'cast_arr_float', 'cast_arr_int', 'cast_arr_str', 'ceiling', 'char', 'color', 'concat', 'contains', 'contains_all', 'contains_any', 'cos', 'cot', 'count', 'count_if', 'count_item', 'countd', 'countd_if', 'date', 'dateadd', 'datepart', 'datetime', 'datetrunc', 'day', 'dayofweek', 'db_cast', 'degrees', 'div', 'div_safe', 'endswith', 'exp', 'fdiv_safe', 'find', 'first', 'float', 'floor', 'geopoint', 'geopolygon', 'get_item', 'greatest', 'hour', 'icontains', 'iendswith', 'if', 'ifnan', 'ifnull', 'iif', 'image', 'int', 'isnan', 'isnull', 'istartswith', 'italic', 'lag', 'last', 'least', 'left', 'len', 'ln', 'log', 'log10', 'lower', 'ltrim', 'markup', 'mavg', 'max', 'mcount', 'median', 'min', 'minute', 'mmax', 'mmin', 'month', 'msum', 'notcontains', 'now', 'pi', 'power', 'quantile', 'quarter', 'radians', 'rank', 'rank_dense', 'rank_percentile', 'rank_unique', 'ravg', 'rcount', 'regexp_extract', 'regexp_extract_nth', 'regexp_match', 'regexp_replace', 'replace', 'right', 'rmax', 'rmin', 'round', 'rsum', 'rtrim', 'second', 'sign', 'sin', 'size', 'slice', 'space', 'split', 'sqrt', 'square', 'startswith', 'stdev', 'stdevp', 'str', 'substr', 'sum', 'sum_if', 'tan', 'today', 'tree', 'trim', 'unnest', 'upper', 'url', 'var', 'varp', 'week', 'year', 'zn'], 'source_avatars': {'max': 32, 'items': [{'id': '8a92eb19-6582-4f42-b1b0-051c76411fd9', 'schema_update_enabled': False}]}}}

/venv/lib/python3.10/site-packages/dl_api_client/dsmaker/api/dataset_api.py:234: AssertionError

Check failure on line 0 in dl_connector_bitrix_gds_tests.ext.api.test_data.TestBitrixDataDistinct

See this annotation in the file changed.

@github-actions github-actions / Test Results

test_distinct_with_nonexistent_filter (dl_connector_bitrix_gds_tests.ext.api.test_data.TestBitrixDataDistinct) with error

./report/pytest_reports_dl_connector_bitrix_gds_442724729/_src_lib_dl_connector_bitrix_gds_dl_connector_bitrix_gds_tests-ext-ad12e63037fc49018d8f609250f83756.xml [took 3s]
Raw output
failed on setup with "AssertionError: {'code': 'ERR.DS_API.VALIDATION.ERROR', 'dataset': {'result_schema_aux': {'inter_dependencies': {'deps': []}}, 'revision_id': None, 'avatar_relations': [], 'preview_enabled': True, 'rls': {}, 'component_errors': {'items': [{'id': '1a9e8d76-e341-486b-8c5a-691b6570a294', 'type': 'data_source', 'errors': [{'message': 'Data source (table) identified by: `default..crm_deal` does not exist.', 'code': 'ERR.DS_API.DB.SOURCE_DOES_NOT_EXIST', 'level': 'error', 'details': {'db_message': ''}}]}]}, 'obligatory_filters': [], 'sources': [{'source_type': 'BITRIX_GDS', 'parameters': {'db_version': None, 'table_name': 'crm_deal', 'db_name': 'default'}, 'id': '1a9e8d76-e341-486b-8c5a-691b6570a294', 'raw_schema': [], 'virtual': False, 'valid': False, 'managed_by': 'user', 'parameter_hash': '7ade30626cb6e1db', 'index_info_set': None, 'title': 'crm_deal', 'connection_id': 'mae8dn42p6aq9'}], 'result_schema': [], 'source_avatars': [{'source_id': '1a9e8d76-e341-486b-8c5a-691b6570a294', 'id': 'f5f543df-42b4-4455-98ae-e3575c616b0b', 'virtual': False, 'valid': True, 'managed_by': 'user', 'title': 'avatar_1', 'is_root': True}], 'load_preview_by_default': True}, 'message': 'Validation finished with errors.', 'dataset_errors': [], 'options': {'schema_update_enabled': False, 'data_types': {'items': [{'casts': ['string', 'date', 'genericdatetime', 'boolean', 'integer', 'float', 'geopoint', 'geopolygon'], 'type': 'string', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['integer', 'float', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'integer', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['float', 'integer', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'float', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['date', 'genericdatetime', 'string', 'integer', 'float', 'boolean'], 'type': 'date', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['genericdatetime', 'datetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetime', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['boolean', 'integer', 'float', 'string'], 'type': 'boolean', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopoint', 'string'], 'type': 'geopoint', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopolygon', 'string'], 'type': 'geopolygon', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['uuid', 'string'], 'type': 'uuid', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['markup'], 'type': 'markup', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['datetimetz', 'genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetimetz', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['unsupported'], 'type': 'unsupported', 'aggregations': [], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['array_str', 'string'], 'type': 'array_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_int', 'string'], 'type': 'array_int', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_float', 'string'], 'type': 'array_float', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['tree_str'], 'type': 'tree_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'genericdatetime', 'aggregations': ['count', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}]}, 'join': {'types': ['inner', 'left', 'right', 'full'], 'operators': ['eq']}, 'connections': {'max': 1, 'items': [{'id': 'mae8dn42p6aq9', 'replacement_types': [{'conn_type': 'postgres'}]}], 'compatible_types': []}, 'fields': {'items': []}, 'preview': {'enabled': True}, 'sources': {'items': [{'id': '1a9e8d76-e341-486b-8c5a-691b6570a294', 'schema_update_enabled': False}], 'compatible_types': [{'source_type': 'BITRIX_GDS'}]}, 'supports_offset': True, 'supported_functions': ['abs', 'acos', 'all_concat', 'any', 'arr_remove', 'arr_str', 'array', 'ascii', 'asin', 'atan', 'atan2', 'avg', 'avg_if', 'bold', 'bool', 'br', 'case', 'cast_arr_float', 'cast_arr_int', 'cast_arr_str', 'ceiling', 'char', 'color', 'concat', 'contains', 'contains_all', 'contains_any', 'cos', 'cot', 'count', 'count_if', 'count_item', 'countd', 'countd_if', 'date', 'dateadd', 'datepart', 'datetime', 'datetrunc', 'day', 'dayofweek', 'db_cast', 'degrees', 'div', 'div_safe', 'endswith', 'exp', 'fdiv_safe', 'find', 'first', 'float', 'floor', 'geopoint', 'geopolygon', 'get_item', 'greatest', 'hour', 'icontains', 'iendswith', 'if', 'ifnan', 'ifnull', 'iif', 'image', 'int', 'isnan', 'isnull', 'istartswith', 'italic', 'lag', 'last', 'least', 'left', 'len', 'ln', 'log', 'log10', 'lower', 'ltrim', 'markup', 'mavg', 'max', 'mcount', 'median', 'min', 'minute', 'mmax', 'mmin', 'month', 'msum', 'notcontains', 'now', 'pi', 'power', 'quantile', 'quarter', 'radians', 'rank', 'rank_dense', 'rank_percentile', 'rank_unique', 'ravg', 'rcount', 'regexp_extract', 'regexp_extract_nth', 'regexp_match', 'regexp_replace', 'replace', 'right', 'rmax', 'rmin', 'round', 'rsum', 'rtrim', 'second', 'sign', 'sin', 'size', 'slice', 'space', 'split', 'sqrt', 'square', 'startswith', 'stdev', 'stdevp', 'str', 'substr', 'sum', 'sum_if', 'tan', 'today', 'tree', 'trim', 'unnest', 'upper', 'url', 'var', 'varp', 'week', 'year', 'zn'], 'source_avatars': {'max': 32, 'items': [{'id': 'f5f543df-42b4-4455-98ae-e3575c616b0b', 'schema_update_enabled': False}]}}}"
>       lambda: ihook(item=item, **kwds), when=when, reraise=reraise
    )

/venv/lib/python3.10/site-packages/flaky/flaky_pytest_plugin.py:146: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/venv/lib/python3.10/site-packages/pytest_lazyfixture.py:39: in fill
    _fillfixtures()
/venv/lib/python3.10/site-packages/dl_api_lib_testing/dataset_base.py:41: in saved_dataset
    ds = self.make_basic_dataset(
/venv/lib/python3.10/site-packages/dl_api_lib_testing/dataset_base.py:30: in make_basic_dataset
    ds = control_api.apply_updates(dataset=ds, fail_ok=False).dataset
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = SyncHttpDatasetApiV1(client=FlaskSyncApiClient(_int_wclient=<TestClient <Flask 'dl_api_lib.app.control_api.app'>>), headers={}, _created_dataset_id_list=[], serial_adapter=DatasetApiV1SerializationAdapter())
dataset = Dataset(id='4eb31a7e-3b5c-4b8b-bcd2-39dbc626a028', created_=False, name=None, revision_id=None, load_preview_by_defaul...sultSchemaAux(inter_dependencies={}), rls={}, component_errors=ComponentErrorRegistry(items=[]), obligatory_filters=[])
updates = [UpdateAction(action=<Action.add: 'add'>, item=DataSource(id='1a9e8d76-e341-486b-8c5a-691b6570a294', created_=False, c...', title='avatar_1', is_root=False, managed_by=<ManagedBy.user: 'user'>, valid=True), custom_data=None, order_index=0)]
fail_ok = False

    def apply_updates(  # type: ignore  # TODO: fix
        self,
        dataset: Dataset,
        updates: list[Union[UpdateAction, dict]] = None,  # type: ignore  # 2024-01-24 # TODO: Incompatible default for argument "updates" (default has type "None", argument has type "list[UpdateAction | dict[Any, Any]]")  [assignment]
        fail_ok: bool = False,
    ) -> HttpDatasetApiResponse:
        if dataset.created_:
            url = f"/api/v1/datasets/{dataset.id}/versions/draft/validators/schema"
        else:
            url = "/api/v1/datasets/validators/dataset"
    
        data = self.dump_dataset_to_request_body(dataset)
        updates = list(updates or ()) + self.serial_adapter.generate_implicit_updates(dataset)  # type: ignore  # 2024-01-24 # TODO: Unsupported operand types for + ("list[UpdateAction | dict[Any, Any]]" and "list[UpdateAction]")  [operator]
        data["updates"] = self.serial_adapter.dump_updates(updates)
        response = self._request(url, method="post", data=data)
    
        if fail_ok:
            # `fail_ok` should not mean `allow 5xx`
            assert response.status_code < 500, response.json
        else:
            try:
>               assert response.status_code == HTTPStatus.OK, response.json
E               AssertionError: {'code': 'ERR.DS_API.VALIDATION.ERROR', 'dataset': {'result_schema_aux': {'inter_dependencies': {'deps': []}}, 'revision_id': None, 'avatar_relations': [], 'preview_enabled': True, 'rls': {}, 'component_errors': {'items': [{'id': '1a9e8d76-e341-486b-8c5a-691b6570a294', 'type': 'data_source', 'errors': [{'message': 'Data source (table) identified by: `default..crm_deal` does not exist.', 'code': 'ERR.DS_API.DB.SOURCE_DOES_NOT_EXIST', 'level': 'error', 'details': {'db_message': ''}}]}]}, 'obligatory_filters': [], 'sources': [{'source_type': 'BITRIX_GDS', 'parameters': {'db_version': None, 'table_name': 'crm_deal', 'db_name': 'default'}, 'id': '1a9e8d76-e341-486b-8c5a-691b6570a294', 'raw_schema': [], 'virtual': False, 'valid': False, 'managed_by': 'user', 'parameter_hash': '7ade30626cb6e1db', 'index_info_set': None, 'title': 'crm_deal', 'connection_id': 'mae8dn42p6aq9'}], 'result_schema': [], 'source_avatars': [{'source_id': '1a9e8d76-e341-486b-8c5a-691b6570a294', 'id': 'f5f543df-42b4-4455-98ae-e3575c616b0b', 'virtual': False, 'valid': True, 'managed_by': 'user', 'title': 'avatar_1', 'is_root': True}], 'load_preview_by_default': True}, 'message': 'Validation finished with errors.', 'dataset_errors': [], 'options': {'schema_update_enabled': False, 'data_types': {'items': [{'casts': ['string', 'date', 'genericdatetime', 'boolean', 'integer', 'float', 'geopoint', 'geopolygon'], 'type': 'string', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['integer', 'float', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'integer', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['float', 'integer', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'float', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['date', 'genericdatetime', 'string', 'integer', 'float', 'boolean'], 'type': 'date', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['genericdatetime', 'datetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetime', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['boolean', 'integer', 'float', 'string'], 'type': 'boolean', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopoint', 'string'], 'type': 'geopoint', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopolygon', 'string'], 'type': 'geopolygon', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['uuid', 'string'], 'type': 'uuid', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['markup'], 'type': 'markup', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['datetimetz', 'genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetimetz', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['unsupported'], 'type': 'unsupported', 'aggregations': [], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['array_str', 'string'], 'type': 'array_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_int', 'string'], 'type': 'array_int', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_float', 'string'], 'type': 'array_float', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['tree_str'], 'type': 'tree_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'genericdatetime', 'aggregations': ['count', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}]}, 'join': {'types': ['inner', 'left', 'right', 'full'], 'operators': ['eq']}, 'connections': {'max': 1, 'items': [{'id': 'mae8dn42p6aq9', 'replacement_types': [{'conn_type': 'postgres'}]}], 'compatible_types': []}, 'fields': {'items': []}, 'preview': {'enabled': True}, 'sources': {'items': [{'id': '1a9e8d76-e341-486b-8c5a-691b6570a294', 'schema_update_enabled': False}], 'compatible_types': [{'source_type': 'BITRIX_GDS'}]}, 'supports_offset': True, 'supported_functions': ['abs', 'acos', 'all_concat', 'any', 'arr_remove', 'arr_str', 'array', 'ascii', 'asin', 'atan', 'atan2', 'avg', 'avg_if', 'bold', 'bool', 'br', 'case', 'cast_arr_float', 'cast_arr_int', 'cast_arr_str', 'ceiling', 'char', 'color', 'concat', 'contains', 'contains_all', 'contains_any', 'cos', 'cot', 'count', 'count_if', 'count_item', 'countd', 'countd_if', 'date', 'dateadd', 'datepart', 'datetime', 'datetrunc', 'day', 'dayofweek', 'db_cast', 'degrees', 'div', 'div_safe', 'endswith', 'exp', 'fdiv_safe', 'find', 'first', 'float', 'floor', 'geopoint', 'geopolygon', 'get_item', 'greatest', 'hour', 'icontains', 'iendswith', 'if', 'ifnan', 'ifnull', 'iif', 'image', 'int', 'isnan', 'isnull', 'istartswith', 'italic', 'lag', 'last', 'least', 'left', 'len', 'ln', 'log', 'log10', 'lower', 'ltrim', 'markup', 'mavg', 'max', 'mcount', 'median', 'min', 'minute', 'mmax', 'mmin', 'month', 'msum', 'notcontains', 'now', 'pi', 'power', 'quantile', 'quarter', 'radians', 'rank', 'rank_dense', 'rank_percentile', 'rank_unique', 'ravg', 'rcount', 'regexp_extract', 'regexp_extract_nth', 'regexp_match', 'regexp_replace', 'replace', 'right', 'rmax', 'rmin', 'round', 'rsum', 'rtrim', 'second', 'sign', 'sin', 'size', 'slice', 'space', 'split', 'sqrt', 'square', 'startswith', 'stdev', 'stdevp', 'str', 'substr', 'sum', 'sum_if', 'tan', 'today', 'tree', 'trim', 'unnest', 'upper', 'url', 'var', 'varp', 'week', 'year', 'zn'], 'source_avatars': {'max': 32, 'items': [{'id': 'f5f543df-42b4-4455-98ae-e3575c616b0b', 'schema_update_enabled': False}]}}}

/venv/lib/python3.10/site-packages/dl_api_client/dsmaker/api/dataset_api.py:234: AssertionError

Check failure on line 0 in dl_connector_bitrix_gds_tests.ext.api.test_data.TestBitrixDataPreview

See this annotation in the file changed.

@github-actions github-actions / Test Results

test_basic_preview (dl_connector_bitrix_gds_tests.ext.api.test_data.TestBitrixDataPreview) with error

./report/pytest_reports_dl_connector_bitrix_gds_442724729/_src_lib_dl_connector_bitrix_gds_dl_connector_bitrix_gds_tests-ext-ad12e63037fc49018d8f609250f83756.xml [took 3s]
Raw output
failed on setup with "AssertionError: {'code': 'ERR.DS_API.VALIDATION.ERROR', 'dataset': {'result_schema_aux': {'inter_dependencies': {'deps': []}}, 'revision_id': None, 'avatar_relations': [], 'preview_enabled': True, 'rls': {}, 'component_errors': {'items': [{'id': '9de956a0-c633-4093-9819-943adce47346', 'type': 'data_source', 'errors': [{'message': 'Data source (table) identified by: `default..crm_deal` does not exist.', 'code': 'ERR.DS_API.DB.SOURCE_DOES_NOT_EXIST', 'level': 'error', 'details': {'db_message': ''}}]}]}, 'obligatory_filters': [], 'sources': [{'source_type': 'BITRIX_GDS', 'parameters': {'db_version': None, 'table_name': 'crm_deal', 'db_name': 'default'}, 'id': '9de956a0-c633-4093-9819-943adce47346', 'raw_schema': [], 'virtual': False, 'valid': False, 'managed_by': 'user', 'parameter_hash': 'a359beb8f892bd71', 'index_info_set': None, 'title': 'crm_deal', 'connection_id': 'c04y3r195kgiz'}], 'result_schema': [], 'source_avatars': [{'source_id': '9de956a0-c633-4093-9819-943adce47346', 'id': '2dd0a121-9d90-4d8c-879e-7e0f53fcbd8f', 'virtual': False, 'valid': True, 'managed_by': 'user', 'title': 'avatar_1', 'is_root': True}], 'load_preview_by_default': True}, 'message': 'Validation finished with errors.', 'dataset_errors': [], 'options': {'schema_update_enabled': False, 'data_types': {'items': [{'casts': ['string', 'date', 'genericdatetime', 'boolean', 'integer', 'float', 'geopoint', 'geopolygon'], 'type': 'string', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['integer', 'float', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'integer', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['float', 'integer', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'float', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['date', 'genericdatetime', 'string', 'integer', 'float', 'boolean'], 'type': 'date', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['genericdatetime', 'datetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetime', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['boolean', 'integer', 'float', 'string'], 'type': 'boolean', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopoint', 'string'], 'type': 'geopoint', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopolygon', 'string'], 'type': 'geopolygon', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['uuid', 'string'], 'type': 'uuid', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['markup'], 'type': 'markup', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['datetimetz', 'genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetimetz', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['unsupported'], 'type': 'unsupported', 'aggregations': [], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['array_str', 'string'], 'type': 'array_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_int', 'string'], 'type': 'array_int', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_float', 'string'], 'type': 'array_float', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['tree_str'], 'type': 'tree_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'genericdatetime', 'aggregations': ['count', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}]}, 'join': {'types': ['inner', 'left', 'right', 'full'], 'operators': ['eq']}, 'connections': {'max': 1, 'items': [{'id': 'c04y3r195kgiz', 'replacement_types': [{'conn_type': 'postgres'}]}], 'compatible_types': []}, 'fields': {'items': []}, 'preview': {'enabled': True}, 'sources': {'items': [{'id': '9de956a0-c633-4093-9819-943adce47346', 'schema_update_enabled': False}], 'compatible_types': [{'source_type': 'BITRIX_GDS'}]}, 'supports_offset': True, 'supported_functions': ['abs', 'acos', 'all_concat', 'any', 'arr_remove', 'arr_str', 'array', 'ascii', 'asin', 'atan', 'atan2', 'avg', 'avg_if', 'bold', 'bool', 'br', 'case', 'cast_arr_float', 'cast_arr_int', 'cast_arr_str', 'ceiling', 'char', 'color', 'concat', 'contains', 'contains_all', 'contains_any', 'cos', 'cot', 'count', 'count_if', 'count_item', 'countd', 'countd_if', 'date', 'dateadd', 'datepart', 'datetime', 'datetrunc', 'day', 'dayofweek', 'db_cast', 'degrees', 'div', 'div_safe', 'endswith', 'exp', 'fdiv_safe', 'find', 'first', 'float', 'floor', 'geopoint', 'geopolygon', 'get_item', 'greatest', 'hour', 'icontains', 'iendswith', 'if', 'ifnan', 'ifnull', 'iif', 'image', 'int', 'isnan', 'isnull', 'istartswith', 'italic', 'lag', 'last', 'least', 'left', 'len', 'ln', 'log', 'log10', 'lower', 'ltrim', 'markup', 'mavg', 'max', 'mcount', 'median', 'min', 'minute', 'mmax', 'mmin', 'month', 'msum', 'notcontains', 'now', 'pi', 'power', 'quantile', 'quarter', 'radians', 'rank', 'rank_dense', 'rank_percentile', 'rank_unique', 'ravg', 'rcount', 'regexp_extract', 'regexp_extract_nth', 'regexp_match', 'regexp_replace', 'replace', 'right', 'rmax', 'rmin', 'round', 'rsum', 'rtrim', 'second', 'sign', 'sin', 'size', 'slice', 'space', 'split', 'sqrt', 'square', 'startswith', 'stdev', 'stdevp', 'str', 'substr', 'sum', 'sum_if', 'tan', 'today', 'tree', 'trim', 'unnest', 'upper', 'url', 'var', 'varp', 'week', 'year', 'zn'], 'source_avatars': {'max': 32, 'items': [{'id': '2dd0a121-9d90-4d8c-879e-7e0f53fcbd8f', 'schema_update_enabled': False}]}}}"
>       lambda: ihook(item=item, **kwds), when=when, reraise=reraise
    )

/venv/lib/python3.10/site-packages/flaky/flaky_pytest_plugin.py:146: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/venv/lib/python3.10/site-packages/pytest_lazyfixture.py:39: in fill
    _fillfixtures()
/venv/lib/python3.10/site-packages/dl_api_lib_testing/dataset_base.py:41: in saved_dataset
    ds = self.make_basic_dataset(
/venv/lib/python3.10/site-packages/dl_api_lib_testing/dataset_base.py:30: in make_basic_dataset
    ds = control_api.apply_updates(dataset=ds, fail_ok=False).dataset
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = SyncHttpDatasetApiV1(client=FlaskSyncApiClient(_int_wclient=<TestClient <Flask 'dl_api_lib.app.control_api.app'>>), headers={}, _created_dataset_id_list=[], serial_adapter=DatasetApiV1SerializationAdapter())
dataset = Dataset(id='898f00bc-2df9-4ae3-9c09-19aa6ff9be89', created_=False, name=None, revision_id=None, load_preview_by_defaul...sultSchemaAux(inter_dependencies={}), rls={}, component_errors=ComponentErrorRegistry(items=[]), obligatory_filters=[])
updates = [UpdateAction(action=<Action.add: 'add'>, item=DataSource(id='9de956a0-c633-4093-9819-943adce47346', created_=False, c...', title='avatar_1', is_root=False, managed_by=<ManagedBy.user: 'user'>, valid=True), custom_data=None, order_index=0)]
fail_ok = False

    def apply_updates(  # type: ignore  # TODO: fix
        self,
        dataset: Dataset,
        updates: list[Union[UpdateAction, dict]] = None,  # type: ignore  # 2024-01-24 # TODO: Incompatible default for argument "updates" (default has type "None", argument has type "list[UpdateAction | dict[Any, Any]]")  [assignment]
        fail_ok: bool = False,
    ) -> HttpDatasetApiResponse:
        if dataset.created_:
            url = f"/api/v1/datasets/{dataset.id}/versions/draft/validators/schema"
        else:
            url = "/api/v1/datasets/validators/dataset"
    
        data = self.dump_dataset_to_request_body(dataset)
        updates = list(updates or ()) + self.serial_adapter.generate_implicit_updates(dataset)  # type: ignore  # 2024-01-24 # TODO: Unsupported operand types for + ("list[UpdateAction | dict[Any, Any]]" and "list[UpdateAction]")  [operator]
        data["updates"] = self.serial_adapter.dump_updates(updates)
        response = self._request(url, method="post", data=data)
    
        if fail_ok:
            # `fail_ok` should not mean `allow 5xx`
            assert response.status_code < 500, response.json
        else:
            try:
>               assert response.status_code == HTTPStatus.OK, response.json
E               AssertionError: {'code': 'ERR.DS_API.VALIDATION.ERROR', 'dataset': {'result_schema_aux': {'inter_dependencies': {'deps': []}}, 'revision_id': None, 'avatar_relations': [], 'preview_enabled': True, 'rls': {}, 'component_errors': {'items': [{'id': '9de956a0-c633-4093-9819-943adce47346', 'type': 'data_source', 'errors': [{'message': 'Data source (table) identified by: `default..crm_deal` does not exist.', 'code': 'ERR.DS_API.DB.SOURCE_DOES_NOT_EXIST', 'level': 'error', 'details': {'db_message': ''}}]}]}, 'obligatory_filters': [], 'sources': [{'source_type': 'BITRIX_GDS', 'parameters': {'db_version': None, 'table_name': 'crm_deal', 'db_name': 'default'}, 'id': '9de956a0-c633-4093-9819-943adce47346', 'raw_schema': [], 'virtual': False, 'valid': False, 'managed_by': 'user', 'parameter_hash': 'a359beb8f892bd71', 'index_info_set': None, 'title': 'crm_deal', 'connection_id': 'c04y3r195kgiz'}], 'result_schema': [], 'source_avatars': [{'source_id': '9de956a0-c633-4093-9819-943adce47346', 'id': '2dd0a121-9d90-4d8c-879e-7e0f53fcbd8f', 'virtual': False, 'valid': True, 'managed_by': 'user', 'title': 'avatar_1', 'is_root': True}], 'load_preview_by_default': True}, 'message': 'Validation finished with errors.', 'dataset_errors': [], 'options': {'schema_update_enabled': False, 'data_types': {'items': [{'casts': ['string', 'date', 'genericdatetime', 'boolean', 'integer', 'float', 'geopoint', 'geopolygon'], 'type': 'string', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['integer', 'float', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'integer', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['float', 'integer', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'float', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['date', 'genericdatetime', 'string', 'integer', 'float', 'boolean'], 'type': 'date', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['genericdatetime', 'datetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetime', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['boolean', 'integer', 'float', 'string'], 'type': 'boolean', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopoint', 'string'], 'type': 'geopoint', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopolygon', 'string'], 'type': 'geopolygon', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['uuid', 'string'], 'type': 'uuid', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['markup'], 'type': 'markup', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['datetimetz', 'genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetimetz', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['unsupported'], 'type': 'unsupported', 'aggregations': [], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['array_str', 'string'], 'type': 'array_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_int', 'string'], 'type': 'array_int', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_float', 'string'], 'type': 'array_float', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['tree_str'], 'type': 'tree_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'genericdatetime', 'aggregations': ['count', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}]}, 'join': {'types': ['inner', 'left', 'right', 'full'], 'operators': ['eq']}, 'connections': {'max': 1, 'items': [{'id': 'c04y3r195kgiz', 'replacement_types': [{'conn_type': 'postgres'}]}], 'compatible_types': []}, 'fields': {'items': []}, 'preview': {'enabled': True}, 'sources': {'items': [{'id': '9de956a0-c633-4093-9819-943adce47346', 'schema_update_enabled': False}], 'compatible_types': [{'source_type': 'BITRIX_GDS'}]}, 'supports_offset': True, 'supported_functions': ['abs', 'acos', 'all_concat', 'any', 'arr_remove', 'arr_str', 'array', 'ascii', 'asin', 'atan', 'atan2', 'avg', 'avg_if', 'bold', 'bool', 'br', 'case', 'cast_arr_float', 'cast_arr_int', 'cast_arr_str', 'ceiling', 'char', 'color', 'concat', 'contains', 'contains_all', 'contains_any', 'cos', 'cot', 'count', 'count_if', 'count_item', 'countd', 'countd_if', 'date', 'dateadd', 'datepart', 'datetime', 'datetrunc', 'day', 'dayofweek', 'db_cast', 'degrees', 'div', 'div_safe', 'endswith', 'exp', 'fdiv_safe', 'find', 'first', 'float', 'floor', 'geopoint', 'geopolygon', 'get_item', 'greatest', 'hour', 'icontains', 'iendswith', 'if', 'ifnan', 'ifnull', 'iif', 'image', 'int', 'isnan', 'isnull', 'istartswith', 'italic', 'lag', 'last', 'least', 'left', 'len', 'ln', 'log', 'log10', 'lower', 'ltrim', 'markup', 'mavg', 'max', 'mcount', 'median', 'min', 'minute', 'mmax', 'mmin', 'month', 'msum', 'notcontains', 'now', 'pi', 'power', 'quantile', 'quarter', 'radians', 'rank', 'rank_dense', 'rank_percentile', 'rank_unique', 'ravg', 'rcount', 'regexp_extract', 'regexp_extract_nth', 'regexp_match', 'regexp_replace', 'replace', 'right', 'rmax', 'rmin', 'round', 'rsum', 'rtrim', 'second', 'sign', 'sin', 'size', 'slice', 'space', 'split', 'sqrt', 'square', 'startswith', 'stdev', 'stdevp', 'str', 'substr', 'sum', 'sum_if', 'tan', 'today', 'tree', 'trim', 'unnest', 'upper', 'url', 'var', 'varp', 'week', 'year', 'zn'], 'source_avatars': {'max': 32, 'items': [{'id': '2dd0a121-9d90-4d8c-879e-7e0f53fcbd8f', 'schema_update_enabled': False}]}}}

/venv/lib/python3.10/site-packages/dl_api_client/dsmaker/api/dataset_api.py:234: AssertionError

Check failure on line 0 in dl_connector_bitrix_gds_tests.ext.api.test_dataset.TestBitrixDataset

See this annotation in the file changed.

@github-actions github-actions / Test Results

test_create_basic_dataset[pyloop] (dl_connector_bitrix_gds_tests.ext.api.test_dataset.TestBitrixDataset) with error

./report/pytest_reports_dl_connector_bitrix_gds_442724729/_src_lib_dl_connector_bitrix_gds_dl_connector_bitrix_gds_tests-ext-ad12e63037fc49018d8f609250f83756.xml [took 3s]
Raw output
failed on setup with "AssertionError: {'code': 'ERR.DS_API.VALIDATION.ERROR', 'dataset': {'result_schema_aux': {'inter_dependencies': {'deps': []}}, 'revision_id': None, 'avatar_relations': [], 'preview_enabled': True, 'rls': {}, 'component_errors': {'items': [{'id': 'c525d244-d0b1-4800-b3be-f7833d1ef816', 'type': 'data_source', 'errors': [{'message': 'Data source (table) identified by: `default..crm_deal` does not exist.', 'code': 'ERR.DS_API.DB.SOURCE_DOES_NOT_EXIST', 'level': 'error', 'details': {'db_message': ''}}]}]}, 'obligatory_filters': [], 'sources': [{'source_type': 'BITRIX_GDS', 'parameters': {'db_version': None, 'table_name': 'crm_deal', 'db_name': 'default'}, 'id': 'c525d244-d0b1-4800-b3be-f7833d1ef816', 'raw_schema': [], 'virtual': False, 'valid': False, 'managed_by': 'user', 'parameter_hash': '17a9a556ec604e48', 'index_info_set': None, 'title': 'crm_deal', 'connection_id': 'g4828tmbtory3'}], 'result_schema': [], 'source_avatars': [{'source_id': 'c525d244-d0b1-4800-b3be-f7833d1ef816', 'id': '6e3da750-98e2-4d74-a085-88cb8619d98f', 'virtual': False, 'valid': True, 'managed_by': 'user', 'title': 'avatar_1', 'is_root': True}], 'load_preview_by_default': True}, 'message': 'Validation finished with errors.', 'dataset_errors': [], 'options': {'schema_update_enabled': False, 'data_types': {'items': [{'casts': ['string', 'date', 'genericdatetime', 'boolean', 'integer', 'float', 'geopoint', 'geopolygon'], 'type': 'string', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['integer', 'float', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'integer', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['float', 'integer', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'float', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['date', 'genericdatetime', 'string', 'integer', 'float', 'boolean'], 'type': 'date', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['genericdatetime', 'datetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetime', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['boolean', 'integer', 'float', 'string'], 'type': 'boolean', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopoint', 'string'], 'type': 'geopoint', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopolygon', 'string'], 'type': 'geopolygon', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['uuid', 'string'], 'type': 'uuid', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['markup'], 'type': 'markup', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['datetimetz', 'genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetimetz', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['unsupported'], 'type': 'unsupported', 'aggregations': [], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['array_str', 'string'], 'type': 'array_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_int', 'string'], 'type': 'array_int', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_float', 'string'], 'type': 'array_float', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['tree_str'], 'type': 'tree_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'genericdatetime', 'aggregations': ['count', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}]}, 'join': {'types': ['inner', 'left', 'right', 'full'], 'operators': ['eq']}, 'connections': {'max': 1, 'items': [{'id': 'g4828tmbtory3', 'replacement_types': [{'conn_type': 'postgres'}]}], 'compatible_types': []}, 'fields': {'items': []}, 'preview': {'enabled': True}, 'sources': {'items': [{'id': 'c525d244-d0b1-4800-b3be-f7833d1ef816', 'schema_update_enabled': False}], 'compatible_types': [{'source_type': 'BITRIX_GDS'}]}, 'supports_offset': True, 'supported_functions': ['abs', 'acos', 'all_concat', 'any', 'arr_remove', 'arr_str', 'array', 'ascii', 'asin', 'atan', 'atan2', 'avg', 'avg_if', 'bold', 'bool', 'br', 'case', 'cast_arr_float', 'cast_arr_int', 'cast_arr_str', 'ceiling', 'char', 'color', 'concat', 'contains', 'contains_all', 'contains_any', 'cos', 'cot', 'count', 'count_if', 'count_item', 'countd', 'countd_if', 'date', 'dateadd', 'datepart', 'datetime', 'datetrunc', 'day', 'dayofweek', 'db_cast', 'degrees', 'div', 'div_safe', 'endswith', 'exp', 'fdiv_safe', 'find', 'first', 'float', 'floor', 'geopoint', 'geopolygon', 'get_item', 'greatest', 'hour', 'icontains', 'iendswith', 'if', 'ifnan', 'ifnull', 'iif', 'image', 'int', 'isnan', 'isnull', 'istartswith', 'italic', 'lag', 'last', 'least', 'left', 'len', 'ln', 'log', 'log10', 'lower', 'ltrim', 'markup', 'mavg', 'max', 'mcount', 'median', 'min', 'minute', 'mmax', 'mmin', 'month', 'msum', 'notcontains', 'now', 'pi', 'power', 'quantile', 'quarter', 'radians', 'rank', 'rank_dense', 'rank_percentile', 'rank_unique', 'ravg', 'rcount', 'regexp_extract', 'regexp_extract_nth', 'regexp_match', 'regexp_replace', 'replace', 'right', 'rmax', 'rmin', 'round', 'rsum', 'rtrim', 'second', 'sign', 'sin', 'size', 'slice', 'space', 'split', 'sqrt', 'square', 'startswith', 'stdev', 'stdevp', 'str', 'substr', 'sum', 'sum_if', 'tan', 'today', 'tree', 'trim', 'unnest', 'upper', 'url', 'var', 'varp', 'week', 'year', 'zn'], 'source_avatars': {'max': 32, 'items': [{'id': '6e3da750-98e2-4d74-a085-88cb8619d98f', 'schema_update_enabled': False}]}}}"
>       lambda: ihook(item=item, **kwds), when=when, reraise=reraise
    )

/venv/lib/python3.10/site-packages/flaky/flaky_pytest_plugin.py:146: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/venv/lib/python3.10/site-packages/pytest_lazyfixture.py:37: in fill
    item.funcargs[param] = request.getfixturevalue(param)
/venv/lib/python3.10/site-packages/dl_api_lib_testing/dataset_base.py:41: in saved_dataset
    ds = self.make_basic_dataset(
/venv/lib/python3.10/site-packages/dl_api_lib_testing/dataset_base.py:30: in make_basic_dataset
    ds = control_api.apply_updates(dataset=ds, fail_ok=False).dataset
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = SyncHttpDatasetApiV1(client=FlaskSyncApiClient(_int_wclient=<TestClient <Flask 'dl_api_lib.app.control_api.app'>>), headers={}, _created_dataset_id_list=[], serial_adapter=DatasetApiV1SerializationAdapter())
dataset = Dataset(id='5c21c1b7-1e9c-4500-af32-86216b6aa532', created_=False, name=None, revision_id=None, load_preview_by_defaul...sultSchemaAux(inter_dependencies={}), rls={}, component_errors=ComponentErrorRegistry(items=[]), obligatory_filters=[])
updates = [UpdateAction(action=<Action.add: 'add'>, item=DataSource(id='c525d244-d0b1-4800-b3be-f7833d1ef816', created_=False, c...', title='avatar_1', is_root=False, managed_by=<ManagedBy.user: 'user'>, valid=True), custom_data=None, order_index=0)]
fail_ok = False

    def apply_updates(  # type: ignore  # TODO: fix
        self,
        dataset: Dataset,
        updates: list[Union[UpdateAction, dict]] = None,  # type: ignore  # 2024-01-24 # TODO: Incompatible default for argument "updates" (default has type "None", argument has type "list[UpdateAction | dict[Any, Any]]")  [assignment]
        fail_ok: bool = False,
    ) -> HttpDatasetApiResponse:
        if dataset.created_:
            url = f"/api/v1/datasets/{dataset.id}/versions/draft/validators/schema"
        else:
            url = "/api/v1/datasets/validators/dataset"
    
        data = self.dump_dataset_to_request_body(dataset)
        updates = list(updates or ()) + self.serial_adapter.generate_implicit_updates(dataset)  # type: ignore  # 2024-01-24 # TODO: Unsupported operand types for + ("list[UpdateAction | dict[Any, Any]]" and "list[UpdateAction]")  [operator]
        data["updates"] = self.serial_adapter.dump_updates(updates)
        response = self._request(url, method="post", data=data)
    
        if fail_ok:
            # `fail_ok` should not mean `allow 5xx`
            assert response.status_code < 500, response.json
        else:
            try:
>               assert response.status_code == HTTPStatus.OK, response.json
E               AssertionError: {'code': 'ERR.DS_API.VALIDATION.ERROR', 'dataset': {'result_schema_aux': {'inter_dependencies': {'deps': []}}, 'revision_id': None, 'avatar_relations': [], 'preview_enabled': True, 'rls': {}, 'component_errors': {'items': [{'id': 'c525d244-d0b1-4800-b3be-f7833d1ef816', 'type': 'data_source', 'errors': [{'message': 'Data source (table) identified by: `default..crm_deal` does not exist.', 'code': 'ERR.DS_API.DB.SOURCE_DOES_NOT_EXIST', 'level': 'error', 'details': {'db_message': ''}}]}]}, 'obligatory_filters': [], 'sources': [{'source_type': 'BITRIX_GDS', 'parameters': {'db_version': None, 'table_name': 'crm_deal', 'db_name': 'default'}, 'id': 'c525d244-d0b1-4800-b3be-f7833d1ef816', 'raw_schema': [], 'virtual': False, 'valid': False, 'managed_by': 'user', 'parameter_hash': '17a9a556ec604e48', 'index_info_set': None, 'title': 'crm_deal', 'connection_id': 'g4828tmbtory3'}], 'result_schema': [], 'source_avatars': [{'source_id': 'c525d244-d0b1-4800-b3be-f7833d1ef816', 'id': '6e3da750-98e2-4d74-a085-88cb8619d98f', 'virtual': False, 'valid': True, 'managed_by': 'user', 'title': 'avatar_1', 'is_root': True}], 'load_preview_by_default': True}, 'message': 'Validation finished with errors.', 'dataset_errors': [], 'options': {'schema_update_enabled': False, 'data_types': {'items': [{'casts': ['string', 'date', 'genericdatetime', 'boolean', 'integer', 'float', 'geopoint', 'geopolygon'], 'type': 'string', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['integer', 'float', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'integer', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['float', 'integer', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'float', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['date', 'genericdatetime', 'string', 'integer', 'float', 'boolean'], 'type': 'date', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['genericdatetime', 'datetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetime', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['boolean', 'integer', 'float', 'string'], 'type': 'boolean', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopoint', 'string'], 'type': 'geopoint', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopolygon', 'string'], 'type': 'geopolygon', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['uuid', 'string'], 'type': 'uuid', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['markup'], 'type': 'markup', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['datetimetz', 'genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetimetz', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['unsupported'], 'type': 'unsupported', 'aggregations': [], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['array_str', 'string'], 'type': 'array_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_int', 'string'], 'type': 'array_int', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_float', 'string'], 'type': 'array_float', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['tree_str'], 'type': 'tree_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'genericdatetime', 'aggregations': ['count', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}]}, 'join': {'types': ['inner', 'left', 'right', 'full'], 'operators': ['eq']}, 'connections': {'max': 1, 'items': [{'id': 'g4828tmbtory3', 'replacement_types': [{'conn_type': 'postgres'}]}], 'compatible_types': []}, 'fields': {'items': []}, 'preview': {'enabled': True}, 'sources': {'items': [{'id': 'c525d244-d0b1-4800-b3be-f7833d1ef816', 'schema_update_enabled': False}], 'compatible_types': [{'source_type': 'BITRIX_GDS'}]}, 'supports_offset': True, 'supported_functions': ['abs', 'acos', 'all_concat', 'any', 'arr_remove', 'arr_str', 'array', 'ascii', 'asin', 'atan', 'atan2', 'avg', 'avg_if', 'bold', 'bool', 'br', 'case', 'cast_arr_float', 'cast_arr_int', 'cast_arr_str', 'ceiling', 'char', 'color', 'concat', 'contains', 'contains_all', 'contains_any', 'cos', 'cot', 'count', 'count_if', 'count_item', 'countd', 'countd_if', 'date', 'dateadd', 'datepart', 'datetime', 'datetrunc', 'day', 'dayofweek', 'db_cast', 'degrees', 'div', 'div_safe', 'endswith', 'exp', 'fdiv_safe', 'find', 'first', 'float', 'floor', 'geopoint', 'geopolygon', 'get_item', 'greatest', 'hour', 'icontains', 'iendswith', 'if', 'ifnan', 'ifnull', 'iif', 'image', 'int', 'isnan', 'isnull', 'istartswith', 'italic', 'lag', 'last', 'least', 'left', 'len', 'ln', 'log', 'log10', 'lower', 'ltrim', 'markup', 'mavg', 'max', 'mcount', 'median', 'min', 'minute', 'mmax', 'mmin', 'month', 'msum', 'notcontains', 'now', 'pi', 'power', 'quantile', 'quarter', 'radians', 'rank', 'rank_dense', 'rank_percentile', 'rank_unique', 'ravg', 'rcount', 'regexp_extract', 'regexp_extract_nth', 'regexp_match', 'regexp_replace', 'replace', 'right', 'rmax', 'rmin', 'round', 'rsum', 'rtrim', 'second', 'sign', 'sin', 'size', 'slice', 'space', 'split', 'sqrt', 'square', 'startswith', 'stdev', 'stdevp', 'str', 'substr', 'sum', 'sum_if', 'tan', 'today', 'tree', 'trim', 'unnest', 'upper', 'url', 'var', 'varp', 'week', 'year', 'zn'], 'source_avatars': {'max': 32, 'items': [{'id': '6e3da750-98e2-4d74-a085-88cb8619d98f', 'schema_update_enabled': False}]}}}

/venv/lib/python3.10/site-packages/dl_api_client/dsmaker/api/dataset_api.py:234: AssertionError

Check failure on line 0 in dl_connector_bitrix_gds_tests.ext.api.test_dataset.TestBitrixDataset

See this annotation in the file changed.

@github-actions github-actions / Test Results

test_remove_connection[pyloop] (dl_connector_bitrix_gds_tests.ext.api.test_dataset.TestBitrixDataset) with error

./report/pytest_reports_dl_connector_bitrix_gds_442724729/_src_lib_dl_connector_bitrix_gds_dl_connector_bitrix_gds_tests-ext-ad12e63037fc49018d8f609250f83756.xml [took 3s]
Raw output
failed on setup with "AssertionError: {'code': 'ERR.DS_API.VALIDATION.ERROR', 'dataset': {'result_schema_aux': {'inter_dependencies': {'deps': []}}, 'revision_id': None, 'avatar_relations': [], 'preview_enabled': True, 'rls': {}, 'component_errors': {'items': [{'id': '99a18155-5447-407f-b828-08fac397b6ae', 'type': 'data_source', 'errors': [{'message': 'Data source (table) identified by: `default..crm_deal` does not exist.', 'code': 'ERR.DS_API.DB.SOURCE_DOES_NOT_EXIST', 'level': 'error', 'details': {'db_message': ''}}]}]}, 'obligatory_filters': [], 'sources': [{'source_type': 'BITRIX_GDS', 'parameters': {'db_version': None, 'table_name': 'crm_deal', 'db_name': 'default'}, 'id': '99a18155-5447-407f-b828-08fac397b6ae', 'raw_schema': [], 'virtual': False, 'valid': False, 'managed_by': 'user', 'parameter_hash': 'c842f5083a71956e', 'index_info_set': None, 'title': 'crm_deal', 'connection_id': 'ay2w32ymfy9ex'}], 'result_schema': [], 'source_avatars': [{'source_id': '99a18155-5447-407f-b828-08fac397b6ae', 'id': '1b7b7b90-b178-424e-9d6f-43801340360c', 'virtual': False, 'valid': True, 'managed_by': 'user', 'title': 'avatar_1', 'is_root': True}], 'load_preview_by_default': True}, 'message': 'Validation finished with errors.', 'dataset_errors': [], 'options': {'schema_update_enabled': False, 'data_types': {'items': [{'casts': ['string', 'date', 'genericdatetime', 'boolean', 'integer', 'float', 'geopoint', 'geopolygon'], 'type': 'string', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['integer', 'float', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'integer', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['float', 'integer', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'float', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['date', 'genericdatetime', 'string', 'integer', 'float', 'boolean'], 'type': 'date', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['genericdatetime', 'datetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetime', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['boolean', 'integer', 'float', 'string'], 'type': 'boolean', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopoint', 'string'], 'type': 'geopoint', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopolygon', 'string'], 'type': 'geopolygon', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['uuid', 'string'], 'type': 'uuid', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['markup'], 'type': 'markup', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['datetimetz', 'genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetimetz', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['unsupported'], 'type': 'unsupported', 'aggregations': [], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['array_str', 'string'], 'type': 'array_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_int', 'string'], 'type': 'array_int', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_float', 'string'], 'type': 'array_float', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['tree_str'], 'type': 'tree_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'genericdatetime', 'aggregations': ['count', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}]}, 'join': {'types': ['inner', 'left', 'right', 'full'], 'operators': ['eq']}, 'connections': {'max': 1, 'items': [{'id': 'ay2w32ymfy9ex', 'replacement_types': [{'conn_type': 'postgres'}]}], 'compatible_types': []}, 'fields': {'items': []}, 'preview': {'enabled': True}, 'sources': {'items': [{'id': '99a18155-5447-407f-b828-08fac397b6ae', 'schema_update_enabled': False}], 'compatible_types': [{'source_type': 'BITRIX_GDS'}]}, 'supports_offset': True, 'supported_functions': ['abs', 'acos', 'all_concat', 'any', 'arr_remove', 'arr_str', 'array', 'ascii', 'asin', 'atan', 'atan2', 'avg', 'avg_if', 'bold', 'bool', 'br', 'case', 'cast_arr_float', 'cast_arr_int', 'cast_arr_str', 'ceiling', 'char', 'color', 'concat', 'contains', 'contains_all', 'contains_any', 'cos', 'cot', 'count', 'count_if', 'count_item', 'countd', 'countd_if', 'date', 'dateadd', 'datepart', 'datetime', 'datetrunc', 'day', 'dayofweek', 'db_cast', 'degrees', 'div', 'div_safe', 'endswith', 'exp', 'fdiv_safe', 'find', 'first', 'float', 'floor', 'geopoint', 'geopolygon', 'get_item', 'greatest', 'hour', 'icontains', 'iendswith', 'if', 'ifnan', 'ifnull', 'iif', 'image', 'int', 'isnan', 'isnull', 'istartswith', 'italic', 'lag', 'last', 'least', 'left', 'len', 'ln', 'log', 'log10', 'lower', 'ltrim', 'markup', 'mavg', 'max', 'mcount', 'median', 'min', 'minute', 'mmax', 'mmin', 'month', 'msum', 'notcontains', 'now', 'pi', 'power', 'quantile', 'quarter', 'radians', 'rank', 'rank_dense', 'rank_percentile', 'rank_unique', 'ravg', 'rcount', 'regexp_extract', 'regexp_extract_nth', 'regexp_match', 'regexp_replace', 'replace', 'right', 'rmax', 'rmin', 'round', 'rsum', 'rtrim', 'second', 'sign', 'sin', 'size', 'slice', 'space', 'split', 'sqrt', 'square', 'startswith', 'stdev', 'stdevp', 'str', 'substr', 'sum', 'sum_if', 'tan', 'today', 'tree', 'trim', 'unnest', 'upper', 'url', 'var', 'varp', 'week', 'year', 'zn'], 'source_avatars': {'max': 32, 'items': [{'id': '1b7b7b90-b178-424e-9d6f-43801340360c', 'schema_update_enabled': False}]}}}"
>       lambda: ihook(item=item, **kwds), when=when, reraise=reraise
    )

/venv/lib/python3.10/site-packages/flaky/flaky_pytest_plugin.py:146: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/venv/lib/python3.10/site-packages/pytest_lazyfixture.py:37: in fill
    item.funcargs[param] = request.getfixturevalue(param)
/venv/lib/python3.10/site-packages/dl_api_lib_testing/dataset_base.py:41: in saved_dataset
    ds = self.make_basic_dataset(
/venv/lib/python3.10/site-packages/dl_api_lib_testing/dataset_base.py:30: in make_basic_dataset
    ds = control_api.apply_updates(dataset=ds, fail_ok=False).dataset
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = SyncHttpDatasetApiV1(client=FlaskSyncApiClient(_int_wclient=<TestClient <Flask 'dl_api_lib.app.control_api.app'>>), headers={}, _created_dataset_id_list=[], serial_adapter=DatasetApiV1SerializationAdapter())
dataset = Dataset(id='dd71a746-0a02-48b0-962d-8e01a43738a3', created_=False, name=None, revision_id=None, load_preview_by_defaul...sultSchemaAux(inter_dependencies={}), rls={}, component_errors=ComponentErrorRegistry(items=[]), obligatory_filters=[])
updates = [UpdateAction(action=<Action.add: 'add'>, item=DataSource(id='99a18155-5447-407f-b828-08fac397b6ae', created_=False, c...', title='avatar_1', is_root=False, managed_by=<ManagedBy.user: 'user'>, valid=True), custom_data=None, order_index=0)]
fail_ok = False

    def apply_updates(  # type: ignore  # TODO: fix
        self,
        dataset: Dataset,
        updates: list[Union[UpdateAction, dict]] = None,  # type: ignore  # 2024-01-24 # TODO: Incompatible default for argument "updates" (default has type "None", argument has type "list[UpdateAction | dict[Any, Any]]")  [assignment]
        fail_ok: bool = False,
    ) -> HttpDatasetApiResponse:
        if dataset.created_:
            url = f"/api/v1/datasets/{dataset.id}/versions/draft/validators/schema"
        else:
            url = "/api/v1/datasets/validators/dataset"
    
        data = self.dump_dataset_to_request_body(dataset)
        updates = list(updates or ()) + self.serial_adapter.generate_implicit_updates(dataset)  # type: ignore  # 2024-01-24 # TODO: Unsupported operand types for + ("list[UpdateAction | dict[Any, Any]]" and "list[UpdateAction]")  [operator]
        data["updates"] = self.serial_adapter.dump_updates(updates)
        response = self._request(url, method="post", data=data)
    
        if fail_ok:
            # `fail_ok` should not mean `allow 5xx`
            assert response.status_code < 500, response.json
        else:
            try:
>               assert response.status_code == HTTPStatus.OK, response.json
E               AssertionError: {'code': 'ERR.DS_API.VALIDATION.ERROR', 'dataset': {'result_schema_aux': {'inter_dependencies': {'deps': []}}, 'revision_id': None, 'avatar_relations': [], 'preview_enabled': True, 'rls': {}, 'component_errors': {'items': [{'id': '99a18155-5447-407f-b828-08fac397b6ae', 'type': 'data_source', 'errors': [{'message': 'Data source (table) identified by: `default..crm_deal` does not exist.', 'code': 'ERR.DS_API.DB.SOURCE_DOES_NOT_EXIST', 'level': 'error', 'details': {'db_message': ''}}]}]}, 'obligatory_filters': [], 'sources': [{'source_type': 'BITRIX_GDS', 'parameters': {'db_version': None, 'table_name': 'crm_deal', 'db_name': 'default'}, 'id': '99a18155-5447-407f-b828-08fac397b6ae', 'raw_schema': [], 'virtual': False, 'valid': False, 'managed_by': 'user', 'parameter_hash': 'c842f5083a71956e', 'index_info_set': None, 'title': 'crm_deal', 'connection_id': 'ay2w32ymfy9ex'}], 'result_schema': [], 'source_avatars': [{'source_id': '99a18155-5447-407f-b828-08fac397b6ae', 'id': '1b7b7b90-b178-424e-9d6f-43801340360c', 'virtual': False, 'valid': True, 'managed_by': 'user', 'title': 'avatar_1', 'is_root': True}], 'load_preview_by_default': True}, 'message': 'Validation finished with errors.', 'dataset_errors': [], 'options': {'schema_update_enabled': False, 'data_types': {'items': [{'casts': ['string', 'date', 'genericdatetime', 'boolean', 'integer', 'float', 'geopoint', 'geopolygon'], 'type': 'string', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['integer', 'float', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'integer', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['float', 'integer', 'string', 'boolean', 'date', 'genericdatetime'], 'type': 'float', 'aggregations': ['count', 'sum', 'avg', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['date', 'genericdatetime', 'string', 'integer', 'float', 'boolean'], 'type': 'date', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['genericdatetime', 'datetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetime', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['boolean', 'integer', 'float', 'string'], 'type': 'boolean', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopoint', 'string'], 'type': 'geopoint', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['geopolygon', 'string'], 'type': 'geopolygon', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'IN', 'NIN']}, {'casts': ['uuid', 'string'], 'type': 'uuid', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'STARTSWITH', 'ISTARTSWITH', 'ENDSWITH', 'IENDSWITH', 'CONTAINS', 'ICONTAINS', 'NOTCONTAINS', 'NOTICONTAINS', 'NOTICONTAINS', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['markup'], 'type': 'markup', 'aggregations': ['count'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['datetimetz', 'genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'datetimetz', 'aggregations': ['count', 'min', 'max', 'countunique', 'avg'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}, {'casts': ['unsupported'], 'type': 'unsupported', 'aggregations': [], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL']}, {'casts': ['array_str', 'string'], 'type': 'array_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_int', 'string'], 'type': 'array_int', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['array_float', 'string'], 'type': 'array_float', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['tree_str'], 'type': 'tree_str', 'aggregations': ['count', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'STARTSWITH', 'CONTAINS', 'NOTCONTAINS', 'LENEQ', 'LENEQ', 'LENNE', 'LENNE', 'LENGT', 'LENGT', 'LENGTE', 'LENGTE', 'LENLT', 'LENLT', 'LENLTE', 'LENLTE']}, {'casts': ['genericdatetime', 'date', 'string', 'integer', 'float', 'boolean'], 'type': 'genericdatetime', 'aggregations': ['count', 'min', 'max', 'countunique'], 'filter_operations': ['ISNULL', 'ISNOTNULL', 'ISNOTNULL', 'EQ', 'NE', 'GT', 'GTE', 'LT', 'LTE', 'IN', 'NIN', 'BETWEEN']}]}, 'join': {'types': ['inner', 'left', 'right', 'full'], 'operators': ['eq']}, 'connections': {'max': 1, 'items': [{'id': 'ay2w32ymfy9ex', 'replacement_types': [{'conn_type': 'postgres'}]}], 'compatible_types': []}, 'fields': {'items': []}, 'preview': {'enabled': True}, 'sources': {'items': [{'id': '99a18155-5447-407f-b828-08fac397b6ae', 'schema_update_enabled': False}], 'compatible_types': [{'source_type': 'BITRIX_GDS'}]}, 'supports_offset': True, 'supported_functions': ['abs', 'acos', 'all_concat', 'any', 'arr_remove', 'arr_str', 'array', 'ascii', 'asin', 'atan', 'atan2', 'avg', 'avg_if', 'bold', 'bool', 'br', 'case', 'cast_arr_float', 'cast_arr_int', 'cast_arr_str', 'ceiling', 'char', 'color', 'concat', 'contains', 'contains_all', 'contains_any', 'cos', 'cot', 'count', 'count_if', 'count_item', 'countd', 'countd_if', 'date', 'dateadd', 'datepart', 'datetime', 'datetrunc', 'day', 'dayofweek', 'db_cast', 'degrees', 'div', 'div_safe', 'endswith', 'exp', 'fdiv_safe', 'find', 'first', 'float', 'floor', 'geopoint', 'geopolygon', 'get_item', 'greatest', 'hour', 'icontains', 'iendswith', 'if', 'ifnan', 'ifnull', 'iif', 'image', 'int', 'isnan', 'isnull', 'istartswith', 'italic', 'lag', 'last', 'least', 'left', 'len', 'ln', 'log', 'log10', 'lower', 'ltrim', 'markup', 'mavg', 'max', 'mcount', 'median', 'min', 'minute', 'mmax', 'mmin', 'month', 'msum', 'notcontains', 'now', 'pi', 'power', 'quantile', 'quarter', 'radians', 'rank', 'rank_dense', 'rank_percentile', 'rank_unique', 'ravg', 'rcount', 'regexp_extract', 'regexp_extract_nth', 'regexp_match', 'regexp_replace', 'replace', 'right', 'rmax', 'rmin', 'round', 'rsum', 'rtrim', 'second', 'sign', 'sin', 'size', 'slice', 'space', 'split', 'sqrt', 'square', 'startswith', 'stdev', 'stdevp', 'str', 'substr', 'sum', 'sum_if', 'tan', 'today', 'tree', 'trim', 'unnest', 'upper', 'url', 'var', 'varp', 'week', 'year', 'zn'], 'source_avatars': {'max': 32, 'items': [{'id': '1b7b7b90-b178-424e-9d6f-43801340360c', 'schema_update_enabled': False}]}}}

/venv/lib/python3.10/site-packages/dl_api_client/dsmaker/api/dataset_api.py:234: AssertionError

Check failure on line 0 in dl_connector_bitrix_gds_tests.ext.api.test_sources.TestBitrixSources

See this annotation in the file changed.

@github-actions github-actions / Test Results

test_sources (dl_connector_bitrix_gds_tests.ext.api.test_sources.TestBitrixSources) failed

./report/pytest_reports_dl_connector_bitrix_gds_442724729/_src_lib_dl_connector_bitrix_gds_dl_connector_bitrix_gds_tests-ext-ad12e63037fc49018d8f609250f83756.xml [took 3s]
Raw output
assert 0 > 1
self = <dl_connector_bitrix_gds_tests.ext.api.test_sources.TestBitrixSources object at 0x7fcfe4108400>
control_api_sync_client = FlaskSyncApiClient(_int_wclient=<TestClient <Flask 'dl_api_lib.app.control_api.app'>>)
control_api = SyncHttpDatasetApiV1(client=FlaskSyncApiClient(_int_wclient=<TestClient <Flask 'dl_api_lib.app.control_api.app'>>), headers={}, _created_dataset_id_list=[], serial_adapter=DatasetApiV1SerializationAdapter())
saved_connection_id = '0osmu4d8vjain'
data_api = SyncHttpDataApiV2(client=WrappedAioSyncApiClient(_int_wrapped_client=TestClientConverterAiohttpToFlask(_loop=<_UnixSel...t at 0x7fcfe2d4d780>, _extra_headers=None, _cookies=None)), headers={}, serial_adapter=DataApiV2SerializationAdapter())

    def test_sources(
        self,
        control_api_sync_client: SyncHttpClientBase,
        control_api: SyncHttpDatasetApiV1,
        saved_connection_id: str,
        data_api: SyncHttpDataApiV2,
    ):
        conn_id = saved_connection_id
    
        sources_resp = control_api_sync_client.get(f"/api/v1/connections/{conn_id}/info/sources")
        assert sources_resp.status_code == 200, sources_resp.json
    
        sources_checked = 0
        for source in sources_resp.json["sources"]:
            if not self.do_check_source(source):
                continue
    
            dataset_params = dict(
                source_type=SOURCE_TYPE_BITRIX_GDS.name,
                title=source["title"],
                parameters=dict(
                    db_name=DB_NAME,
                    table_name=source["title"],
                ),
            )
            ds = self.make_basic_dataset(
                control_api=control_api,
                connection_id=saved_connection_id,
                dataset_params=dataset_params,
            )
            preview_resp = data_api.get_preview(dataset=ds)
            assert preview_resp.status_code == 200, preview_resp.response_errors
    
            sources_checked += 1
    
>       assert sources_checked > 1
E       assert 0 > 1

ext/api/test_sources.py:58: AssertionError

Check failure on line 0 in dl_connector_metrica_tests.ext.api.test_data.TestMetricaDataResult

See this annotation in the file changed.

@github-actions github-actions / Test Results

test_get_result_with_formula_in_where (dl_connector_metrica_tests.ext.api.test_data.TestMetricaDataResult) failed

./report/pytest_reports_dl_connector_metrica_48171096/_src_lib_dl_connector_metrica_dl_connector_metrica_tests-ext-b4e4a1461a174f24bec5ea167268aa5c.xml [took 5s]
Raw output
AssertionError
self = <dl_connector_metrica_tests.ext.api.test_data.TestMetricaDataResult object at 0x7f1f544c1150>
saved_dataset = Dataset(id='uimfdngvyw86h', created_=True, name='My Dataset c613b411-17d2-4b0c-b450-403a855c2591', revision_id=None, l..._mesyatsa_na_kompyutere_posetitel_imkw': ''}, component_errors=ComponentErrorRegistry(items=[]), obligatory_filters=[])
data_api_test_params = DataApiTestParams(two_dims=('Домен страницы', 'Просмотров в минуту'), summable_field='Просмотров в минуту', range_field='Дата и время просмотра', distinct_field='Адрес страницы', date_field='Дата просмотра')
data_api = SyncHttpDataApiV2(client=WrappedAioSyncApiClient(_int_wrapped_client=TestClientConverterAiohttpToFlask(_loop=<_UnixSel...t at 0x7f1f53592b90>, _extra_headers=None, _cookies=None)), headers={}, serial_adapter=DataApiV2SerializationAdapter())

    def test_get_result_with_formula_in_where(
        self, saved_dataset: Dataset, data_api_test_params: DataApiTestParams, data_api: SyncHttpDataApiV2
    ) -> None:
        ds = saved_dataset
        ds.result_schema["Summable Percentage"] = ds.field(formula=f"[{data_api_test_params.summable_field}] * 100")
    
        result_resp = data_api.get_result(
            dataset=ds,
            fields=[
                ds.find_field(title="Summable Percentage"),
            ],
            filters=[
                ds.find_field(title="Summable Percentage").filter(WhereClauseOperation.GT, [30]),
            ],
            fail_ok=True,
        )
        assert result_resp.status_code == 200, result_resp.json
        data_rows = get_data_rows(result_resp)
>       assert data_rows
E       AssertionError

/venv/lib/python3.10/site-packages/dl_api_lib_testing/connector/data_api_suites.py:299: AssertionError