aboutsummaryrefslogtreecommitdiffstats
path: root/tests/vm.nix
diff options
context:
space:
mode:
authortv <tv@krebsco.de>2026-11-13 21:10:24 +0000
committertv <tv@krebsco.de>2026-11-13 22:17:13 +0100
commit8f131b09955a6760bdb55fc4b6280170be13641a (patch)
tree983d8f93a31e4fae93d689da5f16bc2c98d77c87 /tests/vm.nix
parent75f2fddb65c0d0b7659282a1e210bd2ddb3abefa (diff)
tests: scenarios for rsync's units, pipe scripts, pass changes, statuses
rsync-units checks that rsync's log gives sizes in units of 1024, as --out-format asks for. pipe-script runs a pipe command without #!, which a shell runs as a script. pass-changes checks that a pass source gets decrypted again when its store changes, and only then. A phase's expect.status is the exit status it expects populate to fail with; git-status checks that populate exits with git fetch's.
Diffstat (limited to 'tests/vm.nix')
-rw-r--r--tests/vm.nix4
1 files changed, 4 insertions, 0 deletions
diff --git a/tests/vm.nix b/tests/vm.nix
index 7c362f5..8a08819 100644
--- a/tests/vm.nix
+++ b/tests/vm.nix
@@ -178,6 +178,10 @@ in pkgs.testers.runNixOSTest {
raise Exception(
f"populate {i} doesn't fail with {phase['expect']!r}:\n{out}"
)
+ elif phase["status"] is not None and status != phase["status"]:
+ raise Exception(
+ f"populate {i} exits with {status} instead of {phase['status']}:\n{out}"
+ )
run(node, f"KROPS_TEST_GC=1 sh {phase['check']}")
if phase["checkDeployer"] is not None:
run(deployer, f"sh {phase['checkDeployer']}")