diff options
Diffstat (limited to 'pkgs/test/systemd/nixos/default.nix')
-rw-r--r-- | pkgs/test/systemd/nixos/default.nix | 67 |
1 files changed, 36 insertions, 31 deletions
diff --git a/pkgs/test/systemd/nixos/default.nix b/pkgs/test/systemd/nixos/default.nix index e45399b635167..37b42ea7ae273 100644 --- a/pkgs/test/systemd/nixos/default.nix +++ b/pkgs/test/systemd/nixos/default.nix @@ -1,37 +1,42 @@ { pkgs, lib, stdenv, ... }: -lib.runTests { - # Merging two non-list definitions must still result in an error - # about a conflicting definition. - test-unitOption-merging-non-lists-conflict = - let nixos = pkgs.nixos { - system.stateVersion = lib.trivial.release; - systemd.services.systemd-test-nixos = { - serviceConfig = lib.mkMerge [ - { StateDirectory = "foo"; } - { StateDirectory = "bar"; } - ]; +let + failures = lib.runTests { + # Merging two non-list definitions must still result in an error + # about a conflicting definition. + test-unitOption-merging-non-lists-conflict = + let nixos = pkgs.nixos { + system.stateVersion = lib.trivial.release; + systemd.services.systemd-test-nixos = { + serviceConfig = lib.mkMerge [ + { StateDirectory = "foo"; } + { StateDirectory = "bar"; } + ]; + }; }; - }; - in { - expr = (builtins.tryEval (nixos.config.systemd.services.systemd-test-nixos.serviceConfig.StateDirectory)).success; - expected = false; - }; + in { + expr = (builtins.tryEval (nixos.config.systemd.services.systemd-test-nixos.serviceConfig.StateDirectory)).success; + expected = false; + }; - # Merging must lift non-list definitions to a list - # if at least one of them is a list. - test-unitOption-merging-list-non-list-append = - let nixos = pkgs.nixos { - system.stateVersion = lib.trivial.release; - systemd.services.systemd-test-nixos = { - serviceConfig = lib.mkMerge [ - { StateDirectory = "foo"; } - { StateDirectory = ["bar"]; } - ]; + # Merging must lift non-list definitions to a list + # if at least one of them is a list. + test-unitOption-merging-list-non-list-append = + let nixos = pkgs.nixos { + system.stateVersion = lib.trivial.release; + systemd.services.systemd-test-nixos = { + serviceConfig = lib.mkMerge [ + { StateDirectory = "foo"; } + { StateDirectory = ["bar"]; } + ]; + }; }; - }; - in { - expr = nixos.config.systemd.services.systemd-test-nixos.serviceConfig.StateDirectory; - expected = [ "foo" "bar" ]; + in { + expr = nixos.config.systemd.services.systemd-test-nixos.serviceConfig.StateDirectory; + expected = [ "foo" "bar" ]; + }; }; -} +in + +lib.optional (failures != []) + (throw "The following systemd unit tests failed: ${lib.generators.toPretty {} failures}") |