>>> py3-django-ninja: Building community/py3-django-ninja 1.4.5-r0 (using abuild 3.16.0_rc4-r0) started Sat, 08 Nov 2025 01:54:31 +0000
>>> py3-django-ninja: Validating /home/buildozer/aports/community/py3-django-ninja/APKBUILD...
>>> py3-django-ninja: Analyzing dependencies...
>>> py3-django-ninja: Installing for build: build-base py3-django py3-pydantic py3-setuptools py3-gpep517 py3-wheel py3-flit-core py3-pytest py3-pytest-cov py3-pytest-django py3-pytest-asyncio py3-psycopg2
( 1/64) Installing libbz2 (1.0.8-r6)
( 2/64) Installing libffi (3.5.2-r0)
( 3/64) Installing gdbm (1.26-r0)
( 4/64) Installing xz-libs (5.8.1-r0)
( 5/64) Installing mpdecimal (4.0.1-r0)
( 6/64) Installing libpanelw (6.5_p20251010-r0)
( 7/64) Installing sqlite-libs (3.51.0-r0)
( 8/64) Installing python3 (3.12.12-r0)
( 9/64) Installing python3-pycache-pyc0 (3.12.12-r0)
(10/64) Installing pyc (3.12.12-r0)
(11/64) Installing py3-asgiref (3.9.1-r0)
(12/64) Installing py3-asgiref-pyc (3.9.1-r0)
(13/64) Installing py3-sqlparse (0.5.3-r0)
(14/64) Installing py3-sqlparse-pyc (0.5.3-r0)
(15/64) Installing tzdata (2025b-r0)
(16/64) Installing py3-django-pyc (4.2.25-r0)
(17/64) Installing python3-pyc (3.12.12-r0)
(18/64) Installing py3-django (4.2.25-r0)
(19/64) Installing py3-annotated-types (0.7.0-r0)
(20/64) Installing py3-annotated-types-pyc (0.7.0-r0)
(21/64) Installing py3-typing-extensions (4.15.0-r0)
(22/64) Installing py3-typing-extensions-pyc (4.15.0-r0)
(23/64) Installing py3-pydantic-core (2.41.4-r0)
(24/64) Installing py3-pydantic-core-pyc (2.41.4-r0)
(25/64) Installing py3-typing-inspection (0.4.2-r0)
(26/64) Installing py3-typing-inspection-pyc (0.4.2-r0)
(27/64) Installing py3-pydantic (2.12.3-r0)
(28/64) Installing py3-pydantic-pyc (2.12.3-r0)
(29/64) Installing py3-parsing (3.2.3-r0)
(30/64) Installing py3-parsing-pyc (3.2.3-r0)
(31/64) Installing py3-packaging (25.0-r0)
(32/64) Installing py3-packaging-pyc (25.0-r0)
(33/64) Installing py3-setuptools (80.9.0-r2)
(34/64) Installing py3-setuptools-pyc (80.9.0-r2)
(35/64) Installing py3-installer (0.7.0-r2)
(36/64) Installing py3-installer-pyc (0.7.0-r2)
(37/64) Installing py3-gpep517 (19-r1)
(38/64) Installing py3-gpep517-pyc (19-r1)
(39/64) Installing py3-wheel (0.46.1-r0)
(40/64) Installing py3-wheel-pyc (0.46.1-r0)
(41/64) Installing py3-flit-core (3.12.0-r0)
(42/64) Installing py3-flit-core-pyc (3.12.0-r0)
(43/64) Installing py3-iniconfig (2.3.0-r0)
(44/64) Installing py3-iniconfig-pyc (2.3.0-r0)
(45/64) Installing py3-pluggy (1.6.0-r0)
(46/64) Installing py3-pluggy-pyc (1.6.0-r0)
(47/64) Installing py3-py (1.11.0-r4)
(48/64) Installing py3-py-pyc (1.11.0-r4)
(49/64) Installing py3-pygments (2.19.2-r0)
(50/64) Installing py3-pygments-pyc (2.19.2-r0)
(51/64) Installing py3-pytest (8.4.2-r1)
(52/64) Installing py3-pytest-pyc (8.4.2-r1)
(53/64) Installing py3-coverage (7.11.0-r0)
(54/64) Installing py3-coverage-pyc (7.11.0-r0)
(55/64) Installing py3-pytest-cov (5.0.0-r1)
(56/64) Installing py3-pytest-cov-pyc (5.0.0-r1)
(57/64) Installing py3-pytest-django (4.11.1-r0)
(58/64) Installing py3-pytest-django-pyc (4.11.1-r0)
(59/64) Installing py3-pytest-asyncio (0.25.0-r1)
(60/64) Installing py3-pytest-asyncio-pyc (0.25.0-r1)
(61/64) Installing libpq (17.6-r0)
(62/64) Installing py3-psycopg2 (2.9.11-r0)
(63/64) Installing py3-psycopg2-pyc (2.9.11-r0)
(64/64) Installing .makedepends-py3-django-ninja (20251108.015433)
busybox-1.37.0-r24.trigger: Executing script...
OK: 531 MiB in 173 packages
>>> py3-django-ninja: Cleaning up srcdir
>>> py3-django-ninja: Cleaning up pkgdir
>>> py3-django-ninja: Cleaning up tmpdir
>>> py3-django-ninja: Fetching https://distfiles.alpinelinux.org/distfiles/edge/py3-django-ninja-1.4.5.tar.gz
Connecting to distfiles.alpinelinux.org (172.105.82.32:443)
wget: server returned error: HTTP/1.1 404 Not Found
>>> py3-django-ninja: Fetching py3-django-ninja-1.4.5.tar.gz::https://github.com/vitalik/django-ninja/archive/refs/tags/v1.4.5.tar.gz
/var/cache/distfiles/edge/py3-django-ninja-1.4.5.tar.gz: OK
>>> py3-django-ninja: Fetching https://distfiles.alpinelinux.org/distfiles/edge/py3-django-ninja-1.4.5.tar.gz
/var/cache/distfiles/edge/py3-django-ninja-1.4.5.tar.gz: OK
>>> py3-django-ninja: Unpacking /var/cache/distfiles/edge/py3-django-ninja-1.4.5.tar.gz...
2025-11-08 01:54:35,308 gpep517 INFO Building wheel via backend flit_core.buildapi
2025-11-08 01:54:35,318 flit_core.wheel INFO Zip timestamps will be from SOURCE_DATE_EPOCH: 2025-11-08 01:48:45+00:00
2025-11-08 01:54:35,318 flit_core.wheel INFO Copying package file(s) from ninja
2025-11-08 01:54:35,346 flit_core.wheel INFO Writing metadata files
2025-11-08 01:54:35,347 flit_core.wheel INFO Writing the record of files
2025-11-08 01:54:35,347 flit_core.wheel INFO Built wheel: .dist/django_ninja-1.4.5-py3-none-any.whl
2025-11-08 01:54:35,347 gpep517 INFO The backend produced .dist/django_ninja-1.4.5-py3-none-any.whl
django_ninja-1.4.5-py3-none-any.whl
>>> py3-django-ninja: Running tests
============================= test session starts ==============================
platform linux -- Python 3.12.12, pytest-8.4.2, pluggy-1.6.0 -- /home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/.testenv/bin/python3
cachedir: .pytest_cache
django: version: 4.2.25
rootdir: /home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5
configfile: pyproject.toml
plugins: django-4.11.1, cov-5.0.0, asyncio-0.25.0
asyncio: mode=Mode.STRICT, asyncio_default_fixture_loop_scope=None
collecting ... collected 616 items
tests/test_django_models.py::test_with_client PASSED [ 0%]
tests/test_docs/test_auth.py::test_examples PASSED [ 0%]
tests/test_orm_schemas.py::test_with_relations PASSED [ 0%]
tests/test_pagination_async.py::test_test_async_pagination SKIPPED (...) [ 0%]
tests/test_alias.py::test_alias PASSED [ 0%]
tests/test_annotated.py::test_multi_op PASSED [ 0%]
tests/test_annotated.py::test_query_list PASSED [ 1%]
tests/test_annotated.py::test_body_op PASSED [ 1%]
tests/test_annotated.py::test_headers PASSED [ 1%]
tests/test_annotated.py::test_openapi_schema PASSED [ 1%]
tests/test_api_instance.py::test_api_instance PASSED [ 1%]
tests/test_api_instance.py::test_reuse_router_error PASSED [ 1%]
tests/test_app.py::test_method[get-/-200-/-False] PASSED [ 2%]
tests/test_app.py::test_method[get-/get-200-this is GET-False] PASSED [ 2%]
tests/test_app.py::test_method[post-/post-200-this is POST-False] PASSED [ 2%]
tests/test_app.py::test_method[put-/put-200-this is PUT-False] PASSED [ 2%]
tests/test_app.py::test_method[patch-/patch-200-this is PATCH-False] PASSED [ 2%]
tests/test_app.py::test_method[delete-/delete-200-this is DELETE-False] PASSED [ 2%]
tests/test_app.py::test_method[get-/multi-200-this is GET-False] PASSED [ 3%]
tests/test_app.py::test_method[post-/multi-200-this is POST-False] PASSED [ 3%]
tests/test_app.py::test_method[patch-/multi-405-Method not allowed-False] PASSED [ 3%]
tests/test_app.py::test_method[get-/html-200-html-False] PASSED [ 3%]
tests/test_app.py::test_method[get-/file-200-this is a file-True] PASSED [ 3%]
tests/test_app.py::test_validates PASSED [ 3%]
tests/test_async.py::test_asyncio_operations PASSED [ 4%]
tests/test_auth.py::test_auth[/django_auth-kwargs0-401-expected_body0] PASSED [ 4%]
tests/test_auth.py::test_auth[/django_auth-kwargs1-200-expected_body1] PASSED [ 4%]
tests/test_auth.py::test_auth[/django_auth_superuser-kwargs2-401-expected_body2] PASSED [ 4%]
tests/test_auth.py::test_auth[/django_auth_superuser-kwargs3-401-expected_body3] PASSED [ 4%]
tests/test_auth.py::test_auth[/django_auth_superuser-kwargs4-200-expected_body4] PASSED [ 4%]
tests/test_auth.py::test_auth[/django_auth_is_staff-kwargs5-401-expected_body5] PASSED [ 5%]
tests/test_auth.py::test_auth[/django_auth_is_staff-kwargs6-401-expected_body6] PASSED [ 5%]
tests/test_auth.py::test_auth[/django_auth_is_staff-kwargs7-200-expected_body7] PASSED [ 5%]
tests/test_auth.py::test_auth[/django_auth_is_staff-kwargs8-200-expected_body8] PASSED [ 5%]
tests/test_auth.py::test_auth[/callable-kwargs9-401-expected_body9] PASSED [ 5%]
tests/test_auth.py::test_auth[/callable?auth=demo-kwargs10-200-expected_body10] PASSED [ 5%]
tests/test_auth.py::test_auth[/apikeyquery-kwargs11-401-expected_body11] PASSED [ 6%]
tests/test_auth.py::test_auth[/apikeyquery?key=keyquerysecret-kwargs12-200-expected_body12] PASSED [ 6%]
tests/test_auth.py::test_auth[/apikeyheader-kwargs13-401-expected_body13] PASSED [ 6%]
tests/test_auth.py::test_auth[/apikeyheader-kwargs14-200-expected_body14] PASSED [ 6%]
tests/test_auth.py::test_auth[/apikeycookie-kwargs15-401-expected_body15] PASSED [ 6%]
tests/test_auth.py::test_auth[/apikeycookie-kwargs16-200-expected_body16] PASSED [ 6%]
tests/test_auth.py::test_auth[/basic-kwargs17-401-expected_body17] PASSED [ 6%]
tests/test_auth.py::test_auth[/basic-kwargs18-200-expected_body18] PASSED [ 7%]
tests/test_auth.py::test_auth[/basic-kwargs19-200-expected_body19] PASSED [ 7%]
tests/test_auth.py::test_auth[/basic-kwargs20-401-expected_body20] PASSED [ 7%]
tests/test_auth.py::test_auth[/basic-kwargs21-401-expected_body21] PASSED [ 7%]
tests/test_auth.py::test_auth[/bearer-kwargs22-401-expected_body22] PASSED [ 7%]
tests/test_auth.py::test_auth[/bearer-kwargs23-200-expected_body23] PASSED [ 7%]
tests/test_auth.py::test_auth[/bearer-kwargs24-401-expected_body24] PASSED [ 8%]
tests/test_auth.py::test_auth[/bearer-kwargs25-401-expected_body25] PASSED [ 8%]
tests/test_auth.py::test_auth[/async_bearer-kwargs26-401-expected_body26] PASSED [ 8%]
tests/test_auth.py::test_auth[/async_bearer-kwargs27-401-expected_body27] PASSED [ 8%]
tests/test_auth.py::test_auth[/bearer-kwargs28-403-expected_body28] PASSED [ 8%]
tests/test_auth.py::test_auth[/customexception-kwargs29-401-expected_body29] PASSED [ 8%]
tests/test_auth.py::test_auth[/customexception-kwargs30-200-expected_body30] PASSED [ 9%]
tests/test_auth.py::test_schema PASSED [ 9%]
tests/test_auth.py::test_invalid_setup PASSED [ 9%]
tests/test_auth_async.py::test_async_view_handles_async_auth_func PASSED [ 9%]
tests/test_auth_async.py::test_async_view_handles_async_auth_cls PASSED [ 9%]
tests/test_auth_async.py::test_async_view_handles_multi_auth PASSED [ 9%]
tests/test_auth_async.py::test_async_view_handles_auth_errors PASSED [ 10%]
tests/test_auth_async.py::test_sync_authenticate_method PASSED [ 10%]
tests/test_auth_async.py::test_async_authenticate_method_in_sync_context PASSED [ 10%]
tests/test_auth_async.py::test_async_with_bearer PASSED [ 10%]
tests/test_auth_global.py::test_multi PASSED [ 10%]
tests/test_auth_global.py::test_router_auth PASSED [ 10%]
tests/test_auth_global.py::test_router_no_auth PASSED [ 11%]
tests/test_auth_inheritance_routers.py::test_router_inheritance_auth[/r1/-401] PASSED [ 11%]
tests/test_auth_inheritance_routers.py::test_router_inheritance_auth[/r1/r2/-401] PASSED [ 11%]
tests/test_auth_inheritance_routers.py::test_router_inheritance_auth[/r1/r2/r3/-401] PASSED [ 11%]
tests/test_auth_inheritance_routers.py::test_router_inheritance_auth[/r1/r2/r3/r4/-401] PASSED [ 11%]
tests/test_auth_inheritance_routers.py::test_router_inheritance_auth[/r1/r2/r3/op5-401] PASSED [ 11%]
tests/test_auth_inheritance_routers.py::test_router_inheritance_auth[/r1/?key=r1_auth-200] PASSED [ 12%]
tests/test_auth_inheritance_routers.py::test_router_inheritance_auth[/r1/r2/?key=r1_auth-200] PASSED [ 12%]
tests/test_auth_inheritance_routers.py::test_router_inheritance_auth[/r1/r2/r3/?key=r1_auth-200] PASSED [ 12%]
tests/test_auth_inheritance_routers.py::test_router_inheritance_auth[/r1/r2/r3/r4/?key=r4_auth-200] PASSED [ 12%]
tests/test_auth_inheritance_routers.py::test_router_inheritance_auth[/r1/r2/r3/op5?key=op5_auth-200] PASSED [ 12%]
tests/test_auth_inheritance_routers.py::test_router_inheritance_auth[/r1/r2/r3/r4/?key=r1_auth-401] PASSED [ 12%]
tests/test_auth_inheritance_routers.py::test_router_inheritance_auth[/r1/r2/r3/op5?key=r1_auth-401] PASSED [ 12%]
tests/test_auth_inheritance_routers.py::test_router_inheritance_auth[/r1/r2/o3/-200] PASSED [ 13%]
tests/test_auth_inheritance_routers.py::test_router_inheritance_auth[/r1/r2/o3/o4/-200] PASSED [ 13%]
tests/test_auth_routers.py::test_router_auth[/r1/test-401] PASSED [ 13%]
tests/test_auth_routers.py::test_router_auth[/r2/test-401] PASSED [ 13%]
tests/test_auth_routers.py::test_router_auth[/r1/test?key=one-200] PASSED [ 13%]
tests/test_auth_routers.py::test_router_auth[/r2/test?key=two-200] PASSED [ 13%]
tests/test_auth_routers.py::test_router_auth[/r1/test?key=two-401] PASSED [ 14%]
tests/test_auth_routers.py::test_router_auth[/r2/test?key=one-401] PASSED [ 14%]
tests/test_auth_routers.py::test_router_auth[/r2/child/test-401] PASSED [ 14%]
tests/test_auth_routers.py::test_router_auth[/r2/child/test?key=two-child-200] PASSED [ 14%]
tests/test_body.py::test_body PASSED [ 14%]
tests/test_body.py::test_body_form PASSED [ 14%]
tests/test_body.py::test_body_validation_error PASSED [ 15%]
tests/test_body.py::test_incorrect_annotation PASSED [ 15%]
tests/test_body.py::test_body_custom_validation_error PASSED [ 15%]
tests/test_conf.py::test_default_configuration PASSED [ 15%]
tests/test_csrf.py::test_csrf_off PASSED [ 15%]
tests/test_csrf.py::test_csrf_on PASSED [ 15%]
tests/test_csrf.py::test_csrf_cookie_auth PASSED [ 16%]
tests/test_csrf.py::test_csrf_cookies_can_be_obtained PASSED [ 16%]
tests/test_csrf.py::test_docs PASSED [ 16%]
tests/test_csrf.py::test_docs_cookie_auth PASSED [ 16%]
tests/test_csrf_async.py::test_csrf_off PASSED [ 16%]
tests/test_csrf_async.py::test_csrf_on PASSED [ 16%]
tests/test_decorators.py::test_decorator_before PASSED [ 17%]
tests/test_decorators.py::test_decorator_after PASSED [ 17%]
tests/test_decorators.py::test_decorator_multiple PASSED [ 17%]
tests/test_discriminator.py::test_schema PASSED [ 17%]
tests/test_discriminator.py::test_annotated_union_with_discriminator PASSED [ 17%]
tests/test_discriminator.py::test_regular_union PASSED [ 17%]
tests/test_django_models.py::test_reverse PASSED [ 18%]
tests/test_django_models.py::test_reverse_implicit PASSED [ 18%]
tests/test_docs/test_auth.py::test_intro PASSED [ 18%]
tests/test_docs/test_auth.py::test_global PASSED [ 18%]
tests/test_docs/test_body.py::test_examples PASSED [ 18%]
tests/test_docs/test_form.py::test_examples PASSED [ 18%]
tests/test_docs/test_form.py::test_examples_extra PASSED [ 18%]
tests/test_docs/test_index.py::test_api PASSED [ 19%]
tests/test_docs/test_path.py::test_examples PASSED [ 19%]
tests/test_docs/test_query.py::test_examples PASSED [ 19%]
tests/test_enum.py::test_enums PASSED [ 19%]
tests/test_enum.py::test_schema PASSED [ 19%]
tests/test_enum.py::test_optional_get_schema PASSED [ 19%]
tests/test_errors.py::test_validation_error_is_picklable_and_unpicklable PASSED [ 20%]
tests/test_errors.py::test_http_error_is_picklable_and_unpicklable PASSED [ 20%]
tests/test_exceptions.py::test_default_handler PASSED [ 20%]
tests/test_exceptions.py::test_exceptions[/error/404-404-json0] PASSED [ 20%]
tests/test_exceptions.py::test_exceptions[/error/custom-422-json1] PASSED [ 20%]
tests/test_exceptions.py::test_asyncio_exceptions PASSED [ 20%]
tests/test_exceptions.py::test_no_handlers PASSED [ 21%]
tests/test_export_openapi_schema.py::test_export_default PASSED [ 21%]
tests/test_export_openapi_schema.py::test_export_indent PASSED [ 21%]
tests/test_export_openapi_schema.py::test_export_to_file PASSED [ 21%]
tests/test_export_openapi_schema.py::test_export_custom PASSED [ 21%]
tests/test_export_openapi_schema.py::test_export_default_without_api_endpoint PASSED [ 21%]
tests/test_files.py::test_files PASSED [ 22%]
tests/test_files.py::test_schema PASSED [ 22%]
tests/test_files.py::test_invalid_file PASSED [ 22%]
tests/test_files.py::test_files_fix_middleware PASSED [ 22%]
tests/test_filter_schema.py::test_simple_config PASSED [ 22%]
tests/test_filter_schema.py::test_improperly_configured PASSED [ 22%]
tests/test_filter_schema.py::test_empty_q_when_none_ignored PASSED [ 23%]
tests/test_filter_schema.py::test_q_expressions2[False] PASSED [ 23%]
tests/test_filter_schema.py::test_q_expressions2[True] PASSED [ 23%]
tests/test_filter_schema.py::test_q_expressions3 PASSED [ 23%]
tests/test_filter_schema.py::test_q_is_a_list[False] PASSED [ 23%]
tests/test_filter_schema.py::test_q_is_a_list[True] PASSED [ 23%]
tests/test_filter_schema.py::test_field_level_expression_connector PASSED [ 24%]
tests/test_filter_schema.py::test_class_level_expression_connector PASSED [ 24%]
tests/test_filter_schema.py::test_class_level_and_field_level_expression_connector PASSED [ 24%]
tests/test_filter_schema.py::test_ignore_none PASSED [ 24%]
tests/test_filter_schema.py::test_ignore_none_class_level PASSED [ 24%]
tests/test_filter_schema.py::test_field_level_custom_expression PASSED [ 24%]
tests/test_filter_schema.py::test_class_level_custom_expression PASSED [ 25%]
tests/test_filter_schema.py::test_filter_called PASSED [ 25%]
tests/test_forms.py::test_form PASSED [ 25%]
tests/test_forms.py::test_schema PASSED [ 25%]
tests/test_forms.py::test_duplicate_names PASSED [ 25%]
tests/test_forms_and_files.py::test_files PASSED [ 25%]
tests/test_inheritance_routers.py::test_inheritance_responses[/endpoint-200-global] PASSED [ 25%]
tests/test_inheritance_routers.py::test_inheritance_responses[/first/endpoint_1-200-first 1] PASSED [ 26%]
tests/test_inheritance_routers.py::test_inheritance_responses[/first/endpoint_2-200-first 2] PASSED [ 26%]
tests/test_inheritance_routers.py::test_inheritance_responses[/first/second/endpoint_1-200-second 1] PASSED [ 26%]
tests/test_inheritance_routers.py::test_inheritance_responses[/first/second/endpoint_2-200-second 2] PASSED [ 26%]
tests/test_inheritance_routers.py::test_inheritance_responses[/first/second/endpoint_3-200-second 3] PASSED [ 26%]
tests/test_inheritance_routers.py::test_inheritance_responses[/first/second/endpoint_4-200-second 4] PASSED [ 26%]
tests/test_inheritance_routers.py::test_tags PASSED [ 27%]
tests/test_lists.py::test_list[/list1?query=1&query=2-kwargs0-expected_response0] PASSED [ 27%]
tests/test_lists.py::test_list[/list2?query=1&query=2-kwargs1-expected_response1] PASSED [ 27%]
tests/test_lists.py::test_list[/list3-kwargs2-expected_response2] PASSED [ 27%]
tests/test_lists.py::test_list[/list-default-kwargs3-expected_response3] PASSED [ 27%]
tests/test_lists.py::test_list[/list-default-kwargs4-expected_response4] PASSED [ 27%]
tests/test_lists.py::test_list[/list4?tags=a&tags=b&other_tags_alias=a&other_tags_alias=b-kwargs5-expected_response5] PASSED [ 28%]
tests/test_lists.py::test_list[/list4?tags=abc&other_tags_alias=abc-kwargs6-expected_response6] PASSED [ 28%]
tests/test_lists.py::test_list[/list4-kwargs7-expected_response7] PASSED [ 28%]
tests/test_lists.py::test_list[/list5?query=1&query=2-kwargs8-expected_response8] PASSED [ 28%]
tests/test_lists.py::test_list[/list6?id=1&id=2-kwargs9-expected_response9] PASSED [ 28%]
tests/test_misc.py::test_is_pydantic_model PASSED [ 28%]
tests/test_misc.py::test_client PASSED [ 29%]
tests/test_misc.py::test_kwargs PASSED [ 29%]
tests/test_misc.py::test_uuid_converter PASSED [ 29%]
tests/test_misc.py::test_copy_not_set PASSED [ 29%]
tests/test_models.py::test_models[/test1-kwargs0-expected_response0] PASSED [ 29%]
tests/test_models.py::test_models[/test2-kwargs1-expected_response1] PASSED [ 29%]
tests/test_models.py::test_models[/test3-kwargs2-expected_response2] PASSED [ 30%]
tests/test_models.py::test_models[/test_form-kwargs3-expected_response3] PASSED [ 30%]
tests/test_models.py::test_models[/test_query?x=5&y=6-kwargs4-expected_response4] PASSED [ 30%]
tests/test_models.py::test_models[/selfref-kwargs5-expected_response5] PASSED [ 30%]
tests/test_models.py::test_models[/selfref-kwargs6-expected_response6] PASSED [ 30%]
tests/test_models.py::test_models[model-default-kwargs7-None] PASSED [ 30%]
tests/test_models.py::test_models[model-default2-kwargs8-expected_response8] PASSED [ 31%]
tests/test_models.py::test_invalid_body PASSED [ 31%]
tests/test_openapi_docs.py::test_swagger PASSED [ 31%]
tests/test_openapi_docs.py::test_swagger_settings PASSED [ 31%]
tests/test_openapi_docs.py::test_redoc PASSED [ 31%]
tests/test_openapi_docs.py::test_redoc_settings PASSED [ 31%]
tests/test_openapi_extra.py::test_openapi_info_defined PASSED [ 31%]
tests/test_openapi_extra.py::test_openapi_no_additional_info PASSED [ 32%]
tests/test_openapi_extra.py::test_openapi_extra PASSED [ 32%]
tests/test_openapi_params.py::test_schema PASSED [ 32%]
tests/test_openapi_params.py::test_not_included PASSED [ 32%]
tests/test_openapi_schema.py::test_schema_views PASSED [ 32%]
tests/test_openapi_schema.py::test_schema_views_no_INSTALLED_APPS PASSED [ 32%]
tests/test_openapi_schema.py::test_schema PASSED [ 33%]
tests/test_openapi_schema.py::test_schema_alias PASSED [ 33%]
tests/test_openapi_schema.py::test_schema_list PASSED [ 33%]
tests/test_openapi_schema.py::test_schema_body PASSED [ 33%]
tests/test_openapi_schema.py::test_schema_body_schema PASSED [ 33%]
tests/test_openapi_schema.py::test_schema_path PASSED [ 33%]
tests/test_openapi_schema.py::test_schema_form PASSED [ 34%]
tests/test_openapi_schema.py::test_schema_single PASSED [ 34%]
tests/test_openapi_schema.py::test_schema_form_body PASSED [ 34%]
tests/test_openapi_schema.py::test_schema_form_file PASSED [ 34%]
tests/test_openapi_schema.py::test_schema_body_file PASSED [ 34%]
tests/test_openapi_schema.py::test_schema_title_description PASSED [ 34%]
tests/test_openapi_schema.py::test_schema_deprecated_example_examples PASSED [ 35%]
tests/test_openapi_schema.py::test_union_payload_type PASSED [ 35%]
tests/test_openapi_schema.py::test_union_payload_simple PASSED [ 35%]
tests/test_openapi_schema.py::test_new_union_payload_type PASSED [ 35%]
tests/test_openapi_schema.py::test_get_openapi_urls PASSED [ 35%]
tests/test_openapi_schema.py::test_unique_operation_ids PASSED [ 35%]
tests/test_openapi_schema.py::test_docs_decorator PASSED [ 36%]
tests/test_openapi_schema.py::test_renderer_media_type PASSED [ 36%]
tests/test_openapi_schema.py::test_all_paths_rendered PASSED [ 36%]
tests/test_openapi_schema.py::test_all_paths_typed_params_rendered PASSED [ 36%]
tests/test_openapi_schema.py::test_no_default_for_custom_items_attribute PASSED [ 36%]
tests/test_orm_metaclass.py::test_simple PASSED [ 36%]
tests/test_orm_metaclass.py::test_custom PASSED [ 37%]
tests/test_orm_metaclass.py::test_config PASSED [ 37%]
tests/test_orm_metaclass.py::test_optional PASSED [ 37%]
tests/test_orm_metaclass.py::test_fields_all PASSED [ 37%]
tests/test_orm_metaclass.py::test_model_schema_without_config PASSED [ 37%]
tests/test_orm_relations.py::test_manytomany PASSED [ 37%]
tests/test_orm_schemas.py::test_inheritance PASSED [ 37%]
tests/test_orm_schemas.py::test_all_fields PASSED [ 38%]
tests/test_orm_schemas.py::test_altautofield[BigAutoField] PASSED [ 38%]
tests/test_orm_schemas.py::test_altautofield[SmallAutoField] PASSED [ 38%]
tests/test_orm_schemas.py::test_django_31_fields PASSED [ 38%]
tests/test_orm_schemas.py::test_relational PASSED [ 38%]
tests/test_orm_schemas.py::test_default PASSED [ 38%]
tests/test_orm_schemas.py::test_fields_exclude PASSED [ 39%]
tests/test_orm_schemas.py::test_exceptions PASSED [ 39%]
tests/test_orm_schemas.py::test_shortcuts PASSED [ 39%]
tests/test_orm_schemas.py::test_manytomany PASSED [ 39%]
tests/test_orm_schemas.py::test_custom_fields PASSED [ 39%]
tests/test_orm_schemas.py::test_duplicate_schema_names PASSED [ 39%]
tests/test_orm_schemas.py::test_optional_fields PASSED [ 40%]
tests/test_orm_schemas.py::test_register_custom_field PASSED [ 40%]
tests/test_pagination.py::test_case1 PASSED [ 40%]
tests/test_pagination.py::test_case2 PASSED [ 40%]
tests/test_pagination.py::test_case3 PASSED [ 40%]
tests/test_pagination.py::test_case4 PASSED [ 40%]
tests/test_pagination.py::test_case4_page_size PASSED [ 41%]
tests/test_pagination.py::test_case4_no_page_param PASSED [ 41%]
tests/test_pagination.py::test_case4_out_of_range PASSED [ 41%]
tests/test_pagination.py::test_case5_no_kwargs PASSED [ 41%]
tests/test_pagination.py::test_case6_pass_param_kwargs PASSED [ 41%]
tests/test_pagination.py::test_case7 PASSED [ 41%]
tests/test_pagination.py::test_case8 PASSED [ 42%]
tests/test_pagination.py::test_case9 PASSED [ 42%]
tests/test_pagination.py::test_case10_max_page_size PASSED [ 42%]
tests/test_pagination.py::test_10_max_limit_set PASSED [ 42%]
tests/test_pagination.py::test_11_max_limit_set_and_exceeded PASSED [ 42%]
tests/test_pagination.py::test_config_error_None PASSED [ 42%]
tests/test_pagination.py::test_config_error_NOT_SET PASSED [ 43%]
tests/test_pagination.py::test_pagination_works_with_unnamed_classes PASSED [ 43%]
tests/test_pagination.py::test_no_pagination_without_query_params PASSED [ 43%]
tests/test_pagination_async.py::test_async_config_error PASSED [ 43%]
tests/test_pagination_async.py::test_async_custom_pagination PASSED [ 43%]
tests/test_pagination_async.py::test_async_default PASSED [ 43%]
tests/test_pagination_async.py::test_async_page_number PASSED [ 43%]
tests/test_pagination_router.py::test_for_list_reponse PASSED [ 44%]
tests/test_pagination_router.py::test_for_NON_list_reponse PASSED [ 44%]
tests/test_pagination_router.py::test_async_pagination PASSED [ 44%]
tests/test_parser.py::test_parser PASSED [ 44%]
tests/test_patch_dict.py::test_patch_calls[input0-output0] PASSED [ 44%]
tests/test_patch_dict.py::test_patch_calls[input1-output1] PASSED [ 44%]
tests/test_patch_dict.py::test_patch_calls[input2-output2] PASSED [ 45%]
tests/test_patch_dict.py::test_patch_calls[input3-output3] PASSED [ 45%]
tests/test_patch_dict.py::test_patch_calls[input4-output4] PASSED [ 45%]
tests/test_patch_dict.py::test_schema PASSED [ 45%]
tests/test_path.py::test_text_get PASSED [ 45%]
tests/test_path.py::test_get_path[/path/foobar-200-foobar] PASSED [ 45%]
tests/test_path.py::test_get_path[/path/str/foobar-200-foobar] PASSED [ 46%]
tests/test_path.py::test_get_path[/path/str/42-200-42] PASSED [ 46%]
tests/test_path.py::test_get_path[/path/str/True-200-True] PASSED [ 46%]
tests/test_path.py::test_get_path[/path/int/foobar-422-expected_response4] PASSED [ 46%]
tests/test_path.py::test_get_path[/path/int/True-422-expected_response5] PASSED [ 46%]
tests/test_path.py::test_get_path[/path/int/42-200-42] PASSED [ 46%]
tests/test_path.py::test_get_path[/path/int/42.5-422-expected_response7] PASSED [ 47%]
tests/test_path.py::test_get_path[/path/float/foobar-422-expected_response8] PASSED [ 47%]
tests/test_path.py::test_get_path[/path/float/True-422-expected_response9] PASSED [ 47%]
tests/test_path.py::test_get_path[/path/float/42-200-42] PASSED [ 47%]
tests/test_path.py::test_get_path[/path/float/42.5-200-42.5] PASSED [ 47%]
tests/test_path.py::test_get_path[/path/bool/foobar-422-expected_response12] PASSED [ 47%]
tests/test_path.py::test_get_path[/path/bool/True-200-True] PASSED [ 48%]
tests/test_path.py::test_get_path[/path/bool/42-422-expected_response14] PASSED [ 48%]
tests/test_path.py::test_get_path[/path/bool/42.5-422-expected_response15] PASSED [ 48%]
tests/test_path.py::test_get_path[/path/bool/1-200-True] PASSED [ 48%]
tests/test_path.py::test_get_path[/path/bool/0-200-False] PASSED [ 48%]
tests/test_path.py::test_get_path[/path/bool/true-200-True] PASSED [ 48%]
tests/test_path.py::test_get_path[/path/bool/False-200-False] PASSED [ 49%]
tests/test_path.py::test_get_path[/path/bool/false-200-False] PASSED [ 49%]
tests/test_path.py::test_get_path[/path/param/foo-200-foo] PASSED [ 49%]
tests/test_path.py::test_get_path[/path/param-required/foo-200-foo] PASSED [ 49%]
tests/test_path.py::test_get_path[/path/param-minlength/foo-200-foo] PASSED [ 49%]
tests/test_path.py::test_get_path[/path/param-minlength/fo-422-expected_response24] PASSED [ 49%]
tests/test_path.py::test_get_path[/path/param-maxlength/foo-200-foo] PASSED [ 50%]
tests/test_path.py::test_get_path[/path/param-maxlength/foobar-422-expected_response26] PASSED [ 50%]
tests/test_path.py::test_get_path[/path/param-min_maxlength/foo-200-foo] PASSED [ 50%]
tests/test_path.py::test_get_path[/path/param-min_maxlength/foobar-422-expected_response28] PASSED [ 50%]
tests/test_path.py::test_get_path[/path/param-min_maxlength/f-422-expected_response29] PASSED [ 50%]
tests/test_path.py::test_get_path[/path/param-gt/42-200-42] PASSED [ 50%]
tests/test_path.py::test_get_path[/path/param-gt/2-422-expected_response31] PASSED [ 50%]
tests/test_path.py::test_get_path[/path/param-gt0/0.05-200-0.05] PASSED [ 51%]
tests/test_path.py::test_get_path[/path/param-gt0/0-422-expected_response33] PASSED [ 51%]
tests/test_path.py::test_get_path[/path/param-ge/42-200-42] PASSED [ 51%]
tests/test_path.py::test_get_path[/path/param-ge/3-200-3] PASSED [ 51%]
tests/test_path.py::test_get_path[/path/param-ge/2-422-expected_response36] PASSED [ 51%]
tests/test_path.py::test_get_path[/path/param-lt/42-422-expected_response37] PASSED [ 51%]
tests/test_path.py::test_get_path[/path/param-lt/2-200-2] PASSED [ 52%]
tests/test_path.py::test_get_path[/path/param-lt0/-1-200--1] PASSED [ 52%]
tests/test_path.py::test_get_path[/path/param-lt0/0-422-expected_response40] PASSED [ 52%]
tests/test_path.py::test_get_path[/path/param-le/42-422-expected_response41] PASSED [ 52%]
tests/test_path.py::test_get_path[/path/param-le/3-200-3] PASSED [ 52%]
tests/test_path.py::test_get_path[/path/param-le/2-200-2] PASSED [ 52%]
tests/test_path.py::test_get_path[/path/param-lt-gt/2-200-2] PASSED [ 53%]
tests/test_path.py::test_get_path[/path/param-lt-gt/4-422-expected_response45] PASSED [ 53%]
tests/test_path.py::test_get_path[/path/param-lt-gt/0-422-expected_response46] PASSED [ 53%]
tests/test_path.py::test_get_path[/path/param-le-ge/2-200-2] PASSED [ 53%]
tests/test_path.py::test_get_path[/path/param-le-ge/1-200-1] PASSED [ 53%]
tests/test_path.py::test_get_path[/path/param-le-ge/3-200-3] PASSED [ 53%]
tests/test_path.py::test_get_path[/path/param-le-ge/4-422-expected_response50] PASSED [ 54%]
tests/test_path.py::test_get_path[/path/param-lt-int/2-200-2] PASSED [ 54%]
tests/test_path.py::test_get_path[/path/param-lt-int/42-422-expected_response52] PASSED [ 54%]
tests/test_path.py::test_get_path[/path/param-lt-int/2.7-422-expected_response53] PASSED [ 54%]
tests/test_path.py::test_get_path[/path/param-gt-int/42-200-42] PASSED [ 54%]
tests/test_path.py::test_get_path[/path/param-gt-int/2-422-expected_response55] PASSED [ 54%]
tests/test_path.py::test_get_path[/path/param-gt-int/2.7-422-expected_response56] PASSED [ 55%]
tests/test_path.py::test_get_path[/path/param-le-int/42-422-expected_response57] PASSED [ 55%]
tests/test_path.py::test_get_path[/path/param-le-int/3-200-3] PASSED [ 55%]
tests/test_path.py::test_get_path[/path/param-le-int/2-200-2] PASSED [ 55%]
tests/test_path.py::test_get_path[/path/param-le-int/2.7-422-expected_response60] PASSED [ 55%]
tests/test_path.py::test_get_path[/path/param-ge-int/42-200-42] PASSED [ 55%]
tests/test_path.py::test_get_path[/path/param-ge-int/3-200-3] PASSED [ 56%]
tests/test_path.py::test_get_path[/path/param-ge-int/2-422-expected_response63] PASSED [ 56%]
tests/test_path.py::test_get_path[/path/param-ge-int/2.7-422-expected_response64] PASSED [ 56%]
tests/test_path.py::test_get_path[/path/param-lt-gt-int/2-200-2] PASSED [ 56%]
tests/test_path.py::test_get_path[/path/param-lt-gt-int/4-422-expected_response66] PASSED [ 56%]
tests/test_path.py::test_get_path[/path/param-lt-gt-int/0-422-expected_response67] PASSED [ 56%]
tests/test_path.py::test_get_path[/path/param-lt-gt-int/2.7-422-expected_response68] PASSED [ 56%]
tests/test_path.py::test_get_path[/path/param-le-ge-int/2-200-2] PASSED [ 57%]
tests/test_path.py::test_get_path[/path/param-le-ge-int/1-200-1] PASSED [ 57%]
tests/test_path.py::test_get_path[/path/param-le-ge-int/3-200-3] PASSED [ 57%]
tests/test_path.py::test_get_path[/path/param-le-ge-int/4-422-expected_response72] PASSED [ 57%]
tests/test_path.py::test_get_path[/path/param-le-ge-int/2.7-422-expected_response73] PASSED [ 57%]
tests/test_path.py::test_get_path[/path/param-pattern/foo-200-foo] PASSED [ 57%]
tests/test_path.py::test_get_path[/path/param-pattern/fo-422-expected_response75] PASSED [ 58%]
tests/test_path.py::test_get_path_django[/path/param-django-str/42-200-42] PASSED [ 58%]
tests/test_path.py::test_get_path_django[/path/param-django-str/-1-200--1] PASSED [ 58%]
tests/test_path.py::test_get_path_django[/path/param-django-str/foobar-200-foobar] PASSED [ 58%]
tests/test_path.py::test_get_path_django[/path/param-django-int/0-200-0] PASSED [ 58%]
tests/test_path.py::test_get_path_django[/path/param-django-int/42-200-42] PASSED [ 58%]
tests/test_path.py::test_get_path_django[/path/param-django-int/42.5-Cannot resolve-Exception] PASSED [ 59%]
tests/test_path.py::test_get_path_django[/path/param-django-int/-1-Cannot resolve-Exception] PASSED [ 59%]
tests/test_path.py::test_get_path_django[/path/param-django-int/True-Cannot resolve-Exception] PASSED [ 59%]
tests/test_path.py::test_get_path_django[/path/param-django-int/foobar-Cannot resolve-Exception] PASSED [ 59%]
tests/test_path.py::test_get_path_django[/path/param-django-int/not-an-int-200-Found not-an-int] PASSED [ 59%]
tests/test_path.py::test_get_path_django[/path/param-django-int-str/42.5-Cannot resolve-Exception] PASSED [ 59%]
tests/test_path.py::test_get_path_django[/path/param-django-slug/django-ninja-is-the-best-200-django-ninja-is-the-best] PASSED [ 60%]
tests/test_path.py::test_get_path_django[/path/param-django-slug/42.5-Cannot resolve-Exception] PASSED [ 60%]
tests/test_path.py::test_get_path_django[/path/param-django-uuid/31ea378c-c052-4b4c-bf0b-679ce5cfcc2a-200-31ea378c-c052-4b4c-bf0b-679ce5cfcc2a] PASSED [ 60%]
tests/test_path.py::test_get_path_django[/path/param-django-uuid/31ea378c-c052-4b4c-bf0b-679ce5cfcc2-Cannot resolve-Exception] PASSED [ 60%]
tests/test_path.py::test_get_path_django[/path/param-django-uuid-notype/31ea378c-c052-4b4c-bf0b-679ce5cfcc2a-200-31ea378c-c052-4b4c-bf0b-679ce5cfcc2a] PASSED [ 60%]
tests/test_path.py::test_get_path_django[/path/param-django-uuid-typestr/31ea378c-c052-4b4c-bf0b-679ce5cfcc2a-200-31ea378c-c052-4b4c-bf0b-679ce5cfcc2a] PASSED [ 60%]
tests/test_path.py::test_get_path_django[/path/param-django-path/some/path/things/after-200-some/path/things] PASSED [ 61%]
tests/test_path.py::test_get_path_django[/path/param-django-path/less/path/after-200-less/path] PASSED [ 61%]
tests/test_path.py::test_get_path_django[/path/param-django-path/plugh/after-200-plugh] PASSED [ 61%]
tests/test_path.py::test_get_path_django[/path/param-django-path//after-Cannot resolve-Exception] PASSED [ 61%]
tests/test_path.py::test_get_path_django[/path/param-django-custom-int/42-200-24] PASSED [ 61%]
tests/test_path.py::test_get_path_django[/path/param-django-custom-int/x42-Cannot resolve-Exception] PASSED [ 61%]
tests/test_path.py::test_get_path_django[/path/param-django-custom-float/42-200-0.24] PASSED [ 62%]
tests/test_path.py::test_get_path_django[/path/param-django-custom-float/x42-Cannot resolve-Exception] PASSED [ 62%]
tests/test_path.py::test_path_signature_asserts_default PASSED [ 62%]
tests/test_path.py::test_path_signature_warns_missing PASSED [ 62%]
tests/test_pydantic_migrate.py::test_optional_pydantic_model PASSED [ 62%]
tests/test_pydantic_migrate.py::test_optional_schema PASSED [ 62%]
tests/test_pydantic_migrate.py::test_deprecated_schema PASSED [ 62%]
tests/test_pydantic_migrate.py::test_orm_config PASSED [ 63%]
tests/test_query.py::test_get_path[/query-422-expected_response0] PASSED [ 63%]
tests/test_query.py::test_get_path[/query?query=baz-200-foo bar baz] PASSED [ 63%]
tests/test_query.py::test_get_path[/query?not_declared=baz-422-expected_response2] PASSED [ 63%]
tests/test_query.py::test_get_path[/query/optional-200-foo bar] PASSED [ 63%]
tests/test_query.py::test_get_path[/query/optional?query=baz-200-foo bar baz] PASSED [ 63%]
tests/test_query.py::test_get_path[/query/optional?not_declared=baz-200-foo bar] PASSED [ 64%]
tests/test_query.py::test_get_path[/query/int-422-expected_response6] PASSED [ 64%]
tests/test_query.py::test_get_path[/query/int?query=42-200-foo bar 42] PASSED [ 64%]
tests/test_query.py::test_get_path[/query/int?query=42.5-422-expected_response8] PASSED [ 64%]
tests/test_query.py::test_get_path[/query/int?query=baz-422-expected_response9] PASSED [ 64%]
tests/test_query.py::test_get_path[/query/int?not_declared=baz-422-expected_response10] PASSED [ 64%]
tests/test_query.py::test_get_path[/query/int/optional-200-foo bar] PASSED [ 65%]
tests/test_query.py::test_get_path[/query/int/optional?query=50-200-foo bar 50] PASSED [ 65%]
tests/test_query.py::test_get_path[/query/int/optional?query=foo-422-expected_response13] PASSED [ 65%]
tests/test_query.py::test_get_path[/query/int/default-200-foo bar 10] PASSED [ 65%]
tests/test_query.py::test_get_path[/query/int/default?query=50-200-foo bar 50] PASSED [ 65%]
tests/test_query.py::test_get_path[/query/int/default?query=foo-422-expected_response16] PASSED [ 65%]
tests/test_query.py::test_get_path[/query/list?query=a&query=b&query=c-200-a,b,c] PASSED [ 66%]
tests/test_query.py::test_get_path[/query/list-optional?query=a&query=b&query=c-200-a,b,c] PASSED [ 66%]
tests/test_query.py::test_get_path[/query/list-optional?query=a-200-a] PASSED [ 66%]
tests/test_query.py::test_get_path[/query/list-optional-200-None] PASSED [ 66%]
tests/test_query.py::test_get_path[/query/param-200-foo bar] PASSED [ 66%]
tests/test_query.py::test_get_path[/query/param?query=50-200-foo bar 50] PASSED [ 66%]
tests/test_query.py::test_get_path[/query/param-required-422-expected_response23] PASSED [ 67%]
tests/test_query.py::test_get_path[/query/param-required?query=50-200-foo bar 50] PASSED [ 67%]
tests/test_query.py::test_get_path[/query/param-required/int-422-expected_response25] PASSED [ 67%]
tests/test_query.py::test_get_path[/query/param-required/int?query=50-200-foo bar 50] PASSED [ 67%]
tests/test_query.py::test_get_path[/query/param-required/int?query=foo-422-expected_response27] PASSED [ 67%]
tests/test_query.py::test_get_path[/query/aliased-name?aliased.-_~name=foo-200-foo bar foo] PASSED [ 67%]
tests/test_query.py::test_get_query_params[/query-query_params0-422-expected_response0] PASSED [ 68%]
tests/test_query.py::test_get_query_params[/query-query_params1-200-foo bar baz] PASSED [ 68%]
tests/test_query.py::test_get_query_params[/query-query_params2-422-expected_response2] PASSED [ 68%]
tests/test_query.py::test_get_query_params[/query/optional-query_params3-200-foo bar] PASSED [ 68%]
tests/test_query.py::test_get_query_params[/query/optional-query_params4-200-foo bar baz] PASSED [ 68%]
tests/test_query.py::test_get_query_params[/query/optional-query_params5-200-foo bar] PASSED [ 68%]
tests/test_query.py::test_get_query_params[/query/int-query_params6-422-expected_response6] PASSED [ 68%]
tests/test_query.py::test_get_query_params[/query/int-query_params7-200-foo bar 42] PASSED [ 69%]
tests/test_query.py::test_get_query_params[/query/int-query_params8-422-expected_response8] PASSED [ 69%]
tests/test_query.py::test_get_query_params[/query/int-query_params9-422-expected_response9] PASSED [ 69%]
tests/test_query.py::test_get_query_params[/query/int-query_params10-422-expected_response10] PASSED [ 69%]
tests/test_query.py::test_get_query_params[/query/int/optional-query_params11-200-foo bar] PASSED [ 69%]
tests/test_query.py::test_get_query_params[/query/int/optional-query_params12-200-foo bar 50] PASSED [ 69%]
tests/test_query.py::test_get_query_params[/query/int/optional-query_params13-422-expected_response13] PASSED [ 70%]
tests/test_query.py::test_get_query_params[/query/int/default-query_params14-200-foo bar 10] PASSED [ 70%]
tests/test_query.py::test_get_query_params[/query/int/default-query_params15-200-foo bar 50] PASSED [ 70%]
tests/test_query.py::test_get_query_params[/query/int/default-query_params16-422-expected_response16] PASSED [ 70%]
tests/test_query.py::test_get_query_params[/query/list-query_params17-200-a,b,c] PASSED [ 70%]
tests/test_query.py::test_get_query_params[/query/list-optional-query_params18-200-a,b,c] PASSED [ 70%]
tests/test_query.py::test_get_query_params[/query/list-optional-query_params19-200-a] PASSED [ 71%]
tests/test_query.py::test_get_query_params[/query/list-optional-query_params20-200-None] PASSED [ 71%]
tests/test_query.py::test_get_query_params[/query/param-query_params21-200-foo bar] PASSED [ 71%]
tests/test_query.py::test_get_query_params[/query/param-query_params22-200-foo bar 50] PASSED [ 71%]
tests/test_query.py::test_get_query_params[/query/param-required-query_params23-422-expected_response23] PASSED [ 71%]
tests/test_query.py::test_get_query_params[/query/param-required-query_params24-200-foo bar 50] PASSED [ 71%]
tests/test_query.py::test_get_query_params[/query/param-required/int-query_params25-422-expected_response25] PASSED [ 72%]
tests/test_query.py::test_get_query_params[/query/param-required/int-query_params26-200-foo bar 50] PASSED [ 72%]
tests/test_query.py::test_get_query_params[/query/param-required/int-query_params27-422-expected_response27] PASSED [ 72%]
tests/test_query.py::test_get_query_params[/query/aliased-name-query_params28-200-foo bar foo] PASSED [ 72%]
tests/test_query_schema.py::test_schema PASSED [ 72%]
tests/test_query_schema.py::test_schema_all_of_no_ref PASSED [ 72%]
tests/test_renderer.py::test_response_class[api0-text/xml; charset=utf-8-\n- JonathanDoe
- SarahCalvin
] PASSED [ 73%]
tests/test_renderer.py::test_response_class[api1-text/csv; charset=utf-8-name,lastname\nJonathan,Doe\nSarah,Calvin] PASSED [ 73%]
tests/test_renderer.py::test_implment_render PASSED [ 73%]
tests/test_request.py::test_headers[/headers1-200-Ninja] PASSED [ 73%]
tests/test_request.py::test_headers[/headers2-200-Ninja] PASSED [ 73%]
tests/test_request.py::test_headers[/headers3-200-10] PASSED [ 73%]
tests/test_request.py::test_headers[/headers4-200-10] PASSED [ 74%]
tests/test_request.py::test_headers[/headers5-422-expected_response4] PASSED [ 74%]
tests/test_request.py::test_headers[/cookies1-200-shuriken] PASSED [ 74%]
tests/test_request.py::test_headers[/cookies2-200-shuriken] PASSED [ 74%]
tests/test_request.py::test_pydantic_config[/test-schema-json0-422-expected_response0] PASSED [ 74%]
tests/test_request.py::test_pydantic_config[/test-schema-json1-422-expected_response1] PASSED [ 74%]
tests/test_request.py::test_pydantic_config[/test-schema-json2-422-expected_response2] PASSED [ 75%]
tests/test_response.py::test_responses[/check_int-1] PASSED [ 75%]
tests/test_response.py::test_responses[/check_model-expected_response1] PASSED [ 75%]
tests/test_response.py::test_responses[/check_list_model-expected_response2] PASSED [ 75%]
tests/test_response.py::test_responses[/check_model-expected_response3] PASSED [ 75%]
tests/test_response.py::test_responses[/check_model_alias-expected_response4] PASSED [ 75%]
tests/test_response.py::test_responses[/check_union?q=0-1] PASSED [ 75%]
tests/test_response.py::test_responses[/check_union?q=1-expected_response6] PASSED [ 76%]
tests/test_response.py::test_validates PASSED [ 76%]
tests/test_response.py::test_set_header PASSED [ 76%]
tests/test_response.py::test_set_cookie PASSED [ 76%]
tests/test_response.py::test_del_cookie PASSED [ 76%]
tests/test_response.py::test_ipv4address_encoding PASSED [ 76%]
tests/test_response.py::test_ipv6address_encoding PASSED [ 77%]
tests/test_response.py::test_enum_encoding PASSED [ 77%]
tests/test_response.py::test_pydantic_url PASSED [ 77%]
tests/test_response_cookies.py::test_cookies PASSED [ 77%]
tests/test_response_multiple.py::test_responses[/check_int-200-1] PASSED [ 77%]
tests/test_response_multiple.py::test_responses[/check_single_with_status?code=200-200-1] PASSED [ 77%]
tests/test_response_multiple.py::test_responses[/check_model-202-expected_response2] PASSED [ 78%]
tests/test_response_multiple.py::test_responses[/check_list_model-200-expected_response3] PASSED [ 78%]
tests/test_response_multiple.py::test_responses[/check_union?q=0-200-1] PASSED [ 78%]
tests/test_response_multiple.py::test_responses[/check_union?q=1-200-expected_response5] PASSED [ 78%]
tests/test_response_multiple.py::test_responses[/check_union?q=2-400-expected_response6] PASSED [ 78%]
tests/test_response_multiple.py::test_responses[/check_multiple_codes?code=200-200-1] PASSED [ 78%]
tests/test_response_multiple.py::test_responses[/check_multiple_codes?code=201-201-1] PASSED [ 79%]
tests/test_response_multiple.py::test_responses[/check_multiple_codes?code=202-202-1] PASSED [ 79%]
tests/test_response_multiple.py::test_responses[/check_multiple_codes?code=206-206-1] PASSED [ 79%]
tests/test_response_multiple.py::test_responses[/check_multiple_codes?code=300-300-1] PASSED [ 79%]
tests/test_response_multiple.py::test_responses[/check_multiple_codes?code=308-308-1] PASSED [ 79%]
tests/test_response_multiple.py::test_responses[/check_multiple_codes?code=400-400-1.0] PASSED [ 79%]
tests/test_response_multiple.py::test_responses[/check_multiple_codes?code=500-500-1.0] PASSED [ 80%]
tests/test_response_multiple.py::test_schema PASSED [ 80%]
tests/test_response_multiple.py::test_no_content PASSED [ 80%]
tests/test_response_multiple.py::test_validates PASSED [ 80%]
tests/test_response_params.py::test_arguments PASSED [ 80%]
tests/test_reverse.py::test_reverse[foobar-/api/v3/foobar] PASSED [ 80%]
tests/test_reverse.py::test_reverse[post_foobar-/api/v3/foobar] PASSED [ 81%]
tests/test_reverse.py::test_reverse[foobar_put-/api/v3/foobar] PASSED [ 81%]
tests/test_router_add_router.py::test_add_router_with_string_path PASSED [ 81%]
tests/test_router_defaults.py::test_router_defaults[exclude_defaults-retdict0-assertone0-asserttwo0] PASSED [ 81%]
tests/test_router_defaults.py::test_router_defaults[exclude_unset-retdict1-assertone1-asserttwo1] PASSED [ 81%]
tests/test_router_defaults.py::test_router_defaults[exclude_none-retdict2-assertone2-asserttwo2] PASSED [ 81%]
tests/test_router_defaults.py::test_router_defaults[by_alias-retdict3-assertone3-asserttwo3] PASSED [ 81%]
tests/test_router_path_params.py::test_router_with_path_params[/with_type/1/metadata-200-1] PASSED [ 82%]
tests/test_router_path_params.py::test_router_with_path_params[/without_type/1/metadata-200-1] PASSED [ 82%]
tests/test_router_path_params.py::test_router_with_path_params[/without_type/abc/metadata-200-abc] PASSED [ 82%]
tests/test_router_path_params.py::test_router_with_path_params[/with_multiple/99/name/foo/metadata/timestamp-200-99 foo timestamp] PASSED [ 82%]
tests/test_router_path_params.py::test_router_with_path_params_nomatch[/with_type/abc/metadata-Exception-Cannot resolve] PASSED [ 82%]
tests/test_router_path_params.py::test_router_with_path_params_nomatch[/with_type//metadata-Exception-Cannot resolve] PASSED [ 82%]
tests/test_router_path_params.py::test_router_with_path_params_nomatch[/with_type/null/metadata-Exception-Cannot resolve] PASSED [ 83%]
tests/test_router_path_params.py::test_router_with_path_params_nomatch[/with_type-Exception-Cannot resolve] PASSED [ 83%]
tests/test_router_path_params.py::test_router_with_path_params_nomatch[/with_type/-Exception-Cannot resolve] PASSED [ 83%]
tests/test_router_path_params.py::test_router_with_path_params_nomatch[/with_type//-Exception-Cannot resolve] PASSED [ 83%]
tests/test_router_path_params.py::test_router_with_path_params_nomatch[/with_type/null-Exception-Cannot resolve] PASSED [ 83%]
tests/test_router_path_params.py::test_router_with_path_params_nomatch[/with_type/null/-Exception-Cannot resolve] PASSED [ 83%]
tests/test_router_path_params.py::test_router_with_path_params_nomatch[/without_type-Exception-Cannot resolve] PASSED [ 84%]
tests/test_router_path_params.py::test_router_with_path_params_nomatch[/without_type/-Exception-Cannot resolve] PASSED [ 84%]
tests/test_router_path_params.py::test_router_with_path_params_nomatch[/without_type//-Exception-Cannot resolve] PASSED [ 84%]
tests/test_router_path_params.py::test_router_with_path_params_nomatch[/with_multiple/abc/name/foo/metadata/timestamp-Exception-Cannot resolve] PASSED [ 84%]
tests/test_router_path_params.py::test_router_with_path_params_nomatch[/with_multiple/99-Exception-Cannot resolve] PASSED [ 84%]
tests/test_schema.py::test_schema PASSED [ 84%]
tests/test_schema.py::test_schema_with_image PASSED [ 85%]
tests/test_schema.py::test_with_boss_schema PASSED [ 85%]
tests/test_schema.py::test_with_initials_schema SKIPPED (Lets deal w...) [ 85%]
tests/test_schema.py::test_complex_alias_resolve PASSED [ 85%]
tests/test_schema.py::test_with_attr_that_has_resolve PASSED [ 85%]
tests/test_schema.py::test_django_getter PASSED [ 85%]
tests/test_schema.py::test_schema_validates_assignment_and_reassigns_the_value PASSED [ 86%]
tests/test_schema.py::test_schema_skips_validation_when_validate_assignment_False[False] PASSED [ 86%]
tests/test_schema.py::test_schema_skips_validation_when_validate_assignment_False[None] PASSED [ 86%]
tests/test_schema_context.py::test_schema_with_context PASSED [ 86%]
tests/test_schema_context.py::test_request_context PASSED [ 86%]
tests/test_serialization_context.py::test_request_is_passed_in_context_when_supported PASSED [ 86%]
tests/test_serialization_context.py::test_no_serialisation_context_used_when_no_supported[pydantic_version0] PASSED [ 87%]
tests/test_serialization_context.py::test_no_serialisation_context_used_when_no_supported[pydantic_version1] PASSED [ 87%]
tests/test_serialization_context.py::test_no_serialisation_context_used_when_no_supported[pydantic_version2] PASSED [ 87%]
tests/test_server.py::TestServer::test_server_basic PASSED [ 87%]
tests/test_server.py::TestServer::test_server_with_description PASSED [ 87%]
tests/test_server.py::TestServer::test_multiple_servers_with_description PASSED [ 87%]
tests/test_signature_details.py::test_is_collection_type_returns[true_for_typing_List] PASSED [ 87%]
tests/test_signature_details.py::test_is_collection_type_returns[true_for_native_list] PASSED [ 88%]
tests/test_signature_details.py::test_is_collection_type_returns[true_for_typing_Set] PASSED [ 88%]
tests/test_signature_details.py::test_is_collection_type_returns[true_for_native_set] PASSED [ 88%]
tests/test_signature_details.py::test_is_collection_type_returns[true_for_typing_Tuple] PASSED [ 88%]
tests/test_signature_details.py::test_is_collection_type_returns[true_for_native_tuple] PASSED [ 88%]
tests/test_signature_details.py::test_is_collection_type_returns[true_for_optional_list] PASSED [ 88%]
tests/test_signature_details.py::test_is_collection_type_returns[false_for_custom_type_without_typing_origin] PASSED [ 89%]
tests/test_signature_details.py::test_is_collection_type_returns[false_for_custom_instance_without_typing_origin] PASSED [ 89%]
tests/test_signature_details.py::test_is_collection_type_returns[false_for_instance_without_typing_origin] PASSED [ 89%]
tests/test_signature_details.py::test_is_collection_type_returns[true_for_parameterized_native_list] PASSED [ 89%]
tests/test_signature_details.py::test_is_collection_type_returns[true_for_parameterized_native_set] PASSED [ 89%]
tests/test_signature_details.py::test_is_collection_type_returns[true_for_parameterized_native_tuple] PASSED [ 89%]
tests/test_test_client.py::test_sync_build_absolute_uri[/request/build_absolute_uri-200-http://testlocation/] PASSED [ 90%]
tests/test_test_client.py::test_sync_build_absolute_uri[/request/build_absolute_uri/location-200-http://testlocation/location] PASSED [ 90%]
tests/test_test_client.py::test_schema_as_data PASSED [ 90%]
tests/test_test_client.py::test_json_as_body PASSED [ 90%]
tests/test_test_client.py::test_client_request_only_header PASSED [ 90%]
tests/test_test_client.py::test_headered_client_request_with_default_headers PASSED [ 90%]
tests/test_test_client.py::test_headered_client_request_with_overwritten_and_additional_headers PASSED [ 91%]
tests/test_test_client.py::test_client_request_only_cookies PASSED [ 91%]
tests/test_test_client.py::test_headered_client_request_with_default_cookies PASSED [ 91%]
tests/test_test_client.py::test_headered_client_request_with_overwritten_and_additional_cookies PASSED [ 91%]
tests/test_throttling.py::test_global_throttling PASSED [ 91%]
tests/test_throttling.py::test_router_throttling PASSED [ 91%]
tests/test_throttling.py::test_router2_throttling PASSED [ 92%]
tests/test_throttling.py::test_operation_throttling PASSED [ 92%]
tests/test_throttling.py::test_async_throttling PASSED [ 92%]
tests/test_throttling.py::test_throttle_anon PASSED [ 92%]
tests/test_throttling.py::test_throttle_auth PASSED [ 92%]
tests/test_throttling.py::test_throttle_user PASSED [ 92%]
tests/test_throttling.py::test_wait PASSED [ 93%]
tests/test_throttling.py::test_rate_parser PASSED [ 93%]
tests/test_throttling.py::test_proxy_throttle PASSED [ 93%]
tests/test_throttling.py::test_base_classes PASSED [ 93%]
tests/test_utils.py::test_replace_path_param_notation[abc/{def}-abc/] PASSED [ 93%]
tests/test_utils.py::test_replace_path_param_notation[abc/-abc/] PASSED [ 93%]
tests/test_utils.py::test_replace_path_param_notation[abc-abc] PASSED [ 93%]
tests/test_utils.py::test_replace_path_param_notation[-] PASSED [ 94%]
tests/test_utils.py::test_replace_path_param_notation[{abc}-] PASSED [ 94%]
tests/test_utils.py::test_replace_path_param_notation[{abc}/{def}-/] PASSED [ 94%]
tests/test_utils.py::test_contribute_operation_args PASSED [ 94%]
tests/test_with_django/test_multi_param_parsing.py::test_validate_test_data PASSED [ 94%]
tests/test_with_django/test_multi_param_parsing.py::test_data_round_trip_with_ninja_client[/test-multi-query-client_args0] PASSED [ 94%]
tests/test_with_django/test_multi_param_parsing.py::test_data_round_trip_with_ninja_client[/test-multi-path/{i}/{s}/{foo4}/{bar4}/{foo}/{bar}/{foo2}/{bar2}/{foo3}/{bar3}/-client_args1] PASSED [ 95%]
tests/test_with_django/test_multi_param_parsing.py::test_data_round_trip_with_ninja_client[/test-multi-header-client_args2] PASSED [ 95%]
tests/test_with_django/test_multi_param_parsing.py::test_data_round_trip_with_ninja_client[/test-multi-cookie-client_args3] PASSED [ 95%]
tests/test_with_django/test_multi_param_parsing.py::test_data_round_trip_with_ninja_client[/test-multi-form-client_args4] PASSED [ 95%]
tests/test_with_django/test_multi_param_parsing.py::test_data_round_trip_with_ninja_client[/test-multi-body-client_args5] PASSED [ 95%]
tests/test_with_django/test_multi_param_parsing.py::test_data_round_trip_with_ninja_client[/test-multi-body-file-client_args6] PASSED [ 95%]
tests/test_with_django/test_multi_param_parsing.py::test_data_round_trip_with_ninja_client[/test-multi-form-file-client_args7] PASSED [ 96%]
tests/test_with_django/test_multi_param_parsing.py::test_data_round_trip_with_ninja_client[/test-multi-body-form-client_args8] PASSED [ 96%]
tests/test_with_django/test_multi_param_parsing.py::test_data_round_trip_with_ninja_client[/test-multi-form-body-client_args9] PASSED [ 96%]
tests/test_with_django/test_multi_param_parsing.py::test_data_round_trip_with_ninja_client[/test-multi-body-form-file-client_args10] PASSED [ 96%]
tests/test_with_django/test_multi_param_parsing.py::test_data_round_trip_with_ninja_client[/test-multi-form-body-file-client_args11] PASSED [ 96%]
tests/test_with_django/test_multi_param_parsing.py::test_data_round_trip_with_django_client[/test-multi-query-client_args0] PASSED [ 96%]
tests/test_with_django/test_multi_param_parsing.py::test_data_round_trip_with_django_client[/test-multi-path/{i}/{s}/{foo4}/{bar4}/{foo}/{bar}/{foo2}/{bar2}/{foo3}/{bar3}/-client_args1] PASSED [ 97%]
tests/test_with_django/test_multi_param_parsing.py::test_data_round_trip_with_django_client[/test-multi-header-client_args2] PASSED [ 97%]
tests/test_with_django/test_multi_param_parsing.py::test_data_round_trip_with_django_client[/test-multi-cookie-client_args3] PASSED [ 97%]
tests/test_with_django/test_multi_param_parsing.py::test_data_round_trip_with_django_client[/test-multi-form-client_args4] PASSED [ 97%]
tests/test_with_django/test_multi_param_parsing.py::test_data_round_trip_with_django_client[/test-multi-body-client_args5] PASSED [ 97%]
tests/test_with_django/test_multi_param_parsing.py::test_data_round_trip_with_django_client[/test-multi-body-file-client_args6] PASSED [ 97%]
tests/test_with_django/test_multi_param_parsing.py::test_data_round_trip_with_django_client[/test-multi-form-file-client_args7] PASSED [ 98%]
tests/test_with_django/test_multi_param_parsing.py::test_data_round_trip_with_django_client[/test-multi-body-form-client_args8] PASSED [ 98%]
tests/test_with_django/test_multi_param_parsing.py::test_data_round_trip_with_django_client[/test-multi-form-body-client_args9] PASSED [ 98%]
tests/test_with_django/test_multi_param_parsing.py::test_data_round_trip_with_django_client[/test-multi-body-form-file-client_args10] PASSED [ 98%]
tests/test_with_django/test_multi_param_parsing.py::test_data_round_trip_with_django_client[/test-multi-form-body-file-client_args11] PASSED [ 98%]
tests/test_wraps.py::test_get_path[/text-200-Hello World] PASSED [ 98%]
tests/test_wraps.py::test_get_path[/path/id-200-id] PASSED [ 99%]
tests/test_wraps.py::test_get_path[/query?query=1-200-foo bar 1] PASSED [ 99%]
tests/test_wraps.py::test_get_path[/path-query/id?query=2-200-foo bar id 2] PASSED [ 99%]
tests/test_wraps.py::test_get_path[/text-bad-200-Hello World] PASSED [ 99%]
tests/test_wraps.py::test_get_path[/path-bad/id-None-TypeError] PASSED [ 99%]
tests/test_wraps.py::test_get_path[/query-bad?query=1-None-TypeError] PASSED [ 99%]
tests/test_wraps.py::test_get_path[/path-query-bad/id?query=2-None-TypeError] PASSED [100%]
=============================== warnings summary ===============================
ninja/schema.py:181
ninja/schema.py:181
ninja/schema.py:181
ninja/schema.py:181
ninja/schema.py:181
tests/test_filter_schema.py::test_class_level_expression_connector
tests/test_filter_schema.py::test_class_level_and_field_level_expression_connector
tests/test_filter_schema.py::test_ignore_none_class_level
tests/test_orm_metaclass.py::test_simple
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/ninja/schema.py:181: PydanticDeprecatedSince20: Support for class-based `config` is deprecated, use ConfigDict instead. Deprecated in Pydantic V2.0 to be removed in V3.0. See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.12/migration/
result = super().__new__(cls, name, bases, namespace, **kwargs)
ninja/conf.py:8
tests/test_pagination.py::test_10_max_limit_set
tests/test_pagination.py::test_11_max_limit_set_and_exceeded
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/ninja/conf.py:8: PydanticDeprecatedSince20: Support for class-based `config` is deprecated, use ConfigDict instead. Deprecated in Pydantic V2.0 to be removed in V3.0. See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.12/migration/
class Settings(BaseModel):
tests/test_auth.py:85
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/tests/test_auth.py:85: DeprecationWarning: csrf argument is deprecated, auth is handling csrf automatically now
api = NinjaAPI(csrf=True)
tests/test_csrf.py:20
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/tests/test_csrf.py:20: DeprecationWarning: csrf argument is deprecated, auth is handling csrf automatically now
csrf_ON = NinjaAPI(urls_namespace="csrf_ON", csrf=True)
tests/test_csrf.py:21
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/tests/test_csrf.py:21: DeprecationWarning: csrf argument is deprecated, auth is handling csrf automatically now
csrf_ON_with_django_auth = NinjaAPI(
ninja/patch_dict.py:27
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/ninja/patch_dict.py:27: PydanticDeprecatedSince20: The `__fields__` attribute is deprecated, use the `model_fields` class property instead. Deprecated in Pydantic V2.0 to be removed in V3.0. See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.12/migration/
for f in schema_cls.__fields__.keys():
tests/test_docs/test_auth.py::test_examples
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/tests/test_docs/test_auth.py:26: DeprecationWarning: csrf argument is deprecated, auth is handling csrf automatically now
api = NinjaAPI(csrf=True)
tests/test_docs/test_auth.py::test_examples
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/docs/src/tutorial/authentication/code001.py:4: DeprecationWarning: csrf argument is deprecated, auth is handling csrf automatically now
api = NinjaAPI(csrf=True)
tests/test_auth.py::test_auth[/async_bearer-kwargs26-401-expected_body26]
tests/test_auth_async.py::test_async_authenticate_method_in_sync_context
/usr/lib/python3.12/site-packages/asgiref/sync.py:540: UserWarning: async_to_sync was passed a non-async-marked callable
return AsyncToSync(
tests/test_auth.py::test_auth[/async_bearer-kwargs26-401-expected_body26]
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/ninja/operation.py:210: RuntimeWarning: coroutine 'AsyncBearerAuth.authenticate' was never awaited
result = async_to_sync(callback)(request)
Enable tracemalloc to get traceback where the object was allocated.
See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info.
tests/test_auth_async.py::test_async_authenticate_method_in_sync_context
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/ninja/operation.py:210: RuntimeWarning: coroutine 'test_async_authenticate_method_in_sync_context..KeyAuth.authenticate' was never awaited
result = async_to_sync(callback)(request)
Enable tracemalloc to get traceback where the object was allocated.
See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info.
tests/test_csrf.py::test_docs
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/tests/test_csrf.py:152: DeprecationWarning: csrf argument is deprecated, auth is handling csrf automatically now
api = NinjaAPI(csrf=True)
tests/test_csrf_async.py::test_csrf_on
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/tests/test_csrf_async.py:34: DeprecationWarning: csrf argument is deprecated, auth is handling csrf automatically now
csrf_ON = NinjaAPI(urls_namespace="csrf_ON", csrf=True)
tests/test_filter_schema.py: 17 warnings
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/ninja/filter_schema.py:101: PydanticDeprecatedSince211: Accessing the 'model_fields' attribute on the instance is deprecated. Instead, you should access this attribute from the model class. Deprecated in Pydantic V2.11 to be removed in V3.0.
for field_name, field in self.model_fields.items():
tests/test_filter_schema.py::test_improperly_configured
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/tests/test_filter_schema.py:32: PydanticDeprecatedSince20: Using extra keyword arguments on `Field` is deprecated and will be removed. Use `json_schema_extra` instead. (Extra keys: 'q'). Deprecated in Pydantic V2.0 to be removed in V3.0. See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.12/migration/
popular: Optional[str] = Field(None, q=Q(view_count__gt=1000))
tests/test_filter_schema.py::test_empty_q_when_none_ignored
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/tests/test_filter_schema.py:41: PydanticDeprecatedSince20: Using extra keyword arguments on `Field` is deprecated and will be removed. Use `json_schema_extra` instead. (Extra keys: 'q'). Deprecated in Pydantic V2.0 to be removed in V3.0. See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.12/migration/
name: Optional[str] = Field(None, q="name__icontains")
tests/test_filter_schema.py::test_empty_q_when_none_ignored
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/tests/test_filter_schema.py:42: PydanticDeprecatedSince20: Using extra keyword arguments on `Field` is deprecated and will be removed. Use `json_schema_extra` instead. (Extra keys: 'q'). Deprecated in Pydantic V2.0 to be removed in V3.0. See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.12/migration/
tag: Optional[str] = Field(None, q="tag")
tests/test_filter_schema.py::test_q_expressions2[False]
tests/test_filter_schema.py::test_q_expressions2[True]
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/tests/test_filter_schema.py:57: PydanticDeprecatedSince20: Using extra keyword arguments on `Field` is deprecated and will be removed. Use `json_schema_extra` instead. (Extra keys: 'q'). Deprecated in Pydantic V2.0 to be removed in V3.0. See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.12/migration/
name: Optional[str] = Field(None, q=q)
tests/test_filter_schema.py::test_q_expressions2[False]
tests/test_filter_schema.py::test_q_expressions2[True]
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/tests/test_filter_schema.py:58: PydanticDeprecatedSince20: Using extra keyword arguments on `Field` is deprecated and will be removed. Use `json_schema_extra` instead. (Extra keys: 'q'). Deprecated in Pydantic V2.0 to be removed in V3.0. See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.12/migration/
tag: Optional[str] = Field(None, q="tag")
tests/test_filter_schema.py::test_q_expressions3
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/tests/test_filter_schema.py:67: PydanticDeprecatedSince20: Using extra keyword arguments on `Field` is deprecated and will be removed. Use `json_schema_extra` instead. (Extra keys: 'q'). Deprecated in Pydantic V2.0 to be removed in V3.0. See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.12/migration/
name: Optional[str] = Field(None, q="name__icontains")
tests/test_filter_schema.py::test_q_expressions3
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/tests/test_filter_schema.py:68: PydanticDeprecatedSince20: Using extra keyword arguments on `Field` is deprecated and will be removed. Use `json_schema_extra` instead. (Extra keys: 'q'). Deprecated in Pydantic V2.0 to be removed in V3.0. See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.12/migration/
tag: Optional[str] = Field(None, q="tag")
tests/test_filter_schema.py::test_q_is_a_list[False]
tests/test_filter_schema.py::test_q_is_a_list[True]
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/tests/test_filter_schema.py:83: PydanticDeprecatedSince20: Using extra keyword arguments on `Field` is deprecated and will be removed. Use `json_schema_extra` instead. (Extra keys: 'q'). Deprecated in Pydantic V2.0 to be removed in V3.0. See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.12/migration/
name: Optional[str] = Field(None, q=[q__name, "user__username__icontains"])
tests/test_filter_schema.py::test_q_is_a_list[False]
tests/test_filter_schema.py::test_q_is_a_list[True]
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/tests/test_filter_schema.py:84: PydanticDeprecatedSince20: Using extra keyword arguments on `Field` is deprecated and will be removed. Use `json_schema_extra` instead. (Extra keys: 'q'). Deprecated in Pydantic V2.0 to be removed in V3.0. See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.12/migration/
tag: Optional[str] = Field(None, q="tag")
tests/test_filter_schema.py::test_field_level_expression_connector
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/tests/test_filter_schema.py:95: PydanticDeprecatedSince20: Using extra keyword arguments on `Field` is deprecated and will be removed. Use `json_schema_extra` instead. (Extra keys: 'q', 'expression_connector'). Deprecated in Pydantic V2.0 to be removed in V3.0. See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.12/migration/
name: Optional[str] = Field(
tests/test_filter_schema.py::test_field_level_expression_connector
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/tests/test_filter_schema.py:99: PydanticDeprecatedSince20: Using extra keyword arguments on `Field` is deprecated and will be removed. Use `json_schema_extra` instead. (Extra keys: 'q'). Deprecated in Pydantic V2.0 to be removed in V3.0. See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.12/migration/
tag: Optional[str] = Field(None, q="tag")
tests/test_filter_schema.py::test_class_level_expression_connector
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/tests/test_filter_schema.py:110: PydanticDeprecatedSince20: Using extra keyword arguments on `Field` is deprecated and will be removed. Use `json_schema_extra` instead. (Extra keys: 'q'). Deprecated in Pydantic V2.0 to be removed in V3.0. See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.12/migration/
tag1: Optional[str] = Field(None, q="tag1")
tests/test_filter_schema.py::test_class_level_expression_connector
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/tests/test_filter_schema.py:111: PydanticDeprecatedSince20: Using extra keyword arguments on `Field` is deprecated and will be removed. Use `json_schema_extra` instead. (Extra keys: 'q'). Deprecated in Pydantic V2.0 to be removed in V3.0. See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.12/migration/
tag2: Optional[str] = Field(None, q="tag2")
tests/test_filter_schema.py::test_class_level_and_field_level_expression_connector
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/tests/test_filter_schema.py:123: PydanticDeprecatedSince20: Using extra keyword arguments on `Field` is deprecated and will be removed. Use `json_schema_extra` instead. (Extra keys: 'q', 'expression_connector'). Deprecated in Pydantic V2.0 to be removed in V3.0. See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.12/migration/
name: Optional[str] = Field(
tests/test_filter_schema.py::test_class_level_and_field_level_expression_connector
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/tests/test_filter_schema.py:127: PydanticDeprecatedSince20: Using extra keyword arguments on `Field` is deprecated and will be removed. Use `json_schema_extra` instead. (Extra keys: 'q'). Deprecated in Pydantic V2.0 to be removed in V3.0. See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.12/migration/
tag: Optional[str] = Field(None, q="tag")
tests/test_filter_schema.py::test_ignore_none
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/tests/test_filter_schema.py:141: PydanticDeprecatedSince20: Using extra keyword arguments on `Field` is deprecated and will be removed. Use `json_schema_extra` instead. (Extra keys: 'q', 'ignore_none'). Deprecated in Pydantic V2.0 to be removed in V3.0. See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.12/migration/
tag: Optional[str] = Field(None, q="tag", ignore_none=False)
tests/test_filter_schema.py::test_ignore_none_class_level
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/tests/test_filter_schema.py:150: PydanticDeprecatedSince20: Using extra keyword arguments on `Field` is deprecated and will be removed. Use `json_schema_extra` instead. (Extra keys: 'q'). Deprecated in Pydantic V2.0 to be removed in V3.0. See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.12/migration/
tag1: Optional[str] = Field(None, q="tag1")
tests/test_filter_schema.py::test_ignore_none_class_level
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/tests/test_filter_schema.py:151: PydanticDeprecatedSince20: Using extra keyword arguments on `Field` is deprecated and will be removed. Use `json_schema_extra` instead. (Extra keys: 'q'). Deprecated in Pydantic V2.0 to be removed in V3.0. See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.12/migration/
tag2: Optional[str] = Field(None, q="tag2")
tests/test_filter_schema.py::test_class_level_custom_expression
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/tests/test_filter_schema.py:184: PydanticDeprecatedSince20: Using extra keyword arguments on `Field` is deprecated and will be removed. Use `json_schema_extra` instead. (Extra keys: 'q'). Deprecated in Pydantic V2.0 to be removed in V3.0. See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.12/migration/
adult: Optional[bool] = Field(None, q="this_will_be_ignored")
tests/test_filter_schema.py::test_filter_called
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/tests/test_filter_schema.py:196: PydanticDeprecatedSince20: Using extra keyword arguments on `Field` is deprecated and will be removed. Use `json_schema_extra` instead. (Extra keys: 'q'). Deprecated in Pydantic V2.0 to be removed in V3.0. See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.12/migration/
name: Optional[str] = Field(None, q="name")
tests/test_orm_metaclass.py::test_simple
/home/buildozer/aports/community/py3-django-ninja/src/django-ninja-1.4.5/ninja/orm/metaclass.py:90: DeprecationWarning: The use of `Config` class is deprecated for ModelSchema, use 'Meta' instead
meta_conf = MetaConf.from_schema_class(name, namespace)
tests/test_orm_schemas.py::test_altautofield[SmallAutoField]
/usr/lib/python3.12/site-packages/django/db/models/base.py:366: RuntimeWarning: Model 'tests.modelaltauto' was already registered. Reloading models is not advised as it can lead to inconsistencies, most notably with related models.
new_class._meta.apps.register_model(new_class._meta.app_label, new_class)
-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
================= 614 passed, 2 skipped, 67 warnings in 3.20s ==================
>>> py3-django-ninja: Entering fakeroot...
>>> py3-django-ninja-pyc*: Running split function pyc...
'usr/lib/python3.12/site-packages/ninja/openapi/__pycache__' -> '/home/buildozer/aports/community/py3-django-ninja/pkg/py3-django-ninja-pyc/usr/lib/python3.12/site-packages/ninja/openapi/__pycache__'
'usr/lib/python3.12/site-packages/ninja/__pycache__' -> '/home/buildozer/aports/community/py3-django-ninja/pkg/py3-django-ninja-pyc/usr/lib/python3.12/site-packages/ninja/__pycache__'
'usr/lib/python3.12/site-packages/ninja/params/__pycache__' -> '/home/buildozer/aports/community/py3-django-ninja/pkg/py3-django-ninja-pyc/usr/lib/python3.12/site-packages/ninja/params/__pycache__'
'usr/lib/python3.12/site-packages/ninja/signature/__pycache__' -> '/home/buildozer/aports/community/py3-django-ninja/pkg/py3-django-ninja-pyc/usr/lib/python3.12/site-packages/ninja/signature/__pycache__'
'usr/lib/python3.12/site-packages/ninja/compatibility/__pycache__' -> '/home/buildozer/aports/community/py3-django-ninja/pkg/py3-django-ninja-pyc/usr/lib/python3.12/site-packages/ninja/compatibility/__pycache__'
'usr/lib/python3.12/site-packages/ninja/security/__pycache__' -> '/home/buildozer/aports/community/py3-django-ninja/pkg/py3-django-ninja-pyc/usr/lib/python3.12/site-packages/ninja/security/__pycache__'
'usr/lib/python3.12/site-packages/ninja/management/__pycache__' -> '/home/buildozer/aports/community/py3-django-ninja/pkg/py3-django-ninja-pyc/usr/lib/python3.12/site-packages/ninja/management/__pycache__'
'usr/lib/python3.12/site-packages/ninja/management/commands/__pycache__' -> '/home/buildozer/aports/community/py3-django-ninja/pkg/py3-django-ninja-pyc/usr/lib/python3.12/site-packages/ninja/management/commands/__pycache__'
'usr/lib/python3.12/site-packages/ninja/testing/__pycache__' -> '/home/buildozer/aports/community/py3-django-ninja/pkg/py3-django-ninja-pyc/usr/lib/python3.12/site-packages/ninja/testing/__pycache__'
'usr/lib/python3.12/site-packages/ninja/orm/__pycache__' -> '/home/buildozer/aports/community/py3-django-ninja/pkg/py3-django-ninja-pyc/usr/lib/python3.12/site-packages/ninja/orm/__pycache__'
>>> py3-django-ninja-pyc*: Preparing subpackage py3-django-ninja-pyc...
>>> py3-django-ninja-pyc*: Running postcheck for py3-django-ninja-pyc
>>> py3-django-ninja*: Running postcheck for py3-django-ninja
>>> py3-django-ninja*: Preparing package py3-django-ninja...
>>> py3-django-ninja-pyc*: Tracing dependencies...
python3~3.12
>>> py3-django-ninja-pyc*: Package size: 244.0 KB
>>> py3-django-ninja-pyc*: Compressing data...
>>> py3-django-ninja-pyc*: Create checksum...
>>> py3-django-ninja-pyc*: Create py3-django-ninja-pyc-1.4.5-r0.apk
>>> py3-django-ninja*: Tracing dependencies...
py3-django
py3-pydantic
python3~3.12
>>> py3-django-ninja*: Package size: 8.3 MB
>>> py3-django-ninja*: Compressing data...
>>> py3-django-ninja*: Create checksum...
>>> py3-django-ninja*: Create py3-django-ninja-1.4.5-r0.apk
>>> py3-django-ninja: Build complete at Sat, 08 Nov 2025 01:54:40 +0000 elapsed time 0h 0m 9s
>>> py3-django-ninja: Cleaning up srcdir
>>> py3-django-ninja: Cleaning up pkgdir
>>> py3-django-ninja: Cleaning up tmpdir
>>> py3-django-ninja: Uninstalling dependencies...
( 1/64) Purging .makedepends-py3-django-ninja (20251108.015433)
( 2/64) Purging py3-django-pyc (4.2.25-r0)
( 3/64) Purging py3-django (4.2.25-r0)
( 4/64) Purging py3-asgiref-pyc (3.9.1-r0)
( 5/64) Purging py3-asgiref (3.9.1-r0)
( 6/64) Purging py3-sqlparse-pyc (0.5.3-r0)
( 7/64) Purging py3-sqlparse (0.5.3-r0)
( 8/64) Purging tzdata (2025b-r0)
( 9/64) Purging py3-pydantic-pyc (2.12.3-r0)
(10/64) Purging py3-pydantic (2.12.3-r0)
(11/64) Purging py3-annotated-types-pyc (0.7.0-r0)
(12/64) Purging py3-annotated-types (0.7.0-r0)
(13/64) Purging py3-pydantic-core-pyc (2.41.4-r0)
(14/64) Purging py3-pydantic-core (2.41.4-r0)
(15/64) Purging py3-typing-inspection-pyc (0.4.2-r0)
(16/64) Purging py3-typing-inspection (0.4.2-r0)
(17/64) Purging py3-typing-extensions-pyc (4.15.0-r0)
(18/64) Purging py3-typing-extensions (4.15.0-r0)
(19/64) Purging py3-setuptools-pyc (80.9.0-r2)
(20/64) Purging py3-setuptools (80.9.0-r2)
(21/64) Purging py3-gpep517-pyc (19-r1)
(22/64) Purging py3-gpep517 (19-r1)
(23/64) Purging py3-installer-pyc (0.7.0-r2)
(24/64) Purging py3-installer (0.7.0-r2)
(25/64) Purging py3-wheel-pyc (0.46.1-r0)
(26/64) Purging py3-wheel (0.46.1-r0)
(27/64) Purging py3-flit-core-pyc (3.12.0-r0)
(28/64) Purging py3-flit-core (3.12.0-r0)
(29/64) Purging py3-pytest-cov-pyc (5.0.0-r1)
(30/64) Purging py3-pytest-cov (5.0.0-r1)
(31/64) Purging py3-coverage-pyc (7.11.0-r0)
(32/64) Purging py3-coverage (7.11.0-r0)
(33/64) Purging py3-pytest-django-pyc (4.11.1-r0)
(34/64) Purging py3-pytest-django (4.11.1-r0)
(35/64) Purging py3-pytest-asyncio-pyc (0.25.0-r1)
(36/64) Purging py3-pytest-asyncio (0.25.0-r1)
(37/64) Purging py3-pytest-pyc (8.4.2-r1)
(38/64) Purging py3-pytest (8.4.2-r1)
(39/64) Purging py3-iniconfig-pyc (2.3.0-r0)
(40/64) Purging py3-iniconfig (2.3.0-r0)
(41/64) Purging py3-packaging-pyc (25.0-r0)
(42/64) Purging py3-packaging (25.0-r0)
(43/64) Purging py3-parsing-pyc (3.2.3-r0)
(44/64) Purging py3-parsing (3.2.3-r0)
(45/64) Purging py3-pluggy-pyc (1.6.0-r0)
(46/64) Purging py3-pluggy (1.6.0-r0)
(47/64) Purging py3-py-pyc (1.11.0-r4)
(48/64) Purging py3-py (1.11.0-r4)
(49/64) Purging py3-pygments-pyc (2.19.2-r0)
(50/64) Purging py3-pygments (2.19.2-r0)
(51/64) Purging py3-psycopg2-pyc (2.9.11-r0)
(52/64) Purging py3-psycopg2 (2.9.11-r0)
(53/64) Purging python3-pyc (3.12.12-r0)
(54/64) Purging python3-pycache-pyc0 (3.12.12-r0)
(55/64) Purging pyc (3.12.12-r0)
(56/64) Purging python3 (3.12.12-r0)
(57/64) Purging gdbm (1.26-r0)
(58/64) Purging libbz2 (1.0.8-r6)
(59/64) Purging libffi (3.5.2-r0)
(60/64) Purging libpanelw (6.5_p20251010-r0)
(61/64) Purging libpq (17.6-r0)
(62/64) Purging mpdecimal (4.0.1-r0)
(63/64) Purging sqlite-libs (3.51.0-r0)
(64/64) Purging xz-libs (5.8.1-r0)
busybox-1.37.0-r24.trigger: Executing script...
OK: 432 MiB in 109 packages
>>> py3-django-ninja: Updating the community/aarch64 repository index...
>>> py3-django-ninja: Signing the index...