Skip to content

chore(test): Clean up testing guide and Makefile testing dependency checks#9611

Merged
matthewmcneely merged 3 commits intomainfrom
chore/testing-docs-and-deps-polish
Mar 2, 2026
Merged

chore(test): Clean up testing guide and Makefile testing dependency checks#9611
matthewmcneely merged 3 commits intomainfrom
chore/testing-docs-and-deps-polish

Conversation

@mlwelles
Copy link
Contributor

Summary

  • Rename make depsmake check-deps with consistent check-deps-* prefixes across all 7 check scripts and Makefile targets
  • Add Makefile-level OS-dispatched install-deps-* targets for darwin (Homebrew-based) and linux (apt/dnf/pacman detection), replacing script-internal install logic
  • Add Docker memory check (check-docker-available-memory) — warns if < 8GB, auto-fixes Docker Desktop settings on macOS when AUTO_INSTALL=true
  • Wire check-deps as prerequisite for test and test-benchmark targets so dependency validation runs for all test paths
  • Linux Go install prints instructions instead of auto-installing (avoids destructive sudo rm -rf /usr/local/go)
  • Update TESTING.md — replace make deps references, expand validation list, strengthen setup messaging

Test plan

  • make check-deps passes on macOS (local)
  • make check-deps passes on Linux (system-77.local)
  • make setup passes on macOS (local)
  • make setup passes on Linux (system-77.local)
  • make check-deps AUTO_INSTALL=true passes on both platforms
  • make help shows check-deps (not old deps)
  • No stale references to old script names (check-go.sh, etc.)
  • Pre-commit hooks pass (trunk formatter auto-fixed one file)

Add "With make:" examples alongside every go test and ./t command
block in TESTING.md, showing how to run the same tests via make test
with arguments or dedicated test-* targets. This makes the make
interface discoverable inline rather than only in the Quick Start.

Remove the "Completed Improvements" section from Future Improvement
Ideas — these items are now reflected throughout the guide itself.
Replace the bash listing of test-* targets in Quick Start with a
table showing three invocation styles for every target: the dedicated
make target, the equivalent make test with arguments, and the direct
command without make.
…gement

Rename `make deps` to `make check-deps` with consistent `check-deps-*`
prefixes across scripts and Makefile targets. Add Makefile-level
OS-dispatched `install-deps-*` targets for darwin and linux, a Docker
memory check (`check-docker-available-memory`), and wire `check-deps`
as a prerequisite for all test entry points.

Key changes:
- Rename 7 check scripts: check-{tool}.sh → check-deps-{tool}.sh
- Restructure t/Makefile with three-way check flow (silent pass,
  auto-install, or report-and-fail) for each dependency
- Add install-deps-*-darwin targets (all depend on Homebrew check)
- Add install-deps-*-linux targets with package manager detection
- Linux Go install prints instructions instead of auto-installing
  (avoids destructive sudo rm -rf /usr/local/go)
- Add check-docker-available-memory.sh (warns if < 8GB, auto-fix
  on macOS with AUTO_INSTALL=true)
- Add check-deps prereq to test and test-benchmark targets
- Update TESTING.md references and validation list
@mlwelles mlwelles requested a review from a team as a code owner February 25, 2026 23:06
@github-actions github-actions bot added area/testing Testing related issues area/documentation Documentation related issues. go Pull requests that update Go code labels Feb 25, 2026
@mlwelles mlwelles changed the title chore(test): rename deps → check-deps and restructure dependency management chore(test): Clean up testing guide and Makefile testing dependency checks Feb 25, 2026
@matthewmcneely matthewmcneely merged commit 80cf21c into main Mar 2, 2026
26 checks passed
@matthewmcneely matthewmcneely deleted the chore/testing-docs-and-deps-polish branch March 2, 2026 18:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/documentation Documentation related issues. area/testing Testing related issues go Pull requests that update Go code

Development

Successfully merging this pull request may close these issues.

2 participants