Branch Coverage

blib/lib/Mail/SPF/Request.pm
Criterion Covered Total %
branch 35 44 79.5


line true false branch
215 1 17 if ref $self->{'state'} eq "HASH"
220 1 17 unless my $versions_for_scope = $self->versions_for_scope->{$self->{'scope'}}
223 9 8 if (not defined $self->{'versions'}) { }
228 2 6 if (not ref $self->{'versions'}) { }
1 5 elsif (ref $self->{'versions'} ne 'ARRAY') { }
244 1 6 if @unsupported_versions
257 1 5 unless @versions
264 1 13 unless defined $self->{'identity'}
265 0 13 if (not length $self->{'identity'} and defined $self->{'helo_identity'}) { }
0 13 elsif (not length $self->{'identity'}) { }
273 9 4 if ($self->{'scope'} eq 'mfrom' || $self->{'scope'} eq 'pra' and $self->{'identity'} =~ /^(.*)@(.*?)$/) { }
286 4 9 unless defined $self->{'localpart'} and length $self->{'localpart'}
289 2 11 if ($self->{'scope'} eq "helo")
296 1 12 if grep(($self->{'scope'} eq $_), ("helo", "mfrom", "pra")) and not defined $self->{'ip_address'}
299 10 2 unless (UNIVERSAL::isa($self->{'ip_address'}, "NetAddr::IP"))
301 0 10 unless my $ip_address = "NetAddr::IP"->new($self->{'ip_address'})
306 1 11 if ('Mail::SPF::Util'->ipv6_address_is_ipv4_mapped($self->{'ip_address'})) { }
11 0 elsif ($self->{'ip_address'}->version == 4) { }
0 0 elsif ($self->{'ip_address'}->version == 6) { }
336 0 0 unless UNIVERSAL::isa($super_request, __PACKAGE__)
470 0 5 unless defined $field
472 2 3 if @value