1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-01 04:10:18 +02:00

guile-test: ignore *.test dotfiles by default

Adjust guile-test to ignore any test files with names beginning with a
dot.

If nothing else, this avoids make check and ./check-guile failures when
Emacs has unsaved changes to a test file.  In that case Emacs creates a
symlink to nowhere until the content is saved or reverted.

* test-suite/guile-test: ignore test files whose names begin with a dot.
This commit is contained in:
Rob Browning 2023-08-19 18:19:36 -05:00
parent c665e18705
commit 6bb6c89f89

View file

@ -32,9 +32,10 @@
;;;; fail or pass unexpectedly. ;;;; fail or pass unexpectedly.
;;;; ;;;;
;;;; Normally, guile-test scans the test directory, and executes all ;;;; Normally, guile-test scans the test directory, and executes all
;;;; files whose names end in `.test'. (It assumes they contain ;;;; files whose names end in `.test' and don't begin with `.'. (It
;;;; Scheme code.) However, you can have it execute specific tests by ;;;; assumes they contain Scheme code.) However, you can have it
;;;; listing their filenames on the command line. ;;;; execute specific tests by listing their filenames on the command
;;;; line.
;;;; ;;;;
;;;; The option `--test-suite' can be given to specify the test ;;;; The option `--test-suite' can be given to specify the test
;;;; directory. If no such option is given, the test directory is ;;;; directory. If no such option is given, the test directory is
@ -158,10 +159,10 @@
(let ((root-len (+ 1 (string-length test-dir))) (let ((root-len (+ 1 (string-length test-dir)))
(tests '())) (tests '()))
(for-each-file (lambda (file) (for-each-file (lambda (file)
(if (string-suffix? ".test" file) (when (string-suffix? ".test" file)
(let ((short-name (let ((short-name (substring file root-len)))
(substring file root-len))) (unless (eqv? #\. (string-ref short-name 0))
(set! tests (cons short-name tests)))) (set! tests (cons short-name tests)))))
#t) #t)
test-dir) test-dir)