Files
automaton/tasks/complete/add-pytest-test-suite/SPEC.md
T
Lap Tran 4a2301b077
CI / build (push) Has been cancelled
Archive completed tasks, add cleanup commands, self-documenting dashboard UI
- Archive 79 completed framework-dev tasks from tasks/ -> tasks/complete/
- status.py: add --cleanup-done and --install-cleanup-schedule commands
- Add scripts/automaton-cleanup.sh for periodic task archiving
- Dashboard: rename 'Background' tab -> 'Agent', 'Cleanup' agent -> 'Completed Task Archiver', remove redundant group headers and pill badges, dim inactive agent placeholders
- .rules.md: add Self-Documenting UI Names rule
- New tests: test_cleanup_done.py, expanded test_app.py and test_task.py
2026-06-24 22:43:33 -04:00

1.2 KiB

SPEC: Add pytest Test Suite

Goal

Add automated tests for the dashboard and the new VRAM detection script.

Requirements

  1. Create tests/test_scope.py for scope detection.
  2. Create tests/test_task.py for task state determination and sub-task parsing.
  3. Create tests/test_board.py for Kanban board grouping and filtering.
  4. Create tests/test_stats.py for statistics calculations.
  5. Create tests/test_config.py for config validation and defaults.
  6. Create tests/test_app.py for dashboard HTTP API endpoints and path-traversal guard.
  7. Create tests/test_vram_detect.py for the VRAM detector using mocked system data.
  8. Update pyproject.toml with optional dependencies:
    • test extra: pytest
    • dashboard extra: inotify (optional)
  9. Update .gitignore for .pytest_cache/.

Acceptance Criteria

  • python -m pytest discovers and passes all tests.
  • Tests exercise state determination, filtering, API responses, config validation, and VRAM detection.
  • pyproject.toml includes the optional dependency groups.

Non-Goals

  • Achieving 100% coverage.
  • Testing shell scripts (handled separately).

Stop Condition

When all acceptance criteria are met, output "CONTRACT_MET".