Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Aug 1st, 2012  |  syntax: None  |  size: 1.21 KB  |  hits: 8  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. Generate HTML Reports using TAP::Formatter::HTML and prove
  2. ==> t/test.t
  3.  
  4. #!/usr/bin/perl
  5.  
  6. use strict;
  7. use warnings;
  8.  
  9. use Test::More;
  10. plan tests => 4;
  11.  
  12. require "/home/mydir/perl5/lib/perl5/TAP/Harness.pm";
  13. require "/home/mydir/perl5/lib/perl5/TAP/Formatter/HTML.pm";
  14. require "/home/mydir/perl5/lib/perl5/TAP/Parser/Aggregator.pm";
  15.  
  16. my $f = TAP::Formatter::HTML->new;
  17. $f->verbosity(-1);
  18. $f->force_inline_css(0);
  19.  
  20. my %args = (
  21.     formatter => $f,
  22.     merge => 1,
  23. );
  24. my $a = TAP::Parser::Aggregator->new;
  25. my $h = TAP::Harness->new(%args);
  26.  
  27. my @files = qw[01.pl 02.pl 03.pl 04.pl];
  28.  
  29. $a->start;
  30. $h->aggregate_tests($a, @files);
  31. $a->stop;
  32.  
  33. done_testing(4);
  34.  
  35. my $summary = <<'END_SUMMARY';
  36.   Total Tests:    %s
  37.   Passed:    %s
  38.   Failed:    %s
  39.   Unexpectedly succeeded: %s
  40.   END_SUMMARY
  41.  
  42.   printf $summary,
  43.   scalar $a->total,
  44.   scalar $a->passed,
  45.   scalar $a->failed,
  46.   scalar $a->todo_passed;
  47.  
  48.   ==> Output (in html format)
  49.  
  50.     1..4
  51.     ok 1 - First
  52.     ok 1 - Second
  53.     ok 1 - Third
  54.     Total Tests: 4
  55.     Passed: 4
  56.     Failed: 0
  57.     Unexpectedly succeeded: 0
  58.     ok 1 - Four
  59.        
  60. prove -m -Q --state=last --formatter=TAP::Formatter::HTML t/ > output.html
  61.        
  62. $output = `prove -m -Q --state=last --formatter=TAP::Formatter::HTML t/`;