Skip to content

CI: add --no-tests=error, run the CMake-path Octave unit suite, add platform coverage #34

Description

@zgimbutas

Found in the July 2026 AI-assisted code review (Claude Code). Three gaps let CI pass without running the tests it appears to run.

  1. ctest -R '^octave-' passes green if zero tests were registered. If Octave detection fails at configure time, test registration is silently skipped (warning at most) and ctest exits 0 on "No tests were found". Add --no-tests=error to the octave job's ctest invocation in .github/workflows/ci.yml.

  2. The CMake-path Octave unit suite never runs anywhere. mwrap.octave.test_all (testing/CMakeLists.txt) is excluded by the octave job's -R '^octave-' regex (name starts with mwrap.), and its prerequisite target mwrap_testing_mex is never built in that job (only mwrap_examples is). Build the target and include the test; also add a dependency/fixture so a plain ctest doesn't fail on missing MEX files.

  3. All five jobs are ubuntu-latest. NEWS advertises a Windows msys2/mingw64 fix (#include <stdint.h> for int64_t) that nothing exercises. Consider a macos-latest job (cheap) and a Windows msys2 job.

Also worth noting: the pure-CMake job with default options runs only two tests (test_syntax + test_typecheck) — no generation or MEX coverage.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions