Branch Coverage

blib/lib/Cfn.pm
Criterion Covered Total %
branch 91 178 51.1


line true false branch
8 4941 2845 if (@keys == 1 and substr($first_key, 0, 4) eq 'Fn::' || $first_key eq 'Ref' || $first_key eq 'Condition') { }
9 397 4544 if ($first_key eq 'Fn::GetAtt') { }
3530 1014 elsif ($keys[0] eq 'Ref') { }
7 1007 elsif ($keys[0] eq 'Condition') { }
14 622 2908 $psdparam->check($value) ? :
88 2455 1230 if defined $function
98 2486 0 if defined $function
407 5 28 if (&blessed($v) and $v->isa('Cfn::Value')) { }
4 24 elsif (not &blessed($v) and ref $v eq 'HASH') { }
4 20 elsif (not &blessed($v) and ref $v eq 'ARRAY') { }
448 0 4623 if $part ne $self->Function
449 2951 1672 if defined $rest
472 0 1985 unless $self->can($part)
473 735 1250 if defined $rest
543 0 6232 unless exists $self->Value->[$part]
544 3934 2298 if defined $rest
568 0 1155 unless exists $self->Value->{$part}
569 850 305 if defined $rest
645 1718 5 if (defined $self->Type) { }
646 1 1717 if ($class_name ne $self->Type and $class_name ne 'AWS::CloudFormation::CustomResource')
662 0 5947 unless defined $self->Properties
674 8 4 unless defined $self->DependsOn
675 3 1 if ref $self->DependsOn eq 'ARRAY'
699 6810 0 if ($part eq 'Properties') { }
0 0 elsif ($part eq 'Metadata') { }
0 0 elsif ($part eq 'DependsOn') { }
0 0 elsif ($part eq 'Type' or $path eq 'Condition') { }
700 0 6810 unless defined $rest
703 0 0 unless defined $rest
706 0 0 unless defined $rest
709 0 0 unless defined $rest
726 1619 2782 if (defined $self->$el)
728 1619 0 if (@ret == 1) { }
742 0 6810 unless $self->can($part)
743 4895 1915 if defined $rest
750 0 0 unless defined $self->$att
752 0 0 if ($self->$att->isa('Cfn::Value::Function::Ref') and $self->$att->LogicalId eq $logical_id) { }
0 0 elsif ($self->$att->isa('Cfn::Value::Function::GetAtt') and $self->$att->LogicalId eq $logical_id) { }
0 0 elsif ($self->$att->isa('Cfn::Value::Array')) { }
0 0 elsif ($self->$att->isa('Cfn::Value::Function')) { }
0 0 elsif ($self->$att->isa('Cfn::Value::Primitive')) { }
0 0 elsif ($self->$att->isa('Cfn::Value')) { }
758 0 0 if (not @ref) { }
829 1 3 defined $self->Condition ? :
0 4 defined $self->Description ? :
0 4 defined $self->Export ? :
839 0 0 if $part ne 'Value' and $part ne 'Description' and $part ne 'Condition' and $part ne 'Export'
844 765 0 if ($part eq 'Value') { }
0 0 elsif ($part eq 'Description' or $part eq 'Condition') { }
0 0 elsif ($part eq 'Export') { }
845 135 630 unless defined $rest
848 0 0 if defined $rest
851 0 0 unless defined $rest
875 0 0 defined $self->$_ ? :
1000 0 0 if defined $self->Parameter($name)
1001 0 0 if (ref $type) { }
1010 1 2 if defined $self->Mapping($name)
1011 2 0 if (ref $mapping eq 'HASH') { }
1020 0 4 if defined $self->Output($name)
1021 0 4 if (my $class = &blessed($output)) { }
1022 0 0 if $class ne 'Cfn::Output'
1031 0 1 if defined $self->Condition($name)
1037 0 492 if defined $self->Resource($name)
1039 267 225 if (not ref $second_param) { }
1043 33 234 if (ref $third_param eq 'HASH') { }
1045 26 7 if (not defined $rest[0]) { }
7 0 elsif (defined $rest[0] and ref $rest[0] eq 'HASH') { }
1071 5 0 if (ref $name eq 'HASH') { }
1072 0 5 if defined $self->Metadata
1075 0 0 if defined $self->MetadataItem($name)
1082 0 0 unless defined $self->Resources->{$name}
1087 0 0 unless defined $self->Resources->{$name}
1092 0 0 unless defined $self->Resources->{$name}
1097 0 0 unless defined $self->Resources->{$name}
1103 0 0 unless (defined $self->Transform)
1128 0 470 defined $self->AWSTemplateFormatVersion ? :
0 470 defined $self->Description ? :
2 468 defined $self->Transform ? :
1 469 defined $self->Mappings ? :
0 470 defined $self->Parameters ? :
2 468 defined $self->Outputs ? :
1 469 defined $self->Conditions ? :
5 465 defined $self->Metadata ? :
1134 0 45770 unless defined $path
1143 0 4 if $part ne 'Resources' and $part ne 'Mappings' and $part ne 'Parameters' and $part ne 'Outputs' and $part ne 'Conditions' and $part ne 'Metadata'
1151 0 8695 unless defined $rest
1155 0 8695 unless defined $part
1157 0 8695 unless defined $current_element->{$part}
1158 7575 1120 if defined $rest