scheme-libraries/retropikzel/tap
retropikzel cbf860fcc0 Switch testing to TAP and JUnit 2026-07-19 15:52:47 +03:00
..
LICENSE Add TAP library 2026-07-18 19:58:05 +03:00
README.md Switch testing to TAP and JUnit 2026-07-19 15:52:47 +03:00
VERSION Switch testing to TAP and JUnit 2026-07-19 15:52:47 +03:00
test.scm Add TAP library 2026-07-18 19:58:05 +03:00

README.md

TAP output for SRFI-64

Test Anything Protocol

Usage

(import (scheme base)
        (srfi 64)
        (retropikzel tap))

(test-runner-current (tap-runner))

Jenkins usage tip

Use JUnit test runner in Jenkins and output to file, use TAP anywhere else and output to stdout.

(cond ;; In Jenkins ((get-environment-variable "JENKINS_URL") (let ((junit-file "junit-result.xml")) (test-runner-current (junit-runner)) (when (file-exists? junit-file) (delete-file junit-file)) (set-junit-runner-output-port! (open-output-file junit-file)))) (else (test-runner-current (tap-runner))))

Reference

(tap-runner)

Get the TAP test runner.

(set-tap-runner-output-port! port)

Set the output port of the test runner. To output to file you can do:

(define tap-file "tap-result.txt")
(when (file-exists? tap-file) (delete-file tap-file))
(set-tap-runner-output-port! (open-output-file tap-file))