# from chromatic
# on Friday 17 August 2007 01:05 pm:
>On Friday 17 August 2007 12:52:54 Eric Wilhelm wrote:
>> 1. it doesn't play nicely with recursive tests[1]
>
>"It's okay to run everything in t/ recursively" is a heuristic. You
> can tell it's a heuristic because sometimes it's wrong.
That's not what I meant by "doesn't play nicely". I mean, "my project
cannot use recursive tests *and* have author-only tests in t/author
without jumping through hoops." Hoops include: a custom test action,
special options (or patches) to prove and runtests, etc.
>Avoiding heuristics requires some sort of metadata. Now a custosm
> build action may be *bad* for other reasons, but it's not ambiguous,
> like a heuristic.
Let's forget for a second that I'm trying to assume anything about t/ or
any other directory. The simple fact is that the current tools will
behave more nicely if everything in $the_one_directory is of one sort
and everything in $the_other_directory is of the other sort. Without
that, we need code to sort the one from the other because they were all
thrown into the same bag. Then we need an XML config file for that
code and etc, etc.
>Perhaps we need to define:
>
<snip yet-another discussion entirely>
>4) what options are there for distinguishing...
>5) which answer to #4 sucks the least
>...any answer to #4 which includes a heuristic will fail #5
Any answer which requires a config-file and modifications to existing
tools will also fail.
So, maybe we have to say "extra_tests: xt" (or even some deeper
data-structure) to avoid a heuristic. Fine. What would that
data-structure look like?
extra_tests:
base_dir: xt
profiles:
author: author
network: network
gui: gui
exhaustive: exhaustive
The human will want the directory structure to mirror the names of the
profiles, right? So, now the human has to type more, but there's no
heuristic (well, except for the names of the keys in the config file.)
--Eric
--
Speak softly and carry a big carrot.
---------------------------------------------------
http://scratchcomputing.com
---------------------------------------------------