forked from bots-garden/ori
| ✨ Workspace panel, selectors, previews, desktop app, sandbox template, resizable file tree, light/dark theme | 1 | # How to run the tests |
| 2 | ||
| 3 | This guide shows how to run Ori's test suites. It assumes the frontend dependencies are installed (`make deps`). | |
| 4 | ||
| 5 | ## Steps | |
| 6 | ||
| 7 | 1. From the repository root, run everything: | |
| 8 | ||
| 9 | ```bash | |
| 10 | make test | |
| 11 | ``` | |
| 12 | ||
| 13 | This runs the Go suite (`go test ./...`) followed by the frontend suite (`vitest run`). Both must end green. | |
| 14 | ||
| ✨ Switch the ACP adapter to @agentclientprotocol/claude-agent-acp (template 0.0.2) | 15 | The frontend script sets `NODE_OPTIONS=--no-experimental-webstorage`: Node 25 ships a built-in `localStorage` without `clear()` that shadows jsdom's and fails every store test. The flag is known to Node 22 and later, so it is harmless on older runtimes. |
| 16 | ||
| ✨ Workspace panel, selectors, previews, desktop app, sandbox template, resizable file tree, light/dark theme | 17 | ## Variants |
| 18 | ||
| 19 | - Backend only: `make test-go` — unit tests for every package plus an end-to-end test that compiles the mock agent, spawns it as a real subprocess and drives a real WebSocket client through a full turn. | |
| 20 | - Frontend only: `make test-ui` — reducer, WebSocket client and component tests under jsdom. | |
| 21 | - With the race detector: `go test -race ./...`. | |
| 22 | - Skipping the end-to-end test (fast feedback): `go test -short ./...`. | |
| 23 | ||
| 24 | ## See also | |
| 25 | ||
| 26 | - Where each suite lives and what it covers: [explanation: architecture](../explanation/architecture.md) |