Branch Coverage

blib/lib/Parse/DNS/Zone.pm
Criterion Covered Total %
branch 66 80 82.5


line true false branch
145 6 1 if (not defined $self->{'zonestr'} and defined $self->{'zonefile'})
148 0 7 unless (defined $self->{'zonestr'})
153 6 1 unless (exists $self->{'basepath'})
155 6 0 if defined $self->{'zonefile'}
159 0 7 if $self->{'origin'} =~ /[^[^\.]$/
164 0 7 if ($self->{'require_soa'} and not exists $self->{'zone'}{$self->{'origin'}}{'soa'})
207 26 25 if $name ne $self->{'origin'} and not $name =~ /\.$/
210 2 49 if defined $n
211 3 46 if wantarray
229 2 5 if $name ne $self->{'origin'} and not $name =~ /\.$/
250 1 0 if $name ne $self->{'origin'} and not $name =~ /\.$/
282 1 3 if $name ne $self->{'origin'} and not $name =~ /\.$/
334 1 1 if ($p{'parse'})
412 0 11 unless open my $zonefh, $file
436 298 62 unless $part
438 53 9 unless $unit
443 0 62 unless exists $multi_for_unit{$unit}
460 5 0 if (not defined $zonestr and exists $opts{'zonefile'})
465 5 7 if ($opts{'included'})
509 80 235 if /^\s*$/
522 45 190 if ($mrow) { }
11 179 elsif (/^.*\([^\)]*$/) { }
525 34 11 unless /\)/
541 5 185 if (/^ /)
545 1 189 if /^\$ORIGIN ([\w\-\.]+)\s*$/i
546 6 183 if (/^\$TTL (\S+)\s*$/i)
550 5 178 if (/^\$INCLUDE (\S+)(?: (\S+))?\s*(?:;.*)?$/i)
551 0 5 defined $2 ? :
554 5 0 unless ($1 =~ m[^/])
577 36 142 if (defined $ttlclass and $ttlclass ne "")
584 0 36 if ($ttlclass)
590 26 152 defined $ttl ? :
591 25 153 defined $class ? :
594 0 178 unless $name and $type and $rdata
596 0 178 unless (defined $def_class)
601 0 178 unless (defined $ttl)
609 3 4 if ($self->{'append_origin'} and $type =~ /^(?:cname|afsdb|mx|ns)$/i and $rdata ne $origin and not $rdata =~ /\.$/)
643 1 183 unless $origin =~ /\.$/
645 38 146 if $name =~ /\.$/
646 1 145 if $origin eq "."