in reply to See your test results in color.

My tester looks like:
my @failures; foreach my $file (<t/*.t>) { local *STDERR; my %results = eval { $tester->analyze_file( $file ); }; push @failures, $file unless $results{passing}; } if (@failures) { print scalar(@failures), " files failed.\n"; local $"=$/; print "@failures\n"; } else { print "All tests succeeded.\n"; }

You'll want the eval, just in case something dies in your test file, like a missing method name. The local *STDERR; seems to shut Test::Harness up. YMMV.

Being right, does not endow the right to be rude; politeness costs nothing.
Being unknowing, is not the same as being stupid.
Expressing a contrary opinion, whether to the individual or the group, is more often a sign of deeper thought than of cantankerous belligerence.
Do not mistake your goals as the only goals; your opinion as the only opinion; your confidence as correctness. Saying you know better is not the same as explaining you know better.

Replies are listed 'Best First'.
Re^2: See your test results in color.
by Ovid (Cardinal) on Jan 26, 2005 at 20:11 UTC

    Oh, duh! Yeah, I need the eval so the terminal colors don't get messed up. Good point.

    Rather than shut Test::Harness up, I'd rather do something like Tie::STDERR, figure out where the output belongs and synchronize it with the results, but I don't think there's any way of knowing which output to STDERR corresponds to a particular test.

    Cheers,
    Ovid

    New address of my CGI Course.

      Well, you could always redirect STDERR to STDOUT like

      local *STDERR; open STDERR, ">&STDOUT" or die "cannot dup STDERR to STDOUT: $!\n";

      And then deal with only one output stream...

      radiantmatrix
      require General::Disclaimer;
      s//2fde04abe76c036c9074586c1/; while(m/(.)/g){print substr(' ,JPacehklnorstu',hex($1),1)}

        Actually, it looks like petdance is going to create a proper test result object that we will be able to use to fetch this data. He just needs a few tuits, but once that is done, being able to manipulate test results will be much easier.

        Cheers,
        Ovid

        New address of my CGI Course.