Imago/test_output.txt
Bruno Charest cc99fea20a
Some checks failed
CI / Lint & Format (push) Has been cancelled
CI / Tests (push) Has been cancelled
CI / Security Scan (push) Has been cancelled
CI / Docker Build (push) Has been cancelled
Add comprehensive test suite for image processing and related services
- Implement tests for database generator to ensure proper session handling.
- Create tests for EXIF extraction and conversion functions.
- Add tests for image-related endpoints, ensuring proper data retrieval and isolation between clients.
- Develop tests for OCR functionality, including language detection and text extraction.
- Introduce tests for the image processing pipeline, covering success and failure scenarios.
- Validate rate limiting functionality and ensure independent counters for different clients.
- Implement scraper tests to verify HTML content fetching and error handling.
- Add unit tests for various services, including storage and filename generation.
- Establish worker entry point for ARQ to handle background image processing tasks.
2026-02-24 11:22:10 -05:00

58 lines
4.4 KiB
Plaintext

============================= test session starts =============================
platform win32 -- Python 3.14.3, pytest-9.0.1, pluggy-1.6.0 -- C:\Users\bruno\scoop\apps\python\current\python.exe
cachedir: .pytest_cache
rootdir: C:\dev\git\python\imago\imago
configfile: pytest.ini
plugins: anyio-4.12.0, asyncio-1.3.0, cov-7.0.0, mock-3.15.1, respx-0.22.0
asyncio: mode=Mode.AUTO, debug=False, asyncio_default_fixture_loop_scope=None, asyncio_default_test_loop_scope=function
collecting ... collected 22 items
tests/test_auth.py::test_no_auth_returns_401 PASSED [ 4%]
tests/test_auth.py::test_invalid_key_returns_401 PASSED [ 9%]
tests/test_auth.py::test_no_bearer_prefix_returns_401 PASSED [ 13%]
tests/test_auth.py::test_empty_bearer_returns_401 PASSED [ 18%]
tests/test_auth.py::test_valid_key_returns_200 PASSED [ 22%]
tests/test_auth.py::test_inactive_client_returns_401 PASSED [ 27%]
tests/test_auth.py::test_missing_scope_returns_403 PASSED [ 31%]
tests/test_auth.py::test_scope_images_read_allowed PASSED [ 36%]
tests/test_auth.py::test_key_rotation PASSED [ 40%]
tests/test_auth.py::test_create_client_returns_key_once PASSED [ 45%]
tests/test_auth.py::test_list_clients_admin_only PASSED [ 50%]
tests/test_auth.py::test_update_client PASSED [ 54%]
tests/test_auth.py::test_soft_delete_client PASSED [ 59%]
tests/test_isolation.py::test_client_a_image_invisible_to_client_b PASSED [ 63%]
tests/test_isolation.py::test_client_b_cannot_read_client_a_image PASSED [ 68%]
tests/test_isolation.py::test_client_b_cannot_delete_client_a_image PASSED [ 72%]
tests/test_isolation.py::test_listing_returns_only_own_images PASSED [ 77%]
tests/test_isolation.py::test_reprocess_other_client_image_returns_404 PASSED [ 81%]
tests/test_isolation.py::test_sub_endpoints_other_client_returns_404 PASSED [ 86%]
tests/test_rate_limit.py::test_rate_limit_headers_present PASSED [ 90%]
tests/test_rate_limit.py::test_rate_limit_per_client_independent PASSED [ 95%]
tests/test_rate_limit.py::test_rate_limiter_is_configured PASSED [100%]
============================== warnings summary ===============================
..\..\..\..\..\Users\bruno\scoop\apps\python\current\Lib\site-packages\google\genai\types.py:32
C:\Users\bruno\scoop\apps\python\current\Lib\site-packages\google\genai\types.py:32: DeprecationWarning: '_UnionGenericAlias' is deprecated and slated for removal in Python 3.17
VersionedUnionType = Union[typing.types.UnionType, typing._UnionGenericAlias]
..\..\..\..\..\Users\bruno\scoop\apps\python\current\Lib\site-packages\slowapi\extension.py:717
..\..\..\..\..\Users\bruno\scoop\apps\python\current\Lib\site-packages\slowapi\extension.py:717
..\..\..\..\..\Users\bruno\scoop\apps\python\current\Lib\site-packages\slowapi\extension.py:717
..\..\..\..\..\Users\bruno\scoop\apps\python\current\Lib\site-packages\slowapi\extension.py:717
C:\Users\bruno\scoop\apps\python\current\Lib\site-packages\slowapi\extension.py:717: DeprecationWarning: 'asyncio.iscoroutinefunction' is deprecated and slated for removal in Python 3.16; use inspect.iscoroutinefunction() instead
if asyncio.iscoroutinefunction(func):
..\..\..\..\..\Users\bruno\scoop\apps\python\current\Lib\site-packages\fastapi\routing.py:233: 38 warnings
C:\Users\bruno\scoop\apps\python\current\Lib\site-packages\fastapi\routing.py:233: DeprecationWarning: 'asyncio.iscoroutinefunction' is deprecated and slated for removal in Python 3.16; use inspect.iscoroutinefunction() instead
is_coroutine = asyncio.iscoroutinefunction(dependant.call)
..\..\..\..\..\Users\bruno\scoop\apps\python\current\Lib\site-packages\starlette\_utils.py:40: 42 warnings
tests/test_auth.py: 9 warnings
tests/test_isolation.py: 15 warnings
tests/test_rate_limit.py: 3 warnings
C:\Users\bruno\scoop\apps\python\current\Lib\site-packages\starlette\_utils.py:40: DeprecationWarning: 'asyncio.iscoroutinefunction' is deprecated and slated for removal in Python 3.16; use inspect.iscoroutinefunction() instead
return asyncio.iscoroutinefunction(obj) or (callable(obj) and asyncio.iscoroutinefunction(obj.__call__))
-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
====================== 22 passed, 112 warnings in 1.60s =======================