schiphol/pyproject.toml
Peter 47b8fd29f8 test: add pytest infrastructure and poll() tests
- Add pytest and pytest-asyncio as optional dev dependencies
- Configure asyncio_mode=auto and pythonpath=[src] in pyproject.toml
- Write three tests at the poll() seam:
  * single-page response publishes all Flights and returns the count
  * paginated response follows link:rel=next and publishes all pages
  * HTTP error from raise_for_status() propagates out of poll()

Tests use injected stub HTTP session and mock Kafka engine;
no real network or broker required.

Closes #4

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-07-19 09:07:27 +02:00

56 lines
1.1 KiB
TOML

[project]
name = "schiphol"
version = "0.1.0"
description = "Add your description here"
readme = "README.md"
requires-python = ">=3.14"
dependencies = [
"aiorun>=1.6.0",
"datamodel-code-generator>=0.49.0",
"kstreams>=0.10.0",
"pip>=25.3",
"pydantic>=2.12.5",
"pydantic-settings>=2.12.0",
"python-schema-registry-client>=2.6.1",
"requests>=2.32.5",
"requests-ratelimiter>=0.6.0",
"opentelemetry-api>=1.27.0",
"opentelemetry-sdk>=1.27.0",
"opentelemetry-exporter-otlp>=1.27.0",
"opentelemetry-instrumentation-requests>=0.48b0",
]
[project.scripts]
schiphol = "src.main:main"
[project.optional-dependencies]
dev = [
"pytest>=8.0",
"pytest-asyncio>=0.24",
]
[tool.pytest.ini_options]
asyncio_mode = "auto"
testpaths = ["tests"]
pythonpath = ["src"]
[build-system]
requires = ["setuptools>=61.0"]
build-backend = "setuptools.build_meta"
[tool.setuptools.packages.find]
where = ["."]
include = ["src*"]
[tool.ruff]
line-length = 100
target-version = "py314"
[tool.ruff.lint]
select = ["E", "F", "I", "UP", "B", "SIM"]
ignore = []
[tool.ruff.format]
quote-style = "double"
indent-style = "space"