diff options
| author | Craig Jennings <c@cjennings.net> | 2026-06-13 15:21:04 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-06-13 15:21:04 -0500 |
| commit | c636bc94cb0aef7eaa8370e453abe86a026110da (patch) | |
| tree | fc863dd9bf28e771e0fd04506c2ef07e0c4a9dc3 /scripts/theme-studio/Makefile | |
| parent | 601396bb6384ae6d1634137df4252896b35261df (diff) | |
| download | dotemacs-c636bc94cb0aef7eaa8370e453abe86a026110da.tar.gz dotemacs-c636bc94cb0aef7eaa8370e453abe86a026110da.zip | |
Add theme studio generated file check
Diffstat (limited to 'scripts/theme-studio/Makefile')
| -rw-r--r-- | scripts/theme-studio/Makefile | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/scripts/theme-studio/Makefile b/scripts/theme-studio/Makefile index a7455b3d..6cf48f66 100644 --- a/scripts/theme-studio/Makefile +++ b/scripts/theme-studio/Makefile @@ -13,7 +13,7 @@ HERE := $(dir $(abspath $(lastword $(MAKEFILE_LIST)))) # Optional palette seed for `gen` / `open`: make gen SEED=dupre.json SEED ?= -.PHONY: help test check coverage gen open +.PHONY: help test check check-generated coverage gen open .DEFAULT_GOAL := help @@ -21,6 +21,7 @@ help: @echo "theme-studio targets:" @echo " make test - Full suite: Python + Node + browser hash gates" @echo " make check - Fast gate: regenerate + Python + Node (no browser)" + @echo " make check-generated - Verify committed theme-studio.html is current" @echo " make coverage - JS (node) + generate.py (uvx coverage) numbers" @echo " make gen [SEED=x.json] - Regenerate theme-studio.html (optionally from a seed)" @echo " make open [SEED=x.json] - Regenerate and open the page in Chrome" @@ -31,6 +32,14 @@ test: check: @./run-tests.sh --no-browser +check-generated: + @tmp="$$(mktemp)"; \ + cp theme-studio.html "$$tmp"; \ + restore() { cp "$$tmp" theme-studio.html; rm -f "$$tmp"; }; \ + if ! python3 generate.py >/dev/null; then restore; exit 1; fi; \ + if cmp -s theme-studio.html "$$tmp"; then rm -f "$$tmp"; echo "theme-studio.html is current"; \ + else restore; echo "theme-studio.html is stale; run make gen and commit it" >&2; exit 1; fi + coverage: @echo "== JS coverage (node --experimental-test-coverage) ==" @node --test --experimental-test-coverage ./*.mjs 2>/dev/null \ |
