gnu: linux-libre@5.4: Update to 5.4.66.
[jackhill/guix/guix.git] / tests / guix-download.sh
CommitLineData
233e7676 1# GNU Guix --- Functional package management for GNU
1bcc87bb 2# Copyright © 2012, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
37d19403 3#
233e7676 4# This file is part of GNU Guix.
37d19403 5#
233e7676 6# GNU Guix is free software; you can redistribute it and/or modify it
37d19403
LC
7# under the terms of the GNU General Public License as published by
8# the Free Software Foundation; either version 3 of the License, or (at
9# your option) any later version.
10#
233e7676 11# GNU Guix is distributed in the hope that it will be useful, but
37d19403
LC
12# WITHOUT ANY WARRANTY; without even the implied warranty of
13# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14# GNU General Public License for more details.
15#
16# You should have received a copy of the GNU General Public License
233e7676 17# along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
37d19403
LC
18
19#
e49951eb 20# Test the `guix download' command-line utility.
37d19403
LC
21#
22
e49951eb 23guix download --version
37d19403
LC
24
25# Make sure it fails here.
e49951eb 26if guix download http://does.not/exist
37d19403 27then false; else true; fi
ecdb81e1 28
e49951eb 29if guix download unknown://some/where;
ecdb81e1
LC
30then false; else true; fi
31
a02967d7 32if guix download /does-not-exist
ecdb81e1 33then false; else true; fi
352ec143
LC
34
35# This one should succeed.
e49951eb 36guix download "file://$abs_top_srcdir/README"
86cdfc45 37
a02967d7
SB
38# And this one, without the URI scheme.
39guix download "$abs_top_srcdir/README"
40
1bcc87bb
LC
41# This one too, even if it cannot talk to the daemon.
42output="t-download-$$"
43trap 'rm -f "$output"' EXIT
44GUIX_DAEMON_SOCKET="/nowhere" guix download -o "$output" \
45 "file://$abs_top_srcdir/README"
46cmp "$output" "$abs_top_srcdir/README"
47
86cdfc45
LC
48# This one should fail.
49if guix download "file:///does-not-exist" "file://$abs_top_srcdir/README"
50then false; else true; fi