summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2019-03-16 17:07:57 +0100
committerLudovic Courtès <ludo@gnu.org>2019-03-16 18:15:13 +0100
commitf0cc5e7e1e4c03af29c5d4855dc5962502c49147 (patch)
tree8ed975abe2ac957b165a7f32900c739949f01cf5 /tests
parent22f95e028f038cee342f455dfc55bd32b804907c (diff)
booloader: Add 'invoke/quiet'.
* gnu/build/bootloader.scm (G_): New macro. (open-pipe-with-stderr, invoke/quiet): New procedures. * tests/build-utils.scm ("invoke/quiet, success") ("invoke/quiet, failure") ("invoke/quiet, failure, message on stderr"): New tests. * po/guix/POTFILES.in: Add bootloader.scm.
Diffstat (limited to 'tests')
-rw-r--r--tests/build-utils.scm22
1 files changed, 21 insertions, 1 deletions
diff --git a/tests/build-utils.scm b/tests/build-utils.scm
index 03216f9a35d..46fe8ea2c05 100644
--- a/tests/build-utils.scm
+++ b/tests/build-utils.scm
@@ -1,5 +1,5 @@
1;;; GNU Guix --- Functional package management for GNU 1;;; GNU Guix --- Functional package management for GNU
2;;; Copyright © 2012, 2015, 2016 Ludovic Courtès <ludo@gnu.org> 2;;; Copyright © 2012, 2015, 2016, 2019 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,11 +20,14 @@
20(define-module (test-build-utils) 20(define-module (test-build-utils)
21 #:use-module (guix tests) 21 #:use-module (guix tests)
22 #:use-module (guix build utils) 22 #:use-module (guix build utils)
23 #:use-module ((gnu build bootloader)
24 #:select (invoke/quiet))
23 #:use-module ((guix utils) 25 #:use-module ((guix utils)
24 #:select (%current-system call-with-temporary-directory)) 26 #:select (%current-system call-with-temporary-directory))
25 #:use-module (gnu packages) 27 #:use-module (gnu packages)
26 #:use-module (gnu packages bootstrap) 28 #:use-module (gnu packages bootstrap)
27 #:use-module (srfi srfi-34) 29 #:use-module (srfi srfi-34)
30 #:use-module (srfi srfi-35)
28 #:use-module (srfi srfi-64) 31 #:use-module (srfi srfi-64)
29 #:use-module (rnrs io ports) 32 #:use-module (rnrs io ports)
30 #:use-module (ice-9 popen)) 33 #:use-module (ice-9 popen))
@@ -123,5 +126,22 @@
123 (and (zero? (close-pipe pipe)) 126 (and (zero? (close-pipe pipe))
124 str))))))) 127 str)))))))
125 128
129(test-assert "invoke/quiet, success"
130 (begin
131 (invoke/quiet "true")
132 #t))
133
134(test-assert "invoke/quiet, failure"
135 (guard (c ((message-condition? c)
136 (string-contains (condition-message c) "This is an error.")))
137 (invoke/quiet "sh" "-c" "echo This is an error. ; false")
138 #f))
139
140(test-assert "invoke/quiet, failure, message on stderr"
141 (guard (c ((message-condition? c)
142 (string-contains (condition-message c)
143 "This is another error.")))
144 (invoke/quiet "sh" "-c" "echo This is another error. >&2 ; false")
145 #f))
126 146
127(test-end) 147(test-end)