summary refs log tree commit diff
diff options
context:
space:
mode:
authorJanne Heß <janne@hess.ooo>2023-09-13 16:42:19 +0200
committerJanne Heß <janne@hess.ooo>2023-09-13 16:42:19 +0200
commitd1c1335908813fa659a02aa61222672b03b9239f (patch)
tree1fafdef3f57041ad57d6f951664281d53ae3e520
parentc9cc42714f301310e9919a89a99484619d613dc9 (diff)
downloadnixpkgs-d1c1335908813fa659a02aa61222672b03b9239f.tar
nixpkgs-d1c1335908813fa659a02aa61222672b03b9239f.tar.gz
nixpkgs-d1c1335908813fa659a02aa61222672b03b9239f.tar.bz2
nixpkgs-d1c1335908813fa659a02aa61222672b03b9239f.tar.lz
nixpkgs-d1c1335908813fa659a02aa61222672b03b9239f.tar.xz
nixpkgs-d1c1335908813fa659a02aa61222672b03b9239f.tar.zst
nixpkgs-d1c1335908813fa659a02aa61222672b03b9239f.zip
nixos/switch-to-configuration: Test more action things
-rwxr-xr-xnixos/modules/system/activation/switch-to-configuration.pl2
-rw-r--r--nixos/tests/switch-test.nix5
2 files changed, 6 insertions, 1 deletions
diff --git a/nixos/modules/system/activation/switch-to-configuration.pl b/nixos/modules/system/activation/switch-to-configuration.pl
index 8bd450d7343..95308d5da94 100755
--- a/nixos/modules/system/activation/switch-to-configuration.pl
+++ b/nixos/modules/system/activation/switch-to-configuration.pl
@@ -74,7 +74,7 @@ if ("@localeArchive@" ne "") {
 
 if (!defined($action) || ($action ne "switch" && $action ne "boot" && $action ne "test" && $action ne "dry-activate")) {
     print STDERR <<"EOF";
-Usage: $0 [switch|boot|test]
+Usage: $0 [switch|boot|test|dry-activate]
 
 switch:       make the configuration the boot default and activate now
 boot:         make the configuration the boot default
diff --git a/nixos/tests/switch-test.nix b/nixos/tests/switch-test.nix
index 529a2086420..7be0b4c7d3c 100644
--- a/nixos/tests/switch-test.nix
+++ b/nixos/tests/switch-test.nix
@@ -643,6 +643,11 @@ in {
 
         # test and dry-activate actions are tested further down below
 
+        # invalid action fails the script
+        switch_to_specialisation("${machine}", "", action="broken-action", fail=True)
+        # no action fails the script
+        "Usage:" in machine.fail("${machine}/bin/switch-to-configuration")
+
     with subtest("services"):
         switch_to_specialisation("${machine}", "")
         # Nothing happens when nothing is changed