Discovery is at runtime. Syntax goes something like
MODULE(foo) {
DEPENDS(bar);
TEST("I like string names") {
CHECK(42 == life());
}
}
where DEPENDS either sends control flow off to bar or onwards towards the test case depending on the value of an argument to the function MODULE created.