File Coverage

blib/lib/Enbld/Target/Attribute/URL.pm
Criterion Covered Total %
statement 23 23 100.0
branch 4 4 100.0
condition n/a
subroutine 6 6 100.0
pod 0 1 0.0
total 33 34 97.0


line stmt bran cond sub pod time code
1             package Enbld::Target::Attribute::URL;
2              
3 2     2   7463 use strict;
  2         17  
  2         79  
4 2     2   13 use warnings;
  2         7  
  2         58  
5              
6 2     2   11 use Carp;
  2         4  
  2         148  
7              
8 2     2   12 use parent qw/Enbld::Target::AttributeExtension::URL/;
  2         6  
  2         12  
9              
10             sub initialize {
11 53     53 0 137 my ( $self, $param ) = @_;
12              
13 53 100       168 if ( ! defined $param ) {
14             $self->{callback} = sub {
15 30     30   52 my $attributes = shift;
16              
17 30         139 return $attributes->DownloadSite . $attributes->Filename;
18 47         519 };
19              
20 47         120 return $self;
21             }
22              
23 6 100       16 if ( $param ) {
24 5         43 $self->SUPER::initialize( $param );
25 5         11 return $self;
26             }
27              
28 1         5 require Enbld::Exception;
29 1         8 croak( Enbld::Exception->new( "Attribute 'URL' isn't defined" ) );
30             }
31              
32             1;