tests: Honor system and target when lowering <system-test>.

* gnu/tests.scm (compile-system-test): Wrap ‘system-test-value’ call in
‘mparameterize’.

Change-Id: I4be28913a86f43059b0886ad2fcf81a9c699b730
This commit is contained in:
Ludovic Courtès 2023-11-04 01:11:48 +01:00
parent 286639c9af
commit 0c695bbf8d
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5

View file

@ -33,6 +33,10 @@ (define-module (gnu tests)
#:use-module (gnu services base)
#:use-module (gnu services shepherd)
#:use-module (guix discovery)
#:use-module (guix monads)
#:use-module ((guix store) #:select (%store-monad))
#:use-module ((guix utils)
#:select (%current-system %current-target-system))
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-9 gnu)
#:use-module (ice-9 match)
@ -284,8 +288,9 @@ (define (write-system-test test port)
(define-gexp-compiler (compile-system-test (test <system-test>)
system target)
"Compile TEST to a derivation."
;; XXX: SYSTEM and TARGET are ignored.
(system-test-value test))
(mparameterize %store-monad ((%current-system system)
(%current-target-system target))
(system-test-value test)))
(define (test-modules)
"Return the list of modules that define system tests."