Testing and Validation
Run the product's unit, browser, and container checks.
Quick Suite
npm testVitest covers business rules, endpoints, and resilience contracts.
Isolated Browser Flows
npx playwright install chromium
npm run test:e2ePlaywright uses 127.0.0.1:2510, .next-e2e, and .e2e/data. The suite verifies, among other things, keyboard navigation, reduced motion, mobile, authentication, permissions, mutations, Docker, networking, widgets, and custom tabs.
For a production-mode flow, build first and set NASDASH_E2E_SERVER_MODE=production before launching.
Docker Image
docker build --tag nasdash:smoke .
npm run test:container -- nasdash:smokeThe smoke test verifies startup, health, initial connection, 1001:1001 UID/GID, and persistence after container replacement.
Before Contributing
Also run the lint and build defined in package.json, then perform a targeted manual test on the affected features. Any destructive Docker action must target a disposable resource.