docling-studio/document-parser/infra
Pier-Jean Malandrino cfc5bb5c35 feat: add E2E API tests with Karate V2
Set up a full E2E test suite (39 scenarios) using Karate against
the real API stack. Hybrid architecture: domain-based features +
cross-domain workflows, with data-driven testing and callable helpers.

Structure:
- e2e/pom.xml: Maven + karate-core 1.5
- 3 helpers (upload, analyze+poll, cleanup)
- 3 JSON schemas (health, document, analysis)
- 12 feature files across health, documents, analyses, workflows
- Tags: @smoke (2), @regression (35), @e2e (2)
- generate-test-data.py: fpdf2-based PDF generation (no binaries)

Also adds:
- RATE_LIMIT_RPM env var to make rate limiter configurable (0=disabled)
- CI job e2e with needs: [backend, frontend]
- e2e/ in .dockerignore

Closes #119
2026-04-08 13:47:03 +02:00
..
__init__.py Refactor backend to hexagonal architecture for converter extensibility 2026-03-31 10:34:07 +02:00
bbox.py Move bbox.py from domain/ to infra/ and unify coordinate logic 2026-04-03 13:17:26 +02:00
local_chunker.py Fix import ordering violations (ruff I001) 2026-04-03 14:05:38 +02:00
local_converter.py feat: batch large documents with page_range and progress reporting 2026-04-07 17:54:40 +02:00
rate_limiter.py Add in-memory rate limiting middleware 2026-04-03 13:56:05 +02:00
serve_converter.py feat: batch large documents with page_range and progress reporting 2026-04-07 17:54:40 +02:00
settings.py feat: add E2E API tests with Karate V2 2026-04-08 13:47:03 +02:00