82 tests covering download.ts and all React Query hooks. API modules are mocked with vi.mock; mutation tests spy on queryClient.invalidateQueries to verify cache invalidation. Conditional queries (null id) are verified to stay idle. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1.2 KiB
1.2 KiB
title, status, type, priority, created_at, updated_at
| title | status | type | priority | created_at | updated_at |
|---|---|---|---|---|---|
| Implement Unit & Integration Tests | todo | epic | high | 2026-02-10T09:32:47Z | 2026-02-21T11:29:02Z |
Add comprehensive unit and integration test coverage to both the backend (FastAPI/Python) and frontend (React/TypeScript). The project currently has zero tests — pytest is configured in pyproject.toml with pytest-asyncio and httpx, but no actual test files exist. The frontend has no test tooling at all.
Scope:
- Unit tests for isolated logic (schemas, services, utilities)
- Integration tests for API endpoints (using httpx AsyncClient against a test database)
- Frontend unit/component tests (using Vitest + React Testing Library)
Explicitly out of scope:
- End-to-end / browser tests (e.g. Selenium, Playwright) — requires specialised infrastructure
Success Criteria
- Backend test infrastructure is set up (conftest, fixtures, test DB)
- Backend schemas and services have unit test coverage
- Backend API endpoints have integration test coverage
- Frontend test infrastructure is set up (Vitest, RTL)
- Frontend utilities and hooks have unit test coverage
- Frontend components have basic render/interaction tests