in reply to Aggregating "ok" messages within an aggregating script

I think you were after something like this:
#!/usr/bin/perl use strict; use warnings; use POSIX qw/strftime/; use TAP::Parser qw/all/; use TAP::Parser::Aggregator qw/all/; printf STDOUT "\n---\nReport %s\n---\n", strftime("%y%m%d-%H:%M", localtime); my $file = 'your_test_here.t'; my $parser = TAP::Parser->new({ source => $file }); while ( my $result = $parser->next ) { print "$file results: ", $result->as_string, "\n"; } my $aggregate = TAP::Parser::Aggregator->new; $aggregate->add( 'your_test_here', $parser ); my $summary = <<'END_SUMMARY'; Passed: %s Failed: %s Todo: %s Skipped: %s Planned: %s Unexpectedly succeeded: %s END_SUMMARY printf $summary, scalar $aggregate->passed, scalar $aggregate->failed, scalar $aggregate->todo_passed, scalar $aggregate->todo, scalar $aggregate->skipped, scalar $aggregate->planned;

Replies are listed 'Best First'.
Re^2: Aggregating "ok" messages within an aggregating script
by throvolos (Initiate) on Jan 20, 2011 at 22:26 UTC

    Unfortunately, that's not what I need.

    There is no $file (no .t files to test)

    Take that script your wrote, add a bunch of 'ok' tests into it, have no $file targets, and have the script summarize its OWN 'ok' messages... that's what I need.

      I am not experienced with test, separated test scripts seems popular. So I am not sure what I think is good or bad. How about using pod comment like Test::inline? And use prove command of Test::Harness? I mean like this.
      ... contents of module =test begin ok(1==1, "1 test") ok(2==2, "2 test") =test end
      And grep this test.pl and test.
      > cat test.pl |grep -v "^test" > testfile > perl testfile; prove testfile
      regards