diff options
| author | Craig Jennings <c@cjennings.net> | 2026-06-14 22:32:23 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-06-14 22:32:23 -0500 |
| commit | 8661faa4ce8f62dce05bd5aaf29948194a8c01d3 (patch) | |
| tree | a2d9b1c12f9f33e69a0eafbfa63e92e8468a57fe /dotfiles/system | |
| parent | 9e426241e1632fe9d5c9ee6c7cb60d11c13ac1fa (diff) | |
| download | archsetup-8661faa4ce8f62dce05bd5aaf29948194a8c01d3.tar.gz archsetup-8661faa4ce8f62dce05bd5aaf29948194a8c01d3.zip | |
test(scripts): lock package-inventory behavior with characterization tests
package-inventory compares archsetup's declared packages against the live system but had no tests, so a future archsetup edit (a new for-loop shape, a renamed install helper) could silently break the extraction.
I added two env seams so the script is testable without the real system. PKGINV_ARCHSETUP points the extractor at a fixture installer, PKGINV_PACMAN swaps in a fake pacman serving controlled query output. Both default to the real targets, so normal use is unchanged, and the seams match the env-override pattern audit-packages.sh already uses.
The 7 tests pin the extraction (direct calls, for-loop lists, variable-arg skip) and both diff directions against the fixture, with no network or real pacman db. I also added a make package-diff target so the tool is reachable alongside the test targets.
Diffstat (limited to 'dotfiles/system')
0 files changed, 0 insertions, 0 deletions
