summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2016-05-20 17:07:23 +0200
committerLudovic Courtès <ludo@gnu.org>2016-05-21 01:35:14 +0200
commita773c3142dd168e1c4480614d3f5fd9d003954cd (patch)
treedaf8111a6b4a105fae5d226dad7774361d12f721 /tests
parent97507ebedc8e1265c2ed354e50a218fb9ee6087b (diff)
graph: Allow store file names for 'derivation' and 'references' graphs.
* guix/scripts/graph.scm (%derivation-node-type)[convert]: Add 'derivation-path?' and catch-all clauses. (%reference-node-type)[convert]: Add 'store-path?' and catch-all clauses. (assert-package, nodes-from-package): New procedures. (%package-node-type, %bag-node-type,%bag-with-origins-node-type) (%bag-emerged-node-type): Add 'convert' field (guix-graph): Rename 'packages' to 'items' and allow 'store-path?' arguments. * guix/graph.scm (<node-type>)[convert]: Adjust comment. * doc/guix.texi (Invoking guix graph): Document it.
Diffstat (limited to 'tests')
-rw-r--r--tests/guix-graph.sh18
1 files changed, 17 insertions, 1 deletions
diff --git a/tests/guix-graph.sh b/tests/guix-graph.sh
index 4d5a755bc10..1ec99706fd0 100644
--- a/tests/guix-graph.sh
+++ b/tests/guix-graph.sh
@@ -1,5 +1,5 @@
1# GNU Guix --- Functional package management for GNU 1# GNU Guix --- Functional package management for GNU
2# Copyright © 2015 Ludovic Courtès <ludo@gnu.org> 2# Copyright © 2015, 2016 Ludovic Courtès <ludo@gnu.org>
3# 3#
4# This file is part of GNU Guix. 4# This file is part of GNU Guix.
5# 5#
@@ -20,6 +20,10 @@
20# Test the 'guix graph' command-line utility. 20# Test the 'guix graph' command-line utility.
21# 21#
22 22
23tmpfile1="t-guix-graph1-$$"
24tmpfile2="t-guix-graph2-$$"
25trap 'rm -f "$tmpfile1" "$tmpfile2"' EXIT
26
23guix graph --version 27guix graph --version
24 28
25for package in guile-bootstrap coreutils python 29for package in guile-bootstrap coreutils python
@@ -37,3 +41,15 @@ guix graph -e '(@ (gnu packages bootstrap) %bootstrap-guile)' \
37 | grep guile-bootstrap 41 | grep guile-bootstrap
38 42
39if guix graph -e +; then false; else true; fi 43if guix graph -e +; then false; else true; fi
44
45# Try passing store file names.
46
47guix graph -t references guile-bootstrap > "$tmpfile1"
48guix graph -t references `guix build guile-bootstrap` > "$tmpfile2"
49cmp "$tmpfile1" "$tmpfile2"
50
51# XXX: Filter the file names in the graph to work around the fact that we get
52# a mixture of relative and absolute file names.
53guix graph -t derivation coreutils > "$tmpfile1"
54guix graph -t derivation `guix build -d coreutils` > "$tmpfile2"
55cmp "$tmpfile1" "$tmpfile2"