Branch Coverage

blib/lib/IO/Socket/SSL/PublicSuffix.pm
Criterion Covered Total %
branch 62 96 64.5


line true false branch
123 88 2 if (eval { do { require URI::_idna; defined &URI::_idna::decode if defined &URI::_idna::encode } }) { }
0 2 elsif (eval { do { require Net::IDN::Encode } }) { }
0 2 elsif (eval { do { require Net::LibIDN; require Encode } }) { }
125 88 0 if defined &URI::_idna::encode
155 56 3 unless defined $min_suffix
156 0 59 if %args
172 3 10 unless defined $min_suffix
173 0 13 if %args
176 13 0 if (ref $file) { }
0 0 elsif (not open($fh, '<', $file)) { }
186 43250 69116 if $line eq ""
188 0 69116 unless $line =~ /\A[\x00-\x7f]*\Z/
194 80 69036 $not ? :
207 59 239 if (ref $name) { }
211 3 236 unless defined $name
212 2 234 if (not $name =~ /\A[\x00-\x7f]*\Z/) { }
219 6 230 if $name =~ s/\.$//
222 6 289 unless @$name
229 340 290 if (my $px = $$p{$$name[$name->$#* - $i]})
232 266 74 if (my $end = $px->{'\\0'})
233 252 14 $end > 0 ? :
236 80 550 if (my $px = $p->{'*'})
239 80 0 if (my $end = $px->{'\\0'})
240 80 0 $end > 0 ? :
246 407 251 if (@$choices)
248 41 366 if @$choices
253 223 28 unless @stack
262 14 275 if %xcept
267 53 236 unless defined $len
268 101 188 if $add
270 214 75 if ($len < @$name) { }
75 0 elsif ($len > 0) { }
279 233 56 if ($want ne "a")
282 2 231 if ($want eq "u")
288 6 283 if $add_dot and not ref $suffix
289 45 244 wantarray ? :
296 10 0 unless (defined $data)
298 0 10 unless $data =~ s[^// ===END ICANN DOMAINS.*][]ms
308 0 0 unless -w $dst
309 0 0 unless open my $fh, "<", $dst
314 0 0 if /<<\'END_BUILTIN_DATA\'/
318 0 0 unless /\AEND_BUILTIN_DATA\r?\n/
326 0 0 unless my $resp = "LWP::UserAgent"->new->get($url)
328 0 0 unless $resp->is_success
333 0 0 if ($line =~ /\S/ and not $line =~ m[\A\s*//]) { }
336 0 0 if $line eq ""
337 0 0 unless ($line =~ /\A[\x00-\x7f]+\Z/)
346 0 0 unless open $fh, ">:utf8", $dst