Skip to content

Tests: Go and C++ - #31

Open
kserrec wants to merge 7 commits into
mainfrom
tests-cpp-go
Open

Tests: Go and C++#31
kserrec wants to merge 7 commits into
mainfrom
tests-cpp-go

Conversation

@kserrec

@kserrec kserrec commented Jul 8, 2026

Copy link
Copy Markdown
Owner

Go verified locally. C++ needs GCC 14, so its expected output gets captured from this PR's first (intentionally red) CI run, then committed — observed output only, per the roadmap's working agreement.

🤖 Generated with Claude Code

kserrec and others added 7 commits July 8, 2026 05:46
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
test.sh + real-run-captured expected-output.txt for each, plus their
apt toolchains (ruby, lua5.4, ghc) in the CI workflow. All three PASS
locally. Completes roadmap Step 3.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
FAIL now means only that a test ran and produced the wrong output or a
nonzero exit — a real problem, and the sole reason the script exits
nonzero. A toolchain that isn't installed here reads as SKIP (command
not found, or exit 42), and a folder with no captured baseline yet reads
as PENDING with its output printed for capture. On CI (CI env var set) a
SKIP is upgraded to FAIL so a broken toolchain install can't hide.

C++ test.sh now requires g++-14 and exits 42 when absent, so an older
dev-machine g++ that can't compile C++23 <print> reads as SKIP, not a
compile FAIL.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
test.sh for all four: ocaml lambda_core.ml, elixir lambda-core.exs,
dotnet fsi lambda-core.fsx, and cd lambda-core && clj -M:test for the
Clojure deps.edn test runner. Workflow installs ocaml+elixir via apt and
the Clojure CLI via its official installer; F# uses the runner's
preinstalled dotnet.

OCaml and Elixir expected-output.txt captured from real local runs and
PASSing. F# and Clojure baselines still pending — capture from the CI
log per the C++ pattern.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
F# expected-output.txt captured from the PR #31 CI run (its source prints
no blank line between the LOGIC and CHURCH NUMERALS sections, unlike the
others). F# now PASSes on CI.

The first CI run showed Clojure's `clj -M:test` printing "Please install
rlwrap ... or use clojure instead" instead of the test output — `clj` is
the interactive rlwrap wrapper. Switched to `clojure -M:test`, the
non-interactive launcher, to be captured on the next CI run.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
clojure -M:test now runs the deps.edn test runner cleanly; its output
(7 tests, 56 assertions, 0 failures) captured from the PR #31 CI log.
All four Step-4 languages are green on CI.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant