Vendor clojure-test-suite as a standing gate (make cts)
jank-lang/clojure-test-suite (per-core-fn clojure.test suites shared across Clojure dialects) joins the default gate as vendor/clojure-test-suite, run by host/chez/cts.sh: one joltc process per test namespace (a hang or crash is contained by a per-process timeout), through the test/chez/cts-app project and its cts-run runner, parallel workers. Gating is exact per namespace against test/chez/cts-known-failures.txt, like certify's allowlist: a namespace doing worse than the baseline fails, and one doing better also fails as stale until the baseline is updated in the same change. JOLT_CTS_WRITE_BASELINE=1 regenerates it; JOLT_CTS_NS runs a subset verbosely. Current standing: 243 namespaces, 5302 assertions pass, 340 fail + 236 error across 88 namespaces pinned in the baseline (dominant clusters: BigDecimal arithmetic operands, derive/ancestors hierarchy, transients, special-symbol?, clojure.string case fns, the accepted narrow-int and seq-type-model divergences). Two consecutive full runs produce identical counts. Wired into make ci; skips cleanly when the submodule isn't checked out.
This commit is contained in:
parent
8ffc2f68c5
commit
edfd67a322
6 changed files with 249 additions and 2 deletions
|
|
@ -32,6 +32,16 @@ answers with `regen-corpus.clj` and re-certify with `test/conformance/certify.cl
|
|||
- `selfcheck.sh` — self-host fixpoint: `bootstrap.ss` rebuild byte-equals the
|
||||
checked-in seed (`host/chez/seed/`).
|
||||
- `smoke.sh` — real `bin/joltc -e` CLI smoke.
|
||||
- `cts.sh` — the vendored [jank-lang/clojure-test-suite](https://github.com/jank-lang/clojure-test-suite)
|
||||
(`vendor/clojure-test-suite`, a per-core-fn clojure.test suite shared across
|
||||
Clojure dialects), run one namespace per `joltc` process (a hang or crash is
|
||||
contained) through the `test/chez/cts-app` project and `cts-run` runner.
|
||||
Per-namespace fail/error counts must exactly match the checked-in baseline
|
||||
`test/chez/cts-known-failures.txt` — a namespace doing worse fails the gate,
|
||||
and one doing better fails as stale until the baseline is updated in the same
|
||||
change. `make cts`;
|
||||
`JOLT_CTS_NS=ns1,ns2` runs a subset verbosely,
|
||||
`JOLT_CTS_WRITE_BASELINE=1` regenerates the baseline.
|
||||
|
||||
## Other Chez tests
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue