-
Notifications
You must be signed in to change notification settings - Fork 36
Description
Problem
The input into the test-runner test execution pipeline is limited to namespaces defined in clj source files only. However, it will only run tests on the CLASSPATH with the latest timestamp.
Background
When trying to run tests defined in AOT compiled files, test-runner is unable to find them because it favors nses defined in source files only. The reason for this is that the possible test namespaces set is built using the clojure.tools.namespace.find/find-namespaces-in-dir
function. This function only locates namespaces in a subtree defined in source files.
However, test-runner will run compiled tests as long as their timestamps are more recent than those of the source files. The reason for this is that test-runner uses require
which will load from the most recent source. I would find it more intuitive if I had a way to be more explicit about which tests I want to run.
Approach
From a high-level perspective, the input to the pipeline should be more explicit.