diff options
author | Ludovic Courtès <ludo@gnu.org> | 2014-06-26 22:23:36 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2014-06-27 00:12:40 +0200 |
commit | c1202fb1f9b805e7c7151e3d34bd4f86c86acd75 (patch) | |
tree | 29253c66940610c655738e083fb47fdf2bbec655 /tests/guix-system.sh | |
parent | 80b77646a4af6073bb4a4e92f5d416716da20704 (diff) | |
download | guix-c1202fb1f9b805e7c7151e3d34bd4f86c86acd75.tar.gz |
guix {system,offload}: Improve reporting of syntax errors.
* guix/scripts/system.scm (read-operating-system) <catch handler>: Add case for 'syntax-error'. Correct message for default case. * guix/scripts/offload.scm (build-machines) <catch handler>: Add case for 'syntax-error'. * tests/guix-system.sh: New file. * Makefile.am (SH_TESTS): Add it.
Diffstat (limited to 'tests/guix-system.sh')
-rw-r--r-- | tests/guix-system.sh | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/tests/guix-system.sh b/tests/guix-system.sh new file mode 100644 index 0000000000..b5476476e1 --- /dev/null +++ b/tests/guix-system.sh @@ -0,0 +1,43 @@ +# GNU Guix --- Functional package management for GNU +# Copyright © 2014 Ludovic Courtès <ludo@gnu.org> +# +# This file is part of GNU Guix. +# +# GNU Guix is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or (at +# your option) any later version. +# +# GNU Guix is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +# +# Test the daemon and its interaction with 'guix substitute-binary'. +# + +set -e + +guix system --version + +tmpfile="t-guix-system-$$" +errorfile="t-guix-system-error-$$" +trap 'rm -f "$tmpfile" "$errorfile"' EXIT + +cat > "$tmpfile"<<EOF +;; This is line 1, and the next one is line 2. + (operating-system) +;; The 'T' is at column 3. +EOF + +if guix system vm "$tmpfile" 2> "$errorfile" +then + # This must not succeed. + exit 1 +else + grep "$tmpfile:2:3:.*missing.* initializers" "$errorfile" +fi |