summaryrefslogtreecommitdiff
path: root/tests/union.scm
diff options
context:
space:
mode:
Diffstat (limited to 'tests/union.scm')
-rw-r--r--tests/union.scm21
1 files changed, 20 insertions, 1 deletions
diff --git a/tests/union.scm b/tests/union.scm
index 317d49dc35..a3859434a2 100644
--- a/tests/union.scm
+++ b/tests/union.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2012, 2013 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -64,6 +64,25 @@
(bin make)
(share (doc (make README))))))
+(test-equal "delete-duplicate-leaves, default"
+ '(bin make touch ls)
+ (delete-duplicate-leaves '(bin ls make touch ls)))
+
+(test-equal "delete-duplicate-leaves, file names"
+ '("doc" ("info"
+ "/binutils/ld.info"
+ "/gcc/gcc.info"
+ "/binutils/standards.info"))
+ (let ((leaf=? (lambda (a b)
+ (string=? (basename a) (basename b)))))
+ (delete-duplicate-leaves '("doc"
+ ("info"
+ "/binutils/ld.info"
+ "/binutils/standards.info"
+ "/gcc/gcc.info"
+ "/gcc/standards.info"))
+ leaf=?)))
+
(test-skip (if (and %store
(false-if-exception
(getaddrinfo "www.gnu.org" "80" AI_NUMERICSERV)))