mirror of
https://github.com/aaddrick/claude-desktop-debian.git
synced 2026-05-17 00:26:21 +03:00
* ci: run BATS test suite on push and PR The /tests/ directory has 186 BATS tests (launcher-common, launcher-xrdp-detection, and four cowork-*.bats files) but no workflow ever invoked `bats` — the entire suite was effectively inert. A regression in launcher-common.sh or cowork-vm-service.js would not fail any check, including the BATS suite added by PR #395. Add a standalone tests.yml workflow that: - installs bats + nodejs - runs `bats tests/*.bats` - executes on every PR - executes on pushes to main Push triggers are path-filtered to: - tests/ - scripts/ - .github/workflows/tests.yml PR triggers remain unfiltered so required-check behaviour stays predictable. Kept this standalone rather than extending test-artifacts.yml so unit tests run in seconds instead of waiting for full artifact builds. This can be promoted to a build gate later once it proves stable in CI. CODEOWNERS - adds /.github/workflows/tests.yml under @sabiut - keeps /tests/cowork-*.bats ownership with @RayCharlizard This PR only enables CI coverage for existing tests and does not modify cowork test logic. * fix(tests): unset XDG_CONFIG_HOME in cowork-bwrap-config setup The "doctor: reports custom bwrap mounts" and "doctor: warns about disabled critical mount /usr" tests failed in CI but passed locally. Root cause: - _doctor_check_bwrap_mounts in scripts/doctor.sh resolves the config dir via ${XDG_CONFIG_HOME:-$HOME/.config}/Claude - The test setup() only sandboxes HOME via TEST_TMP - GitHub Actions runners export XDG_CONFIG_HOME ambient - Function reads the runner's real config dir, not the test fixture, and silently emits no output - Assertions on /opt/tools, WARN, etc. fail Surfaced by PR #520 wiring BATS into CI for the first time; the bug existed before but was hidden by the suite never running. Fix: unset XDG_CONFIG_HOME in setup() so the function falls back to \$HOME/.config (which is sandboxed). Comment in the file documents why HOME alone is insufficient. Verified: 186/186 pass with XDG_CONFIG_HOME set ambient (reproduces CI env).