Tesria

Running the tests

Every change must keep the tests passing, and the same tests run on every push and pull request on GitHub. None of them needs Docker.

The server

Bash / Shell
dotnet test tests/Api.Tests

Over nine hundred tests, run against an in-memory SQLite database that stands in for PostgreSQL, so they need no database at all. They take about eight minutes. Most start the whole app in memory and talk to it over HTTP, the way a real client would.

The web app

Bash / Shell
cd src/web npm ci npm run build npm run lint npm test

The build includes a strict TypeScript check. The web app’s tests are for logic with edge cases, not for how screens look.

Dependencies

Bash / Shell
scripts/audit.sh

Checks every dependency, of the web app, the collaboration service and the server, against published vulnerabilities. It must pass before a release, and after any change to a package list.

Looking at it

Tests prove logic, not that a screen works. For a change you can see, rebuild the app and try it in a browser: every screen it touches, signed in and signed out, on a phone-sized window as well as a wide one.


Applies to

Tesria 0.6 and later

Updated

September 24, 2026

Changes

Written for Tesria 0.6.