Branch Coverage

blib/lib/IO/Socket/TIPC/Sockaddr.pm
Criterion Covered Total %
branch 84 128 65.6


line true false branch
48 3 0 if (exists $args->{'Type'}) { }
0 0 elsif (exists $args->{'Ref'}) { }
49 1 2 if (exists $args->{'Instance'}) { }
2 0 elsif (exists $args->{'Lower'}) { }
0 0 elsif (exists $args->{'Upper'}) { }
55 1 1 unless exists $args->{'Upper'}
60 0 0 unless exists $args->{'Lower'}
93 0 108 unless defined $ref
96 0 108 unless exists $valid{$addrtype}
105 0 87 unless (exists $valid_args{$key})
110 0 0 if ($lckey eq lc $goodkey)
118 0 0 unless $fixed
128 4 21 if (exists $args->{'Id'}) { }
0 21 elsif (exists $args->{'Name'}) { }
0 21 elsif (exists $args->{'Nameseq'}) { }
130 1 3 if exists $args->{'Ref'}
131 0 4 unless tipc_parse_string(\%details, $args->{'Id'})
135 4 0 if exists $details{'Ref'}
137 0 0 unless tipc_parse_string(\%details, $args->{'Name'})
141 0 0 unless tipc_parse_string(\%details, $args->{'Nameseq'})
146 4 21 if (exists $details{'AddrType'})
147 2 2 unless exists $args->{'AddrType'}
162 0 25 unless defined $ref
165 0 87 unless exists $args->{$key}
352 25 0 if (@_)
353 5 20 if (scalar @_ & 1)
354 0 5 unless tipc_parse_string(\%args, shift())
359 0 25 unless fixup_hash_names(\%args)
361 0 25 unless string_parsing_stuff(\%args)
362 3 22 unless (exists $args{'AddrType'})
363 0 3 unless divine_address_type(\%args)
366 0 25 unless validate_args_for_address_type(\%args)
368 13 12 if ($args{'AddrType'} eq 'name')
369 4 9 if (exists $args{'Domain'}) { }
370 2 2 unless (&looks_like_number($args{'Domain'}))
374 0 2 unless $href->{'AddrType'} eq 'id'
381 7 18 if (exists $args{'Scope'}) { }
393 4 3 unless (exists $valid_scopes{$scope})
395 4 0 if exists $scope_values{lc $scope}
399 0 7 unless exists $valid_scopes{$scope}
405 0 25 unless check_prereqs_for_address_type(\%args)
408 6 19 if ($args{'AddrType'} eq 'id') { }
13 6 elsif ($args{'AddrType'} eq 'name') { }
6 0 elsif ($args{'AddrType'} eq 'nameseq') { }
538 1 1 unless (&looks_like_number($addr))
542 0 1 unless $components->{'AddrType'} eq 'id'
551 1 1 unless (&looks_like_number($addr))
555 0 1 unless $components->{'AddrType'} eq 'id'
573 1 2 unless (&looks_like_number($addr))
577 0 1 unless $components->{'AddrType'} eq 'id'
598 1 2 unless (&looks_like_number($addr))
602 0 1 unless $components->{'AddrType'} eq 'id'
617 1 2 unless (&looks_like_number($addr))
621 0 1 unless $components->{'AddrType'} eq 'id'
640 1 8 unless (&looks_like_number($zone))
645 0 1 unless $components->{'AddrType'} eq 'id'
685 12 5 if ($string =~ /^<(\d+)\.(\d+)\.(\d+)(:(\d+))?>$/)
690 3 9 if defined $5
691 8 4 unless defined $args->{'Ref'}
695 0 17 if ($string =~ /^(\d+)$/)
704 1 16 if ($string =~ /^0x([0-9a-fA-F]{1,8})$/)
713 2 15 if ($string =~ /^\{(\d+),\s*(\d+)\}$/)
720 2 15 if ($string =~ /^\{(\d+),\s*(\d+),\s*(\d+)\}$/)
727 0 17 unless $valid