aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorNikita Karetnikov <nikita@karetnikov.org>2013-09-26 02:36:24 +0000
committerNikita Karetnikov <nikita@karetnikov.org>2013-09-26 15:41:43 +0000
commitb7884ca3ca72b39397ff0abd1154f97b981394cd (patch)
treefe101df1dfa3ada15e7c432bbd9b2541161b1b9f /tests
parent64d2e973fb2f22a42c6dec5065070343695e5848 (diff)
downloadgnu-guix-b7884ca3ca72b39397ff0abd1154f97b981394cd.tar
gnu-guix-b7884ca3ca72b39397ff0abd1154f97b981394cd.tar.gz
guix package: Add '--delete-generations'.
* guix/scripts/package.scm (switch-to-previous-generation): New function. (roll-back): Use the new function instead of 'switch-link'. (show-help): Add '--delete-generations'. (%options): Likewise. (guix-package)[process-actions]: Add 'current-generation-number', 'display-and-delete', and 'delete-generation'. Add support for '--delete-generations', and reindent the code. * tests/guix-package.sh: Test '--delete-generations'. * doc/guix.texi (Invoking guix-package): Document '--delete-generations'.
Diffstat (limited to 'tests')
-rw-r--r--tests/guix-package.sh11
1 files changed, 11 insertions, 0 deletions
diff --git a/tests/guix-package.sh b/tests/guix-package.sh
index 5f97aff026..fc1c07287f 100644
--- a/tests/guix-package.sh
+++ b/tests/guix-package.sh
@@ -142,6 +142,17 @@ then
# Make sure LIBRARY_PATH gets listed by `--search-paths'.
guix package --bootstrap -p "$profile" -i guile-bootstrap -i gcc-bootstrap
guix package --search-paths -p "$profile" | grep LIBRARY_PATH
+
+ # Delete the third generation and check that it was actually deleted.
+ guix package -p "$profile" --delete-generations=3
+ test -z "`guix package -p "$profile" -l 3`"
+
+ # Exit with 1 when a generation does not exist.
+ if guix package -p "$profile" --delete-generations=42;
+ then false; else true; fi
+
+ # Exit with 0 when trying to delete the zeroth generation.
+ guix package -p "$profile" --delete-generations=0
fi
# Make sure the `:' syntax works.