summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOla Nilsson <ola.nilsson@gmail.com>2019-12-27 00:55:18 +0100
committerOla Nilsson <ola.nilsson@gmail.com>2020-02-29 07:20:37 +0100
commit8e29f4cfb03ca52cd43eaa6bf6313f5a795dcb39 (patch)
treef65b540c4158b5a4a2a4867c6c999f00bb3c0a32
parent9265f83973066861ee986f11dd790c310b9eb4f3 (diff)
Extract buttercup--mark-skipped from buttercup-run-discover
-rw-r--r--buttercup.el19
1 files changed, 12 insertions, 7 deletions
diff --git a/buttercup.el b/buttercup.el
index 4c2746b..092deef 100644
--- a/buttercup.el
+++ b/buttercup.el
@@ -1368,15 +1368,20 @@ current directory."
(when (not (string-match "\\(^\\|/\\)\\." (file-relative-name file)))
(load file nil t))))
(when patterns
- (dolist (spec (buttercup--specs buttercup-suites))
- (let ((spec-full-name (buttercup-spec-full-name spec)))
- (unless (cl-dolist (p patterns)
- (when (string-match p spec-full-name)
- (cl-return t)))
- (setf (buttercup-spec-function spec)
- (lambda () (signal 'buttercup-pending "SKIPPED")))))))
+ (buttercup--mark-skipped buttercup-suites patterns))
(buttercup-run)))
+(defun buttercup--mark-skipped (suites patterns)
+ "Mark any spec in SUITES not matching PATTERNS as skipped.
+SUITES is a list of suites. PATTERNS is a list of regexps."
+ (dolist (spec (buttercup--specs suites))
+ (let ((spec-full-name (buttercup-spec-full-name spec)))
+ (unless (cl-dolist (p patterns)
+ (when (string-match p spec-full-name)
+ (cl-return t)))
+ (setf (buttercup-spec-function spec)
+ (lambda () (signal 'buttercup-pending "SKIPPED")))))))
+
;;;###autoload
(defun buttercup-run-markdown-buffer (&rest markdown-buffers)
"Run all test suites defined in MARKDOWN-BUFFERS.