Branch Coverage

blib/lib/Locale/CLDR/NumberFormatter.pm
Criterion Covered Total %
branch 105 182 57.6


line true false branch
20 0 749 if ($self->numbering_system->{$numbering_system}{'type'} eq 'algorithmic')
36 5 746 if (grep {$_ eq $format;} @valid_formats)
41 0 746 if (my($locale_id, $type, $format) = $format =~ m[^(.*?)/(.*?)/(.*?)$]u)
50 1 745 if ($format =~ tr/\244//)
54 1 0 unless defined $currency
90 0 1 $for_cash ? :
98 0 1 $for_cash ? :
110 738 10 if exists $cache{$format}
112 1 9 if defined $currency
119 9 11 unless defined $to_parse
121 1 10 if (($prefix) = $to_parse =~ /^((?:[^0-9\@#.,E+'*-] | (?:'[^']*')++)+)/ux)
124 4 7 if (($suffix) = $to_parse =~ /((?:[^0-9\@#.,E+'-] | (?:'[^']*')++)+)$/ux)
137 0 11 if (($pad_character) = $prefix =~ /^\*(\p{Any})/u) { }
0 11 elsif (($pad_character) = $prefix =~ /\*(\p{Any})$/u) { }
0 11 elsif (($pad_character) = $suffix =~ /^\*(\p{Any})/u) { }
1 10 elsif (($pad_character) = $suffix =~ /\*(\p{Any})$/u) { }
154 1 10 defined $pad_character ? :
160 2 9 if $prefix =~ tr/%// or $suffix =~ tr/%//
161 1 10 if $prefix =~ tr/\x{2030}// or $suffix =~ tr/\x{2030}//
166 1 10 if defined $currency
172 0 11 if (my($digits) = $to_parse =~ /(\@+)/u) { }
187 0 11 if ($to_parse =~ tr/E//) { }
228 0 1 if ($increment)
234 1 0 if ($decimal_digits) { }
269 0 746 if exists $symbols{$symbols_type}{'alias'}
271 0 746 $number < 0 ? :
275 1 745 if ($$format{'rounding'} or defined $for_cash)
278 1 0 if (defined $for_cash)
286 4 742 if ($pad_zero > 0)
294 746 0 $minimum_grouping_digits ? :
299 746 0 if ($minimum_grouping_digits and length $integer >= $minimum_grouping_digits or not $minimum_grouping_digits) { }
302 7 739 if (defined $minor_group and $separator)
312 2 744 if defined $decimal
336 0 747 unless $self->numbering_system->{$numbering_system}{'type'} eq 'numeric'
368 0 8 unless $format_data
377 0 8 if (my($locale_id, undef, $format) = $format_name =~ m[^(.*?)/(.*?)/(.*?)$]u)
379 0 0 if $locale
392 2 8 unless $$data{$format_name}
393 0 8 unless $$data{$format_name}{$type}
402 8 0 keys %data ? :
409 0 1 unless defined $result
422 3 11 if (not $plural and $format_rule =~ /(cardinal|ordinal)/u)
429 3 11 if ($plural)
437 2 12 if ($number =~ /^-/u) { }
1 11 elsif ($number =~ /\./u) { }
441 1 1 if ($format_rule =~ /\x{2192}\x{2192}/u) { }
0 1 elsif (my($rule_name) = $format_rule =~ /\x{2192}(.+)\x{2192}/u) { }
0 1 elsif ($format_rule =~ /=%%.*=/u) { }
1 0 elsif ($format_rule =~ /=%.*=/u) { }
0 0 elsif ($format_rule =~ /=.*=/u) { }
446 0 0 if ($rule_name =~ s/^%%/%/u)
450 0 0 if ($format_data) { }
474 1 0 if ($number >= 0 and $number < 1) { }
481 1 0 if ($format_rule =~ /\x{2192}\x{2192}/u) { }
0 0 elsif (my($rule_name) = $format_rule =~ /\x{2192}(.*)\x{2192}/u) { }
486 0 0 if ($rule_name =~ s/^%%/%/u)
490 0 0 if ($format_data) { }
498 1 0 if ($format_rule =~ /\x{2190}\x{2190}/u) { }
0 0 elsif (my($rule_name) = $format_rule =~ /\x{2190}(.+)\x{2190}/u) { }
503 0 0 if ($rule_name =~ s/^%%/%/u)
507 0 0 if ($format_data) { }
515 0 1 if ($format_rule =~ /=.*=/u)
516 0 0 if ($format_rule =~ /=%%.*=/u) { }
0 0 elsif ($format_rule =~ /=%.*=/u) { }
531 3 8 if ($format_rule =~ /\[.*\]/u)
532 0 3 if ($in_fraction_rule_set and $number * $base_value == 1) { }
0 3 elsif (not $in_fraction_rule_set || $number % $divisor) { }
544 2 9 if ($in_fraction_rule_set) { }
545 0 2 if (my($rule_name) = $format_rule =~ /\x{2190}(.*)\x{2190}/u) { }
0 2 elsif ($format_rule =~ /=.*=/u) { }
546 0 0 if (length $rule_name) { }
548 0 0 if ($rule_name =~ s/^%%/%/u)
552 0 0 if ($format_data) { }
568 3 6 if (my($rule_name) = $format_rule =~ /\x{2192}(.*)\x{2192}/u)
569 0 3 if (length $rule_name) { }
571 0 0 if ($rule_name =~ s/^%%/%/u)
575 0 0 if ($format_data) { }
587 0 9 if (my($rule_name) = $format_rule =~ /\x{2190}(.*)\x{2190}/u)
588 0 0 if (length $rule_name) { }
590 0 0 if ($rule_name =~ s/^%%/%/u)
594 0 0 if ($format_data) { }
606 4 5 if ($format_rule =~ /=.*=/u)
607 0 4 if ($format_rule =~ /=%%.*=/u) { }
2 2 elsif ($format_rule =~ /=%.*=/u) { }
638 1 13 if $number =~ /^-/u and exists $$format_data{'-x'}
639 1 12 if $number =~ /\./u and exists $$format_data{'x.x'}
640 6 6 if $number == {sign => '+', value => [0]} or $number =~ /^-/u
641 2 4 if $number >= $$format_data{'max'}{'base_value'}
645 4 67 if $key == {sign => '+', value => [0]}
646 1 66 if $number == $key
647 3 63 if $number < $key