diff options
| author | tv <tv@krebsco.de> | 2026-11-14 00:33:20 +0000 |
|---|---|---|
| committer | tv <tv@krebsco.de> | 2026-11-14 01:48:35 +0100 |
| commit | dd166e5a4d4349241aa3408c8d7f7340cb0a90fb (patch) | |
| tree | 0955739060de93d99c6bc7828adc377815ad02a8 /pkgs/populate/src/spec.rs | |
| parent | a4540a584d762b000b21cb7e61987c414eb72a1d (diff) | |
tests: populate's tests of its own, krops' using them
populate's tests are in pkgs/populate/tests, independent of krops.
They run the program, with the sources as JSON from populate's Nix
library, and target strings for the remote targets, leaving the user
and whether the target is local to populate, so they cover its command
line too. Phases expecting populate to refuse its arguments, e.g. a
source name or a target path that can't be used, expect the program's
refusal, with refused, the message, since nothing checks them during
evaluation there.
builder.nix is what builds the scenarios, which krops' tests use as
well, with a function running the phases, and whether that checks the
arguments during evaluation. vm.nix takes a module for both machines,
for what else the scenarios run, and fixtures.nix and smoke.nix are
what both use of the fixtures and the smoke test.
krops' tests are deploy, writeDeploy's arguments to nixos-rebuild, with
the stand-in for nixos-rebuild in the module, and populate, populate's
scenarios that expect refusals, which pkgs.populate makes evaluation
fail with, and those of populate's smoke test, all through
pkgs.populate with target attribute sets as mkTarget returns them.
-A only selects from all of populate's scenarios and krops' own.
Diffstat (limited to 'pkgs/populate/src/spec.rs')
0 files changed, 0 insertions, 0 deletions
