File Coverage

inc/Module/Install/AutoInstall.pm
Criterion Covered Total %
statement 18 30 60.0
branch 1 6 16.6
condition n/a
subroutine 5 9 55.5
pod 0 5 0.0
total 24 50 48.0


line stmt bran cond sub pod time code
1             #line 1
2             package Module::Install::AutoInstall;
3 1     1   8  
  1         3  
  1         49  
4 1     1   8 use strict;
  1         3  
  1         198  
5             use Module::Install::Base;
6 1     1   9  
  1         4  
  1         127  
7             use vars qw{$VERSION $ISCORE @ISA};
8 1     1   3 BEGIN {
9 1         4 $VERSION = '0.64';
10 1         828 $ISCORE = 1;
11             @ISA = qw{Module::Install::Base};
12             }
13 0     0 0 0  
14             sub AutoInstall { $_[0] }
15              
16 0     0 0 0 sub run {
17 0         0 my $self = shift;
18             $self->auto_install_now(@_);
19             }
20              
21 0     0 0 0 sub write {
22 0         0 my $self = shift;
23             $self->auto_install(@_);
24             }
25              
26 1     1 0 15 sub auto_install {
27 1 50       26 my $self = shift;
28             return if $self->{done}++;
29              
30 1         51 # Flatten array of arrays into a single array
31             my @core = map @$_, map @$_, grep ref,
32             $self->build_requires, $self->requires;
33 1         21  
34             my @config = @_;
35              
36 1         31 # We'll need Module::AutoInstall
37 1         5604 $self->include('Module::AutoInstall');
38             require Module::AutoInstall;
39 0 0          
    0          
40             Module::AutoInstall->import(
41             (@config ? (-config => \@config) : ()),
42             (@core ? (-core => \@core) : ()),
43             $self->features,
44             );
45 0            
46             $self->makemaker_args( Module::AutoInstall::_make_args() );
47 0            
48 0           my $class = ref($self);
49             $self->postamble(
50             "# --- $class section:\n" .
51             Module::AutoInstall::postamble()
52             );
53             }
54              
55 0     0 0   sub auto_install_now {
56 0           my $self = shift;
57 0           $self->auto_install(@_);
58             Module::AutoInstall::do_install();
59             }
60              
61             1;