From 36d90122a615495773dc357e0e71adb21c151c32 Mon Sep 17 00:00:00 2001 From: Nicolas Graves Date: Sat, 20 Apr 2024 16:11:00 +0200 Subject: guix: pyproject-build-system: Add python test-backend. * guix/build/pyproject-build-system(check): Add python test-backend. This will help in cases where a simple `python -m module args` call has to be made instead of fully replacing the 'check phase, e.g. unittest or django. This is never enabled unless #:test-backend 'python is set, so it doesn't break anything. As an example, the following snippet... (arguments (list #:phases #~(modify-phases %standard-phases (replace 'check (lambda* (#:key tests? #:allow-other-keys) (when tests? (invoke "python" "-m" "unittest" "diff_match_patch.tests"))))))) ...can be transformed like this: (arguments '(#:test-backend 'python #:test-flags (list "-m" "unittest" "diff_match_patch.tests"))) Change-Id: I4919a3e01d64864e3c328609fbcce7df5b3dfe51 --- guix/build/pyproject-build-system.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/guix/build/pyproject-build-system.scm b/guix/build/pyproject-build-system.scm index c69ccc9d64..295542f317 100644 --- a/guix/build/pyproject-build-system.scm +++ b/guix/build/pyproject-build-system.scm @@ -168,6 +168,8 @@ builder.build_wheel(sys.argv[2], config_settings=config_settings)" (if (null? test-flags) '("test" "-v") test-flags))) + ('python + (apply invoke "python" test-flags)) ;; The developer should explicitly disable tests in this case. (else (raise (condition (&test-system-not-found)))))) (format #t "test suite not run~%"))) -- cgit v1.2.3