From 9980ac0f99f88972d023bf19ad4b0f536f6c29fa Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sun, 26 Sep 2021 23:35:58 +0200 Subject: marionette: Print a line when a test succeeds. * gnu/build/marionette.scm (system-test-runner): Add call to 'test-runner-on-test-end!'. --- gnu/build/marionette.scm | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'gnu/build') diff --git a/gnu/build/marionette.scm b/gnu/build/marionette.scm index e76ef16f51..0ebe535526 100644 --- a/gnu/build/marionette.scm +++ b/gnu/build/marionette.scm @@ -385,6 +385,21 @@ LOG-DIRECTORY is specified, create log file within it." (string-append log-directory "/" suite-name ".log"))) (on-begin runner suite-name count)))) + ;; The default behavior on 'test-end' is to only write a line if the test + ;; failed. Arrange to also write a line on success. + (test-runner-on-test-end! runner + (let ((on-end (test-runner-on-test-end runner))) + (lambda (runner) + (let* ((kind (test-result-ref runner 'result-kind)) + (results (test-result-alist runner)) + (test-name (assq-ref results 'test-name))) + (unless (memq kind '(fail xpass)) + (format (current-output-port) "~a: ~a~%" + (string-upcase (symbol->string kind)) + test-name))) + + (on-end runner)))) + ;; On 'test-end', display test results and exit with zero if and only if ;; there were no test failures. (test-runner-on-final! runner -- cgit v1.2.3