Files
ss-tools/.agents/command/test.unit.md
2026-08-02 22:21:07 +07:00

67 lines
1.8 KiB
Markdown

---
description: "Run fast unit tests only (backend SQLite + frontend vitest). Designed for agent verify loop — runs in <30s."
handoffs:
- label: "Fix Test Failures"
agent: "fullstack-coder"
prompt: "Fix the following test failures from the unit test run. Review the error output and implement fixes."
condition: "Tests failed"
tools: "bash, grep, read"
---
## User Input
$ARGUMENTS
## Goal
Run ONLY fast unit tests on both backend and frontend. This is the **default verification step** during development should complete in <30s with no Docker dependency.
## Required Skills
MANDATORY USE `skill({name="semantics-testing"})` test conventions, anti-tautology rules.
## Execution Steps
### 1. Run backend unit tests
```bash
make test-unit
```
This excludes `tests/integration/` and uses SQLite in-memory/temp-file databases. No Docker required.
If tests fail:
- Read the failing test file to understand the contract
- Check if the failure is in code you just changed
- Handoff to Fix Test Failures if needed
### 2. Run frontend unit tests
```bash
make test-frontend
```
This runs vitest with jsdom environment. All SvelteKit imports are mocked.
### 3. Linting (quick gate)
```bash
make lint
```
## Output Format
```
## Unit Test Results
### Backend (pytest)
- Total: N | Passed: N | Failed: N | Skipped: N
- Time: X.Xs
### Frontend (vitest)
- Total: N | Passed: N | Failed: N
### Linting
- Backend: [PASS/FAIL]
- Frontend: [PASS/FAIL]
### Overall: [PASS / FAIL]
```
## Constraints
- NEVER run `pip install` or `npm install`.
- This target MUST complete in <120s (enforced by timeout wrapper).
- If tests time out, report which files passed and which timed out.
- For agent-driven fix loops: run `make test-unit` after every backend change, `make test-frontend` after every frontend change.