From bc1ad69605b6c3e2744694758d63dfc216107a82 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 11 Feb 2022 23:17:00 +0100 Subject: tests: Pass #:guile to 'computed-file' & co. Fixes a regression introduced in af57d1bf6c46f47d82dbc234dde1e16fa8634e9d whereby tests would end up building the world. * guix/gexp.scm (mixed-text-file): Add #:guile parameter and honor it. * tests/gexp.scm ("mixed-text-file"): Pass #:guile to 'mixed-text-file'. ("file-union"): Pass #:guile to 'file-union'. ("lower-object, computed-file"): Pass #:guile to 'computed-file'. ("lower-object, computed-file + grafts"): Likewise. * tests/packages.scm ("origin->derivation, single file with snippet"): Likewise. * tests/profiles.scm ("profile-derivation, ordering & collisions"): Likewise. * guix/tests.scm (test-file): Likewise. --- guix/gexp.scm | 13 +++++++------ guix/tests.scm | 3 ++- 2 files changed, 9 insertions(+), 7 deletions(-) (limited to 'guix') diff --git a/guix/gexp.scm b/guix/gexp.scm index 8675e605a0..dfeadbd15d 100644 --- a/guix/gexp.scm +++ b/guix/gexp.scm @@ -2068,7 +2068,7 @@ resulting store file holds references to all these." #:local-build? #t #:substitutable? #f)) -(define* (mixed-text-file name #:rest text) +(define* (mixed-text-file name #:key guile #:rest text) "Return an object representing store file NAME containing TEXT. TEXT is a sequence of strings and file-like objects, as in: @@ -2077,12 +2077,13 @@ sequence of strings and file-like objects, as in: This is the declarative counterpart of 'text-file*'." (define build - (gexp (call-with-output-file (ungexp output "out") - (lambda (port) - (set-port-encoding! port "UTF-8") - (display (string-append (ungexp-splicing text)) port))))) + (let ((text (if guile (drop text 2) text))) + (gexp (call-with-output-file (ungexp output "out") + (lambda (port) + (set-port-encoding! port "UTF-8") + (display (string-append (ungexp-splicing text)) port)))))) - (computed-file name build)) + (computed-file name build #:guile guile)) (define* (file-union name files #:key guile) "Return a that builds a directory containing all of FILES. diff --git a/guix/tests.scm b/guix/tests.scm index 4cd1ad6cf9..06ef3cf76d 100644 --- a/guix/tests.scm +++ b/guix/tests.scm @@ -472,7 +472,8 @@ to its file name extension. Return both its file name and its hash." (format #t #+content))) (when #+command (invoke #+command #+name-sans-ext)) - (copy-file #+name #$output))))) + (copy-file #+name #$output)) + #:guile %bootstrap-guile))) (file-drv (run-with-store store (lower-object f))) (file (derivation->output-path file-drv)) (file-drv-outputs (derivation-outputs file-drv)) -- cgit v1.2.3