--- Eric Wilhelm <[EMAIL PROTECTED]> wrote: > Now, assuming that both ways carry the same caveats, I too would > prefer > the latter because it not only eliminates load time, but also allows > concurrency and provides isolation via the boundary between child > processes.
I may be a bit of a heretic, but after years of using Test::Class, I rather like the fact that I don't have the isolation between tests because a lot of code makes incorrect assumptions about all sorts of things. For example, here's a couple of time bombs waiting to happen: sub slurp { open FH, "< $file" or die $!; do { $/ = undef; <FH> } } Without the process boundary, I'm more likely to catch this in tests. I know most folks would disagree with me on this, but I find this a far more common problem than folks think. > Hmm, could one slurp the __DATA__/__END__ block into a scalar and > open > DATA, '<', \$scalar it on behalf of the subprocess? > > PPI? The goal of Test::Aggregate was to improve performance :) Kidding aside, PPI could be an optional feature to get around some issues, but only with aggressive caching and the open question is whether or not "speeding up tests" is a widespread enough problem to warrant the effort. > I don't see anything in Test::Aggregate where "which modules to > preload" > is specified. Presumably, it lets perl's compile-time handle that. Correct. As I've stated before, the goal of this is to make it as transparent as possible. Move tests from t/ to your 'aggregate' directory. > I also wonder about debug-ability where the `prove aggtests/foo.t` is > potentially a completely different landscape than the full run. If > the > full run is 10 minutes and the landscape-specific failure is at the > end > that seems a bit costly. You can dump the file that it's running and debug that, including commenting out slow bits. This is documented. Cheers, Ovid -- Buy the book - http://www.oreilly.com/catalog/perlhks/ Perl and CGI - http://users.easystreet.com/ovid/cgi_course/ Personal blog - http://publius-ovidius.livejournal.com/ Tech blog - http://use.perl.org/~Ovid/journal/