quartermaster/tests
archeious 8fec2fdff7 test: cover lifecycle transitions, balance gate, and edit-locking
Service tests walk Planning -> Active -> Closed -> Active and
confirm rejects on out-of-order transitions. Close rejects when
applied zero is nonzero; succeeds when balanced; reopens cleanly.
Route tests confirm each endpoint's status codes, HX-Redirect
headers, and that the page renders the right badge and button per
state. Closed months reject every mutation with 400 and their
rendered HTML carries disabled inputs without add forms or delete
buttons.

Refs #15

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-17 13:04:06 -06:00
..
__init__.py test: cover CRUD, debt target selection, and ON DELETE SET NULL 2026-04-17 11:04:18 -06:00
conftest.py test: cover CRUD, debt target selection, and ON DELETE SET NULL 2026-04-17 11:04:18 -06:00
test_backup_script.py test: cover backup-db.sh exit paths and slug sanitisation 2026-04-17 11:51:55 -06:00
test_groups.py test: cover group mapping, subtotals, default state, and OOB swaps 2026-04-17 12:44:21 -06:00
test_month_lifecycle.py test: cover lifecycle transitions, balance gate, and edit-locking 2026-04-17 13:04:06 -06:00
test_month_routes.py test: cover month snapshot, deviation states, and per-month target 2026-04-17 11:57:30 -06:00
test_month_service.py test: cover month snapshot, deviation states, and per-month target 2026-04-17 11:57:30 -06:00
test_notes.py test: cover notes add, update, clear, snapshot copy, and no-deviation 2026-04-17 12:51:36 -06:00
test_routes.py test: cover CRUD, debt target selection, and ON DELETE SET NULL 2026-04-17 11:04:18 -06:00
test_service.py test: cover CRUD, debt target selection, and ON DELETE SET NULL 2026-04-17 11:04:18 -06:00
test_zero_amount.py test: cover zero-amount math and OOB rendering 2026-04-17 12:06:45 -06:00