Debian lenny version packages
[pkg-perl] / deb-src / libpod-coverage-perl / libpod-coverage-perl-0.19 / bin / pod_cover
1 #!/usr/bin/perl -w
2
3 # Run this to get a coverage analysis of the embedded documentation
4
5 use Pod::Coverage;
6 use lib 'lib';                  # to test distribution inside './lib'
7 use strict;
8
9 print "Pod coverage analysis v1.00 (C) by Tels 2001.\n";
10 print "Using Pod::Coverage v$Pod::Coverage::VERSION\n\n";
11
12 print scalar localtime()," Starting analysis:\n\n";
13
14 my $covered = 0; my $uncovered; my $count = 0; my $c;
15 open FILE, 'MANIFEST' or die "Can't read MANIFEST: $!";
16 while (<FILE>)
17   {
18   chomp;
19   my ($file) = split /[\s\t]/,$_;
20   next unless $file =~ /^lib.*\.pm$/;
21   $file =~ s/^lib\///;                  # remove lib and .pm
22   $file =~ s/\.pm$//;
23   $file =~ s/\//::/g;                   # / => ::
24   my $rc = Pod::Coverage->new( package => $file );
25   $covered += $rc->covered(); 
26   $uncovered += $rc->uncovered(); 
27   $count ++;
28   $c = $rc->coverage() || 0; 
29   $c = int($c * 10000)/100;
30   print "$file has a doc coverage of $c%.\n";
31   my @naked = $rc->naked();
32   if (@naked > 0)
33     {
34     print "Uncovered routines are:\n";
35     print " ",join("\n ",sort @naked),"\n";     # sort by name
36                                                 # could sort by line_num
37     }
38   print "\n";
39   }
40
41 my $total = $covered+$uncovered;
42 my $average = 'unknown';
43 $average = int(10000*$covered/$total)/100 if $total > 0;
44
45 print "Summary:\n";
46 print " sub routines total    : $total\n";
47 print " sub routines covered  : $covered\n";
48 print " sub routines uncovered: $uncovered\n";
49 print " total coverage        : $average%\n\n";