From 2fdba37fe26ff3c24f5cfae040d2098c31cf30c2 Mon Sep 17 00:00:00 2001 From: Frederick Muriuki Muriithi Date: Mon, 22 Jun 2026 10:48:53 -0500 Subject: Bugfix: empty body in form (lambda () (begin)) lambda does not allow an empty body, so we need to ensure the "in-guard" thunk of the dynamic-wind call does not end up with an empty `(begin)` form. The "out-guard" thunk does not suffer this problem since it has other forms in addition to any teardown g-expressions that might be provided. --- genenetwork-development.scm | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'genenetwork-development.scm') diff --git a/genenetwork-development.scm b/genenetwork-development.scm index 85f34fb..413afdb 100644 --- a/genenetwork-development.scm +++ b/genenetwork-development.scm @@ -1732,10 +1732,16 @@ delete-test-users, etc.) as the genenetwork user via sudo." (string-append site-packages ":" (getenv "PYTHONPATH"))) (setenv "PYTHONPATH" site-packages)) (dynamic-wind - (lambda () (begin #$@setup)) ;; Run setup if provided + (lambda () ;; Run setup if provided + #$(if (null? setup) + #~(if #f #f) + #~(begin #$@setup))) (lambda () (apply invoke '#$test-command)) ;; Run actual tests (lambda () ;; Always run teardowns to clean up. - (begin #$@teardown) ;; run if teardowns provided + (begin ;; run if teardowns provided + ;; we don't need `null?' check here because we have other + ;; statements therefore the `lambda' does not end up empty. + #$@teardown) (chdir orig-dir) (delete-file-recursively tmp-dir)))))))))) -- cgit 1.4.1