summaryrefslogtreecommitdiff
path: root/tests/inferior.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2021-01-20 23:34:15 +0100
committerLudovic Courtès <ludo@gnu.org>2021-01-21 00:14:38 +0100
commit074a201c33f822a7ab59512e7ee8b301204ff732 (patch)
tree369ef66e919a9ef5a09953217ca628327dcc76d9 /tests/inferior.scm
parent3d43b7aef3d5b7ad2ba0418d2afd657e5fedeaf5 (diff)
inferior: Add 'inferior-eval-with-store' tests.
* tests/inferior.scm ("inferior-eval-with-store, exception") ("inferior-eval-with-store, not a procedure"): New tests.
Diffstat (limited to 'tests/inferior.scm')
-rw-r--r--tests/inferior.scm22
1 files changed, 21 insertions, 1 deletions
diff --git a/tests/inferior.scm b/tests/inferior.scm
index 5fddb1fd13..fb12111343 100644
--- a/tests/inferior.scm
+++ b/tests/inferior.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -213,6 +213,26 @@
"uh uh")))
#f)))
+(test-equal "inferior-eval-with-store, exception"
+ '(the-answer = 42)
+ (let ((inferior (open-inferior %top-builddir
+ #:command "scripts/guix")))
+ (guard (c ((inferior-exception? c)
+ (close-inferior inferior)
+ (inferior-exception-arguments c)))
+ (inferior-eval-with-store inferior %store
+ '(lambda (store)
+ (throw 'the-answer '= 42))))))
+
+(test-equal "inferior-eval-with-store, not a procedure"
+ 'wrong-type-arg
+ (let ((inferior (open-inferior %top-builddir
+ #:command "scripts/guix")))
+ (guard (c ((inferior-exception? c)
+ (close-inferior inferior)
+ (car (inferior-exception-arguments c))))
+ (inferior-eval-with-store inferior %store '(+ 1 2)))))
+
(test-equal "inferior-package-derivation"
(map derivation-file-name
(list (package-derivation %store %bootstrap-guile "x86_64-linux")