test: run the suite by level, file, or name #45
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "test/suite-levels"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Why
Each task should be able to run just the tests it needs: one level, one
component, or the tests whose names match. The suite was a single flat
folder, the runner took no arguments, and three files each carried
their own copy of the harness.
What changed
tests/unit/andtests/integration/, and thereal-Podman gate moved to
tests/e2e/smoke_images.sh. The runnerrefuses a
test_*.shanywhere else, so a misplaced file cannot dropout silently.
tests/harness.shis the onefail/run_test/finishevery fileshares.
TEST_FILTER, an extended regular expression over testnames, runs only the matching tests.
tests/run.shtakes levels, short names and paths. Make gainstest-unit,test-integrationandtest-e2e, andsmoke-imagesstays.
TESTS=works withmake test, andFILTER=works with allthree test targets. A typo or a filter that matches nothing fails
rather than passing empty.
macOS-only tests now all carry
macosin their names. Two duplicatetests are gone.
list through a process substitution, and Bash 5.3's
wait -ncouldreturn for that process, so a still-running file was reported as
killed. Under load it failed 3 of 300 runs before the fix and 0 of
400 after.
docs/development.mddocuments the commands, anddocs/adding-a-client.mdpoints at the new paths.This PR does not add unit tests for the launcher, does not add a
launcher end-to-end run on real Podman, and does not rename the
common_prefix.Verification
make lint && .agents/hooks/shellcheck.sh repo && make testpasses,with 324 tests.
except five renamed ones. 19 tests are new.
make test-e2e, which needs real rootless Podman. Its newpath is covered by the Makefile test and the smoke tool's unit tests.