|
133 | 133 | " |
134 | 134 | (%log-around (#?"get-tests:${tests} tags:${tags} package:${package} reintern-package:${reintern-package} exclude-tags:${exclude-tags} exclude-tests:${ exclude-tests }" |
135 | 135 | :start-level 0) |
136 | | - |
| 136 | + (setf tests (alexandria:ensure-list tests) |
| 137 | + tags (alexandria:ensure-list tags) |
| 138 | + exclude-tests (alexandria:ensure-list exclude-tests) |
| 139 | + exclude-tags (alexandria:ensure-list exclude-tags)) |
137 | 140 | (when reintern-package |
138 | | - (setf tests (alexandria:ensure-list |
139 | | - (%in-package tests reintern-package))) |
140 | | - (setf tags (alexandria:ensure-list |
141 | | - (%in-package tags reintern-package))) |
142 | | - (setf exclude-tests (alexandria:ensure-list |
143 | | - (%in-package exclude-tests reintern-package))) |
144 | | - (setf exclude-tags (alexandria:ensure-list |
145 | | - (%in-package exclude-tags reintern-package)))) |
| 141 | + (setf tests (%in-package tests reintern-package)) |
| 142 | + (setf tags (%in-package tags reintern-package)) |
| 143 | + (setf exclude-tests (%in-package exclude-tests reintern-package)) |
| 144 | + (setf exclude-tags (%in-package exclude-tags reintern-package))) |
146 | 145 | ;; defaults to pulling up all tests in the current package |
147 | 146 | (when (and (null tests) (null tags) (null package)) |
148 | 147 | (setf package (package-name *package*))) |
|
156 | 155 | (for test = (%to-test name)) |
157 | 156 | (gathered test)) |
158 | 157 | (flet ((excluded? (test) |
159 | | - (or (and (find (name test) exclude-tests) |
160 | | - (not (find (name test) tests))) |
| 158 | + (when (find (name test) tests) |
| 159 | + (return-from excluded? nil)) |
| 160 | + (or (find (name test) exclude-tests) |
161 | 161 | (iter (for tag in (tags test)) |
162 | 162 | (thereis (and (find tag exclude-tags) |
163 | 163 | (not (find tag tags)))))))) |
|
0 commit comments