From ba326ce41b5784f3acb99d4beae5ffc455d6a27e Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Mon, 19 Nov 2012 22:37:50 +0100 Subject: distro: Add `fold-packages'. * distro.scm (fold-packages): New procedure. (find-packages-by-name): Use it instead of hand-written traversal; remove `package?' checks from `right-package?'. * tests/packages.scm ("fold-packages"): New test. --- tests/packages.scm | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'tests/packages.scm') diff --git a/tests/packages.scm b/tests/packages.scm index 29ea691e9f..cb69e4be4e 100644 --- a/tests/packages.scm +++ b/tests/packages.scm @@ -120,6 +120,13 @@ (and (build-derivations %store (list drv)) (file-exists? (string-append out "/bin/make"))))))) +(test-eq "fold-packages" hello + (fold-packages (lambda (p r) + (if (string=? (package-name p) "hello") + p + r)) + #f)) + (test-assert "find-packages-by-name" (match (find-packages-by-name "hello") (((? (cut eq? hello <>))) #t) @@ -136,6 +143,7 @@ (exit (= (test-runner-fail-count (test-runner-current)) 0)) ;;; Local Variables: +;;; eval: (put 'test-equal 'scheme-indent-function 2) ;;; eval: (put 'test-assert 'scheme-indent-function 1) ;;; eval: (put 'dummy-package 'scheme-indent-function 1) ;;; End: -- cgit v1.2.3