Files
gh-christianlouis-docuelevate/requirements-dev.txt
T
copilot-swe-agent[bot] 6c643e9962 fix(ci): add pytest-timeout, fix hanging test, split CI into quick + integration stages
- Add pytest-timeout>=2.3.0 to requirements-dev.txt with 120s global default
- Fix test_fallback_file_id_lookup: add missing _should_upload_* mocks that
  caused .delay() calls to hang on Redis broker connection
- Split CI test job into two stages:
  - Quick Tests (timeout: 10min, ~2min run): unit + basic integration
  - Integration Tests (timeout: 20min): Docker containers, external services
- Quick tests gate integration tests for fast-fail feedback
- Build job now depends on both test stages

Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
2026-03-01 16:43:56 +00:00

37 lines
1.0 KiB
Plaintext

# Development and testing dependencies
-r requirements.txt
# Testing
pytest>=8.0.0
pytest-cov>=4.1.0
pytest-asyncio>=0.23.0
pytest-mock>=3.12.0
pytest-timeout>=2.3.0 # Per-test timeout enforcement to prevent CI hangs
httpx>=0.26.0 # For async test client
testcontainers>=3.7.1 # For integration tests with real containers
fpdf2>=2.8.0 # For generating test PDF documents in integration tests
minio>=7.1.0 # For MinIO/S3 integration tests
redis>=4.5.0 # For Redis integration tests
boto3>=1.26.0 # For S3 integration tests
# Code quality
ruff>=0.3.0
mypy>=1.8.0
djlint>=1.36.0 # HTML template linter for accessibility and best practices
# Type stubs for mypy
types-requests>=2.31.0
types-paramiko>=3.0.0
# Security scanning (Ruff includes most security checks from bandit)
pip-audit>=2.7.0 # Dependency vulnerability scanning against OSV/PyPA advisory databases
# Pre-commit hooks
pre-commit>=3.6.0
# License compliance
pip-licenses==5.5.1 # For license compliance checking
# Release automation
python-semantic-release>=9.0.0