From 470e134d1a4df4314e949715d067f09cdeeb5330 Mon Sep 17 00:00:00 2001 From: Harnoor Lal Date: Tue, 14 Apr 2026 00:57:27 -0700 Subject: [PATCH] ci: add cargo test job on ubuntu + macos matrix The 23 unit tests had no CI gate. Local cargo test passes were the only signal; a regression could merge if the maintainer forgot to run tests before pushing. Runs cargo test --release on a matrix of [ubuntu-latest, macos-latest]. The tests are pure logic (parser, format conversion, name validation) with dependency surface bounded only by what the production code compiles for. Production code uses Unix APIs (std::os::unix, libc::localtime_r) so it compiles on Linux + macOS but not Windows; running on both members of that surface verifies the platform- independence we implicitly assert. The existing x86_64 lima Fedora VM job is unchanged. It tests `atomic-rollback check` against a real Fedora 43 environment, which is its own (deeper) dependency surface. The new tests job tests pure logic at the root of the dependency graph. --- .github/workflows/ci.yml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0f20f51..a7424c8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -5,6 +5,17 @@ on: branches: ['**'] jobs: + tests: + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + os: [ubuntu-latest, macos-latest] + timeout-minutes: 5 + steps: + - uses: actions/checkout@v4 + - run: cargo test --release + x86_64: runs-on: ubuntu-24.04 timeout-minutes: 10