On Sunday 20 April 2008 18:04:34 James Keenan wrote:

> 2.  When I now configure with 'perl Configure.pl --test', I get this
> warning, both at the start of configuration and in t/configure/025-
> options_test.t andn t/configure/049-options_test.t:
>
> No tests exist for configure step gen::digest at Configure.pl line 14
>
> ... which means we've added a configuration step class with no
> corresponding tests.  (Until yesterday, configuration would have
> simply died at this point, but I acknowledged a request to have it
> just generate a warning instead.)  The test file could be as simple
> as a two-test file, with one test saying use_ok the new step and
> another saying 'pass'.

What good would that test file do?  It wouldn't tell us *anything* about 
Parrot and it wouldn't tell us anything interesting or useful about the 
configuration system.  All it would do is shut up an artificial warning, 
which I presume is there for a very good reason.

I suspect that people aren't adding test files for configuration steps 
because:

1) they don't know how
2) the existing tests for configuration steps are big blobs of messy, 
duplicated code

From what I've seen of the configuration tests so far, we could replace a 
couple of hundred separate files with a couple of dozen data files and one or 
two Perl 5 modules which made assertions based on the contents of the data 
files.  Rather than enabling warnings and then trying to shut them off just 
for the purpose of shutting them off, I think our strategy needs to change.

I'm all for getting as much value out of our tests as possible (I could write 
another book about it), but I keep thinking we're heading down the wrong path 
with our configuration tests.  Our configuration system ought to be getting 
easier to understand, to maintain, and modify.  Is it?  Our configuration 
tests ought to be getting more comprehensive, simpler, and valuable.  Are 
they?

-- c

Reply via email to