Branch Coverage

blib/lib/String/CodiceFiscale.pm
Criterion Covered Total %
branch 144 178 80.9


line true false branch
66 0 57 unless $OPTS{$k}
75 7 2 if (defined $sn)
87 17 21 if (defined $sn_c)
89 1 16 unless ($sn_c =~ /$RE_nc/x)
94 2 14 unless (length $sn_c == 3)
102 5 30 if (defined $self->{'sn'} and not defined $self->{'sn_c'})
107 2 9 if length $temp >= 3
111 2 1 if length $temp >= 3
131 0 2 unless defined $tm
134 0 2 if (defined(my $sn = $self->sn))
138 2 0 if (defined $self->sn_c)
147 9 4 if (defined $fn)
159 19 27 if (defined $fn_c)
161 1 18 unless ($fn_c =~ /$RE_nc/x)
166 2 16 unless (length $fn_c == 3)
174 7 36 if (defined $self->{'fn'} and not defined $self->{'fn_c'})
179 3 16 if ($skip and length $temp == 1)
184 4 12 if length $temp >= 3
188 2 2 if length $temp >= 3
207 0 4 unless defined $tm
210 0 4 if (defined(my $fn = $self->fn))
214 4 0 if (defined $self->fn_c)
224 6 1 if (defined $date) { }
227 1 5 if ($@)
237 0 15 unless ($self->$_($date{$_}))
246 0 3 unless (defined $date{$_})
259 7 2 if (defined $y)
260 1 6 unless ($y =~ /^\d+$/)
267 2 6 if (not defined $self->{'year'} and defined $self->{'year_c'})
272 2 0 $year > $twodigits_year ? :
282 9 13 if (defined $ycx)
284 1 8 unless ($yc =~ /^\d\d$/)
291 1 20 if (not defined $self->{'year_c'} and defined $self->{'year'})
300 8 3 if (defined $m)
301 1 6 unless ($m =~ /^\d+$/ and $m >= 1 and $m <= 12)
308 2 7 if (not defined $self->{'month'} and defined $self->{'month_c'})
317 8 14 if (defined $mc)
318 0 8 unless ($mc =~ /^[$MONTHS]$/o)
325 2 20 if (not defined $self->{'month_c'} and defined $self->{'month'})
334 7 3 if (defined $d)
335 1 6 unless ($d =~ /^\d+$/ and 1 <= $d and $d <= 31)
342 2 7 if (not defined $self->{'day'} and defined $self->{'day_c'})
344 1 1 $dayx > 40 ? :
352 9 15 if (defined $dcx)
354 0 9 unless ($dc =~ /^\d+$/)
358 1 8 unless ($dc > 0 and not $dc > 31 && $dc < 41 and $dc <= 71)
366 3 0 if (not defined $self->{'day_c'} and defined $self->{'day'} and defined $self->{'sex'})
369 1 2 if $self->{'sex'} eq 'F'
378 5 2 if (defined $sex)
379 0 5 unless ($sex =~ /^[MF]$/i)
386 2 5 if (not defined $self->{'sex'} and defined $self->{'day_c'})
388 1 1 $dayx > 40 ? :
396 6 3 if (defined $bp)
397 2 4 unless ($bp =~ /^[A-Z]\d\d\d$/)
404 2 5 if (not defined $self->{'bp'} and defined $self->{'bp_c'})
415 10 13 if (defined $bpcx)
418 1 9 unless ($bpc =~ /^[A-Z]\d\d\d$/)
425 1 21 if (not defined $self->{'bp_c'} and defined $self->{'bp'})
436 0 39 unless (defined $t)
460 0 52 unless (defined $t)
474 0 13 unless ($cf)
478 3 10 if ($dupe)
483 9 12 if $bitmap[$i]
493 5 8 $cf_out ? :
501 0 7 unless (length $cf == 16)
506 0 7 unless ($crc)
520 1 6 unless ($crc eq $obj->crc)
531 2 0 if $obj
539 16 1 if (ref $proto)
540 16 0 if defined $err
544 1 0 if defined $err
555 0 36 unless $nums =~ /^[\d$XNUMS]+$/o
566 2 6 if defined $self->{$attr}
568 0 6 unless ($nc)
569 0 0 $method eq 'sn_c' ? :
577 4 2 if (3 == length $c) { }
1 1 elsif (2 == length $c and 1 == length $v) { }
0 1 elsif (1 == length $c and 2 == length $v) { }
0 1 elsif (3 == length $v) { }
1 0 elsif (1 == length $x) { }
0 0 elsif (2 == length $x) { }
579 4 0 if ($method eq 'fn_c') { }
618 1 0 if (1 == length $c) { }
639 3 129 unless (defined $c)
644 3 129 unless defined $root
651 3 6 if $$c == $value
653 0 6 if $bits2use > $bit_length
658 120 130 if ($bits2use > 1) { }
665 9 241 if $$c == $value