Skip to content

Testing and Packaging

  • tests/test_client.py: sync client behavior
  • tests/test_async_client.py: async client behavior
  • tests/test_models.py: Pydantic model validation
  • tests/conftest.py: fixtures and shared test setup

Tooling:

  • pytest
  • pytest-asyncio
  • pytest-httpx
  • pytest-cov
  • ruff
  • mypy

pytest options include strict markers/config and coverage reports.

  1. Add/update Pydantic models in models.py.
  2. Implement new methods in both sync and async clients.
  3. Route HTTP through _request_json for consistent retry/error behavior.
  4. Add tests for sync, async, and models.
  5. Keep README and docs synchronized with behavior.
  6. Preserve backward compatibility where possible.
  • Build backend: setuptools.build_meta
  • Build artifacts: python -m build -> wheel + sdist in dist/
  • Dev install: pip install -e .[dev]
  • py.typed included for PEP 561 typing support