@@ -155,7 +155,50 @@ deploy-docs-to-testsliderule: ## Deploy the docs to the testsliderule.org cloudf
155155destroy-docs-testsliderule : # # Destroy the web client from the testsliderule.org cloudfront and remove the S3 bucket
156156 make destroy DOMAIN=docs.testsliderule.org S3_BUCKET=testsliderule-docs DOMAIN_APEX=testsliderule.org
157157
158- .PHONY : check-vars
158+ .PHONY : check-vars typecheck lint test-unit test-unit-watch coverage-unit test-e2e test-all ci-check
159+ # =========================
160+ # Testing / Quality targets
161+ # =========================
162+
163+ typecheck : # # Run TypeScript type checking
164+ cd web-client && npm run typecheck
165+
166+ lint : # # Run ESLint
167+ cd web-client && npm run lint
168+
169+ test-unit : # # Run Vitest unit tests (CI-friendly)
170+ cd web-client && npm run test:unit
171+
172+ test-unit-watch : # # Run Vitest in watch mode (local dev)
173+ cd web-client && npm run test:unit:watch
174+
175+ coverage-unit : # # Run unit tests with coverage report
176+ cd web-client && npm run coverage:unit
177+
178+ test-e2e : # # Run Playwright E2E tests
179+ cd web-client && npm run test:e2e
180+
181+ test-e2e-headed : # # Run Playwright tests in headed mode
182+ cd web-client && npm run test:e2e:headed
183+
184+ test-e2e-ui : # # Open the Playwright Test UI (Explorer)
185+ cd web-client && npm run test:e2e:ui
186+
187+ test-e2e-debug : # # Run Playwright in debug mode (PWDEBUG=1)
188+ cd web-client && npm run test:e2e:debug
189+
190+ test-all : typecheck lint test-unit test-e2e # # Run all checks
191+
192+ pw-report : # # Open the last Playwright HTML report
193+ cd web-client && npm run pw:report
194+
195+ ci-check : # # CI gate: clean install + types + lint + unit + e2e
196+ cd web-client && npm ci
197+ cd web-client && npm run typecheck
198+ cd web-client && npm run lint
199+ cd web-client && npm run test:unit
200+ cd web-client && npm run test:e2e
201+
159202check-vars :
160203 @test -n " $( DOMAIN) " || (echo " ❌ DOMAIN is not set" ; exit 1)
161204 @test -n " $( S3_BUCKET) " || (echo " ❌ S3_BUCKET is not set" ; exit 1)
@@ -166,8 +209,7 @@ check-vars:
166209 @echo " DOMAIN_APEX = $( DOMAIN_APEX) "
167210 @echo " S3_BUCKET = $( S3_BUCKET) "
168211 @echo " DISTRIBUTION_ID = $( DISTRIBUTION_ID) "
169-
170-
212+
171213help : # # That's me!
172214 @printf " \033[37m%-30s\033[0m %s\n" " #-----------------------------------------------------------------------------------------"
173215 @printf " \033[37m%-30s\033[0m %s\n" " # Makefile Help "
0 commit comments