File Coverage

blib/lib/CPAN/AutoINC.pm
Criterion Covered Total %
statement 21 23 91.3
branch 2 6 33.3
condition 1 3 33.3
subroutine 5 5 100.0
pod 0 2 0.0
total 29 39 74.3


line stmt bran cond sub pod time code
1             package CPAN::AutoINC;
2              
3 1     1   38853 use strict;
  1         3  
  1         39  
4 1     1   53342 use CPAN;
  1         700586  
  1         1341  
5              
6             our $VERSION = '0.01';
7              
8             sub new {
9 1     1 0 17 my ($this) = shift;
10 1   33     21 my ($class) = ref($this) || $this;
11              
12 1         6 my $self = bless({}, $class);
13            
14 1         43 return $self;
15             }
16              
17             sub CPAN::AutoINC::INC {
18 2     2 0 78318 my ($self, $filename) = @_;
19              
20 2 50       34 if ($filename =~ /^(.+)\.pm$/) {
21 2         12 my $module = $1;
22 2         12 $module =~ s!/!::!g;
23              
24 2         35 foreach my $m (expand("Module", $module)) {
25 1         2951752 CPAN::Shell->install($m);
26              
27 1         789 foreach my $prefix (@INC) {
28 12         31 my $realfilename = "$prefix/$filename";
29 12 50       338 if (-f $realfilename) {
30 0         0 my $fh;
31              
32 0 0       0 return $fh if (open ($fh, $realfilename));
33             }
34             }
35             }
36             }
37              
38 2         440 return undef;
39             }
40              
41             BEGIN {
42 1     1   14 push (@INC, new CPAN::AutoINC());
43             };
44              
45             1;
46             __END__