aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2013-02-03 23:24:25 +0100
committerLudovic Courtès <ludo@gnu.org>2013-02-04 08:58:48 +0100
commit0f3d2504f75595a2db2a2344b624ced2ba307448 (patch)
treee2fabb0313fa177717090e5b44818af2817e2d57 /tests
parent63193ebfdc72eb11cfb1c50b8cd5dfc49d01361d (diff)
downloadguix-0f3d2504f75595a2db2a2344b624ced2ba307448.tar
guix-0f3d2504f75595a2db2a2344b624ced2ba307448.tar.gz
store: Add substitute-related procedures.
* guix/store.scm (has-substitutes?, substitutable-paths, read-substitutable-path-list, substitutable-path-info): New procedures. (<substitutable>): New record type. (read-arg): Add `substitutable-path-info'. Change `hash' pattern variable to `base16' literal. * tests/store.scm ("no substitutes"): New test.
Diffstat (limited to 'tests')
-rw-r--r--tests/store.scm15
1 files changed, 14 insertions, 1 deletions
diff --git a/tests/store.scm b/tests/store.scm
index 1ff6aa05c2..c90fd3fed9 100644
--- a/tests/store.scm
+++ b/tests/store.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.
;;;
@@ -21,6 +21,8 @@
#:use-module (guix store)
#:use-module (guix utils)
#:use-module (guix base32)
+ #:use-module (guix packages)
+ #:use-module (guix derivations)
#:use-module (gnu packages bootstrap)
#:use-module (ice-9 match)
#:use-module (srfi srfi-1)
@@ -77,6 +79,17 @@
(> freed 0)
(not (file-exists? p))))))
+(test-assert "no substitutes"
+ (let* ((s (open-connection))
+ (d1 (package-derivation s %bootstrap-guile (%current-system)))
+ (d2 (package-derivation s %bootstrap-glibc (%current-system)))
+ (o (map derivation-path->output-path (list d1 d2))))
+ (set-build-options s #:use-substitutes? #f)
+ (and (not (has-substitutes? s d1))
+ (not (has-substitutes? s d2))
+ (null? (substitutable-paths s o))
+ (null? (substitutable-path-info s o)))))
+
(test-end "store")