summary refs log tree commit diff
path: root/tests/profiles.scm
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2014-08-20 03:17:56 -0400
committerMark H Weaver <mhw@netris.org>2014-08-20 03:17:56 -0400
commit647cfda83b897d3134394a499e51048a1c123389 (patch)
tree90bd1d70eb0b9b6f1f45efe48c408ec839e86c08 /tests/profiles.scm
parentcba95006a6129ffe2a29ff9f4ad10549214114a0 (diff)
parent667b2508464374a01db3588504b981ec9266a2ea (diff)
downloadguix-647cfda83b897d3134394a499e51048a1c123389.tar.gz
Merge branch 'master' into core-updates
Diffstat (limited to 'tests/profiles.scm')
-rw-r--r--tests/profiles.scm21
1 files changed, 21 insertions, 0 deletions
diff --git a/tests/profiles.scm b/tests/profiles.scm
index d405f6453e..b2919d7315 100644
--- a/tests/profiles.scm
+++ b/tests/profiles.scm
@@ -40,6 +40,13 @@
 
 ;; Example manifest entries.
 
+(define guile-1.8.8
+  (manifest-entry
+    (name "guile")
+    (version "1.8.8")
+    (item "/gnu/store/...")
+    (output "out")))
+
 (define guile-2.0.9
   (manifest-entry
     (name "guile")
@@ -101,6 +108,20 @@
             (null? (manifest-entries m3))
             (null? (manifest-entries m4)))))))
 
+(test-assert "manifest-add"
+  (let* ((m0 (manifest '()))
+         (m1 (manifest-add m0 (list guile-1.8.8)))
+         (m2 (manifest-add m1 (list guile-2.0.9)))
+         (m3 (manifest-add m2 (list guile-2.0.9:debug)))
+         (m4 (manifest-add m3 (list guile-2.0.9:debug))))
+    (and (match (manifest-entries m1)
+           ((($ <manifest-entry> "guile" "1.8.8" "out")) #t)
+           (_ #f))
+         (match (manifest-entries m2)
+           ((($ <manifest-entry> "guile" "2.0.9" "out")) #t)
+           (_ #f))
+         (equal? m3 m4))))
+
 (test-assert "profile-derivation"
   (run-with-store %store
     (mlet* %store-monad