mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-04-29 19:30:36 +02:00
* test-suite/standalone/test-system-cmds (test-system-cmd): Use double quotes around shell arguments. Reported by Eli Zaretskii <eliz@gnu.org>.
44 lines
1 KiB
Scheme
Executable file
44 lines
1 KiB
Scheme
Executable file
#!/bin/sh
|
|
exec guile -q -s "$0" "$@"
|
|
!#
|
|
|
|
(define (test-system-cmd)
|
|
(if (not (boolean? (system)))
|
|
(begin
|
|
(simple-format
|
|
#t
|
|
"test-system-cmds: (system) did not return a boolean\n")
|
|
(exit 1)))
|
|
|
|
;; Note: Use double quotes since simple quotes are not supported by
|
|
;; `cmd.exe' on Windows.
|
|
(let ((rs (status:exit-val (system "guile -c \"(exit 42)\""))))
|
|
(if (not (= 42 rs))
|
|
(begin
|
|
(simple-format
|
|
#t
|
|
"test-system-cmds: system exit status was ~S rather than 42\n"
|
|
rs)
|
|
(exit 1)))))
|
|
|
|
(define (test-system*-cmd)
|
|
(let ((rs (status:exit-val (system* "guile" "-c" "(exit 42)"))))
|
|
(if (not (= 42 rs))
|
|
(begin
|
|
(simple-format
|
|
#t
|
|
"test-system-cmds: system* exit status was ~S rather than 42\n"
|
|
rs)
|
|
(exit 1)))))
|
|
|
|
(if (defined? 'system)
|
|
(test-system-cmd))
|
|
|
|
(if (defined? 'system*)
|
|
(test-system*-cmd))
|
|
|
|
(exit 0)
|
|
|
|
;; Local Variables:
|
|
;; mode: scheme
|
|
;; End:
|