Hello, I think I found a bug in (srfi srfi-64) module shipped with GNU Guile.
Test runner is specified as: > A test-runner is an object that runs a test-suite, and manages the state. The > test group path, and the sets skip and expected-fail specifiers are part of > the test-runner. A test-runner will also typically accumulate statistics about > executed tests. Based on this description, run list is *not* supposed to be part of the test runner state, therefore test-runner-reset should not touch it. However that does not seem to be the case: (use-modules (srfi srfi-64)) (test-apply (test-match-name "t-a") (λ () (test-begin "x") (test-assert "t-a" (pk 't-a)) (test-assert "t-b" (pk 't-b)) (test-runner-reset (test-runner-current)) (test-begin "x") (test-assert "t-a" (pk 't-a)) (test-assert "t-b" (pk 't-b)))) Prints: %%%% Starting test x (Writing full log to "x.log") ;;; (t-a) %%%% Starting test x (Writing full log to "x.log") ;;; (t-a) ;;; (t-b) Notice that in the second part, t-b is executed despite not supposed to be on the run list. Have a nice day Tomas Volf