# Testing Backend (SAS) tests are run with the sasjs CLI from the `sas/` directory. ## Commands - Full deploy + test cycle: `npm run 4gl` (compiles, deploys to the 4gl target, runs makedata) then `sasjs test -t 4gl`. - Run tests only (no rebuild/redeploy): `sasjs test -t 4gl`. - Run a subset of tests: `sasjs test -t 4gl SOMESTRING` — the positional argument filters to matching tests (e.g. `sasjs test -t 4gl stagedata.test.3`). ## Results - Test results: `sas/sasjsresults/testResults.json` / `.csv` / `.xml` - Individual test logs: `sas/sasjsresults/logs/.log` (e.g. `services_editors_stagedata.test.3.log`) - Coverage: `sas/sasjsresults/coverage.lcov` ## Notes - Test source files live in `sas/sasjs/**`; `sas/sasjsbuild/` is generated build output — do not hand-edit it. - `sasjs test` executes tests against the deployed app, so run `npm run 4gl` first after changing any service/hook/test code. - Assertions are made with `%mp_assert()`; results are written to `work.test_results`.