diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/guix-environment.sh | 15 | ||||
-rw-r--r-- | tests/inferior.scm | 22 | ||||
-rw-r--r-- | tests/packages.scm | 3 |
3 files changed, 37 insertions, 3 deletions
diff --git a/tests/guix-environment.sh b/tests/guix-environment.sh index 30b21028aa..ccbe027c7b 100644 --- a/tests/guix-environment.sh +++ b/tests/guix-environment.sh @@ -1,5 +1,5 @@ # GNU Guix --- Functional package management for GNU -# Copyright © 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> +# Copyright © 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> # # This file is part of GNU Guix. # @@ -49,6 +49,19 @@ test -x `sed -r 's/^export PATH="(.*)"/\1/' "$tmpdir/a"`/guile cmp "$tmpdir/a" "$tmpdir/b" +# Check '--inherit'. +GUIX_TEST_ABC=1 +GUIX_TEST_DEF=2 +GUIX_TEST_XYZ=3 +export GUIX_TEST_ABC GUIX_TEST_DEF GUIX_TEST_XYZ +guix environment --bootstrap --ad-hoc guile-bootstrap --pure \ + --inherit='^GUIX_TEST_A' --inherit='^GUIX_TEST_D' \ + -- "$SHELL" -c set > "$tmpdir/a" +grep '^PATH=' "$tmpdir/a" +grep '^GUIX_TEST_ABC=' "$tmpdir/a" +grep '^GUIX_TEST_DEF=' "$tmpdir/a" +if grep '^GUIX_TEST_XYZ=' "$tmpdir/a"; then false; else true; fi + # Make sure the exit value is preserved. if guix environment --bootstrap --ad-hoc guile-bootstrap --pure \ -- guile -c '(exit 42)' diff --git a/tests/inferior.scm b/tests/inferior.scm index d5a894ca8f..71ebf8f59b 100644 --- a/tests/inferior.scm +++ b/tests/inferior.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2018 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2018, 2019 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -89,6 +89,26 @@ (close-inferior inferior) result)))) +(test-equal "inferior-available-packages" + (take (sort (fold-available-packages + (lambda* (name version result + #:key supported? deprecated? + #:allow-other-keys) + (if (and supported? (not deprecated?)) + (alist-cons name version result) + result)) + '()) + (lambda (x y) + (string<? (car x) (car y)))) + 10) + (let* ((inferior (open-inferior %top-builddir + #:command "scripts/guix")) + (packages (inferior-available-packages inferior))) + (close-inferior inferior) + (take (sort packages (lambda (x y) + (string<? (car x) (car y)))) + 10))) + (test-equal "lookup-inferior-packages" (let ((->list (lambda (package) (list (package-name package) diff --git a/tests/packages.scm b/tests/packages.scm index dd93328db6..ad972deb31 100644 --- a/tests/packages.scm +++ b/tests/packages.scm @@ -1054,7 +1054,8 @@ result)) '())))))) - (lset= equal? no-cache from-cache))) + (and (equal? (delete-duplicates from-cache) from-cache) + (lset= equal? no-cache from-cache)))) (test-assert "find-packages-by-name" (match (find-packages-by-name "hello") |