test: validate pnpm --version output in CI

All version checks now capture output and assert it matches a semver
pattern. Previously, a silently failing pnpm (exit 0, no output)
would pass the tests.
This commit is contained in:
Zoltan Kochan
2026-03-27 19:33:54 +01:00
parent 5a859cc8cb
commit 54e420f032

View File

@@ -33,7 +33,14 @@ jobs:
run: which pnpm; which pnpx
- name: 'Test: version'
run: pnpm --version
run: |
actual="$(pnpm --version)"
echo "pnpm version: ${actual}"
if [[ ! "${actual}" =~ ^[0-9]+\.[0-9]+\.[0-9]+ ]]; then
echo "ERROR: pnpm --version did not produce valid output"
exit 1
fi
shell: bash
- name: 'Test: install in a fresh project'
run: |
@@ -71,7 +78,14 @@ jobs:
run: which pnpm && which pnpx
- name: 'Test: version'
run: pnpm --version
run: |
actual="$(pnpm --version)"
echo "pnpm version: ${actual}"
if [[ ! "${actual}" =~ ^[0-9]+\.[0-9]+\.[0-9]+ ]]; then
echo "ERROR: pnpm --version did not produce valid output"
exit 1
fi
shell: bash
test_standalone:
name: Test with standalone
@@ -98,7 +112,14 @@ jobs:
run: which pnpm
- name: 'Test: version'
run: pnpm --version
run: |
actual="$(pnpm --version)"
echo "pnpm version: ${actual}"
if [[ ! "${actual}" =~ ^[0-9]+\.[0-9]+\.[0-9]+ ]]; then
echo "ERROR: pnpm --version did not produce valid output"
exit 1
fi
shell: bash
- name: 'Test: install in a fresh project'
run: |
@@ -196,4 +217,11 @@ jobs:
run: which pnpm; which pnpx
- name: 'Test: version'
run: pnpm --version
run: |
actual="$(pnpm --version)"
echo "pnpm version: ${actual}"
if [[ ! "${actual}" =~ ^[0-9]+\.[0-9]+\.[0-9]+ ]]; then
echo "ERROR: pnpm --version did not produce valid output"
exit 1
fi
shell: bash