# How to run the tests This guide shows how to run Ori's test suites. It assumes the frontend dependencies are installed (`make deps`). ## Steps 1. From the repository root, run everything: ```bash make test ``` This runs the Go suite (`go test ./...`) followed by the frontend suite (`vitest run`). Both must end green. 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. ## Variants - 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. - Frontend only: `make test-ui` — reducer, WebSocket client and component tests under jsdom. - With the race detector: `go test -race ./...`. - Skipping the end-to-end test (fast feedback): `go test -short ./...`. ## See also - Where each suite lives and what it covers: [explanation: architecture](../explanation/architecture.md)