From f3743b3c7f4a13882dd54ea1f6dbc4d27751bf14 Mon Sep 17 00:00:00 2001 From: Hojun-Cho Date: Mon, 22 Jun 2026 02:39:38 +0900 Subject: [PATCH] test: run test/lang @test corpus via the test-lang make target MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The four test/lang/*_test.ww in-language @test files had no make target running them — dead coverage that could rot silently. Add a standalone test-lang target running each through the cstage `ww test` subcommand (one package per invocation; set -e gives the gate teeth). Imports resolve via the driver's self_dir/../../lib fallback, so no lib env. Kept out of make test/test-unit/test-commit: that wiring is fold 6 and is gated on the T1 behavior corpus reaching parity before byte-id is demoted to pre-push. --- Makefile | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 3856ecfc..f2b286a3 100644 --- a/Makefile +++ b/Makefile @@ -3675,6 +3675,17 @@ RUNWW_CASES = $(wildcard test/wcc/data/*/case.ww) test-run: all @BIN=$(BIN) $(BIN)/ww run test/runww.ww $(RUNWW_CASES) +# ---- test-lang: in-language @test behavior corpus (fold 2) ------------- +# Runs each test/lang/*_test.ww through the cstage `ww test` subcommand. +# Each file is its own package, so one file per invocation. A failing +# @test exits non-zero and fails the target. Imports (rt/strings) resolve +# via the driver's self_dir/../../lib fallback, so no lib env is needed. +# NOT yet wired into `make test` (fold 6, gated on the T1 corpus). +test-lang: all + @set -e; for f in $(wildcard test/lang/*_test.ww); do \ + echo "ww test $$f"; $(BIN)/ww test $$f; \ + done; echo "test-lang: all ok" + # ---- test-commit: per-commit default (task #10 T1) --------------------- # Full suite, but content-key-SKIPS the expensive wwstage byte-id / # self-compile gates (950/989_lib_byteid/990-997) when their input set is @@ -3865,4 +3876,4 @@ nocc: @echo @echo "NOCC OK: $(STAGE0)/* reproduces itself from source. cc not invoked." -.PHONY: all cstage wwstage test test-unit test-commit test-run smoke sizelint peellint install clean bootstrap nocc bootstrap-snapshot +.PHONY: all cstage wwstage test test-unit test-commit test-run test-lang smoke sizelint peellint install clean bootstrap nocc bootstrap-snapshot