{ makeTest ? import , pkgs ? (import {}), }: let makeTest' = args: makeTest args { inherit pkgs; inherit (pkgs) system; }; in { unittests = makeTest' { name = "unitests"; nodes.server = {pkgs, ...}: { # Important to get the systemd service running for root #environment.variables.XDG_RUNTIME_DIR = "/run/user/0"; }; testScript = '' start_all() server.succeed("machinectl shell .host ${pkgs.callPackage ./unittests.nix {}} >&2") # machinectl does not passthru exit codes, so we have to check manually server.succeed("[[ -f /tmp/success ]]") ''; }; }