summary refs log tree commit diff
path: root/tests/guix-build.sh
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2021-11-07 15:56:19 +0100
committerLudovic Courtès <ludo@gnu.org>2021-11-07 23:10:41 +0100
commit4d59596a1c5f6b20870e619cbf67068ac7dd64ff (patch)
tree46985246b252c9723a5584a6a80073037a842ec9 /tests/guix-build.sh
parentdab2ac2ed53810427bb6a053137091d8d9ab3e56 (diff)
downloadguix-4d59596a1c5f6b20870e619cbf67068ac7dd64ff.tar.gz
ui: 'load*' correctly reports 'read-error' in all cases.
Previously, 'read-error' exceptions other than "missing closing paren"
would not be reported; instead, we'd directly call (exit 1) without
printing anything.

Fixes <https://issues.guix.gnu.org/51463>.
Reported by Alice BRENON <alice.brenon@ens-lyon.fr>.

* guix/ui.scm (report-load-error): Report the error without re-throwing
upon 'read-error'.
* tests/guix-build.sh: Add test.
Diffstat (limited to 'tests/guix-build.sh')
-rw-r--r--tests/guix-build.sh12
1 files changed, 11 insertions, 1 deletions
diff --git a/tests/guix-build.sh b/tests/guix-build.sh
index e20702c521..46c8afc901 100644
--- a/tests/guix-build.sh
+++ b/tests/guix-build.sh
@@ -1,5 +1,5 @@
 # GNU Guix --- Functional package management for GNU
-# Copyright © 2012, 2013, 2014, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
+# Copyright © 2012, 2013, 2014, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
 # Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
 # Copyright © 2021 Chris Marusich <cmmarusich@gmail.com>
 #
@@ -77,6 +77,16 @@ module_dir="t-guix-build-$$"
 mkdir "$module_dir"
 trap "rm -rf $module_dir" EXIT
 
+# Check error reporting for '-f'.
+cat > "$module_dir/foo.scm" <<EOF
+(use-modules (guix))
+) ;extra closing paren
+EOF
+! guix build -f "$module_dir/foo.scm" 2> "$module_dir/stderr"
+grep "read error" "$module_dir/stderr"
+rm "$module_dir/stderr" "$module_dir/foo.scm"
+
+# Check 'GUIX_PACKAGE_PATH' & co.
 cat > "$module_dir/foo.scm"<<EOF
 (define-module (foo)
   #:use-module (guix tests)