I am currently using
ctest to run tests written with the Catch framework. I would like to be able to filter which tests I run based on the internal Catch tags; for instance, I would like to be easily prevent any tests tagged
[FUTURE] from running.
For a single test executable, ignoring
ctest, this is straightforward:
But I don't see any way to pass the
'~[FUTURE]' argument to the Catch tests via
ctest. This should be possible
--test-command, but (1)
--test-command doesn't seem to do anything without
--build-and-test (which is not what I want) and (2) this apparently only works for one test at a time anyway, which is also not what I want (I just want to run
ctest on my entire project).
I could just use
ctest -N to get the names of the tests to run, then run the tests myself, but I don't know of any way to get the test filepath from
ctest so I'd have to run
find on all the test-names, and at that point I'm basically implementing my own test runner.
P.S. There are no existing tags for
ctest or the Catch test framework, and I don't have the rep to create them. I'm not really sure what other tags would apply here. I'm only using the
cmake tag because
ctest is part of