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   7  
  1         3  
  1         51  
4 1     1   5 use strict;
  1         3  
  1         26  
5             use Module::Install::Base;
6 1     1   19  
  1         2  
  1         133  
7             use vars qw{$VERSION $ISCORE @ISA};
8 1     1   3 BEGIN {
9 1         2 $VERSION = '0.65';
10 1         398 $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 12 sub auto_install {
27 1 50       20 my $self = shift;
28             return if $self->{done}++;
29              
30 1         42 # 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         30 # We'll need Module::AutoInstall
37 1         1299 $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;