Branch Coverage

blib/lib/Locale/CLDR/NumberFormatter.pm
Criterion Covered Total %
branch 110 182 60.4


line true false branch
20 0 775 if ($self->numbering_system->{$numbering_system}{'type'} eq 'algorithmic')
43 5 772 if (grep {$_ eq $format;} @valid_formats)
48 0 772 if (my($locale_id, $type, $format) = $format =~ m[^(.*?)/(.*?)/(.*?)$]u)
57 17 755 if ($format =~ tr/\244//)
61 17 0 unless defined $currency
97 16 18 $for_cash ? :
105 8 9 $for_cash ? :
117 747 27 if exists $cache{$format}
119 17 10 if defined $currency
129 43 11 if (($prefix) = $to_parse =~ /^ ( (?: [^0-9\@#.,E'*] | (?: ' [^']* ' )++ )+ ) /ux)
132 15 39 if (($suffix) = $to_parse =~ / ( (?: [^0-9\@#.,E'] | (?: ' [^']* ' )++ )+ ) $ /ux)
146 0 54 if (($pad_character) = $prefix =~ /^\*(\p{Any})/u) { }
0 54 elsif (($pad_character) = $prefix =~ /\*(\p{Any})$/u) { }
0 54 elsif (($pad_character) = $suffix =~ /^\*(\p{Any})/u) { }
1 53 elsif (($pad_character) = $suffix =~ /\*(\p{Any})$/u) { }
163 1 53 defined $pad_character ? :
169 4 50 if $prefix =~ tr/%// or $suffix =~ tr/%//
170 2 52 if $prefix =~ tr/\x{2030}// or $suffix =~ tr/\x{2030}//
175 34 20 if defined $currency
181 0 54 if (my($digits) = $to_parse =~ /(\@+)/u) { }
196 0 54 if ($to_parse =~ tr/E//) { }
236 0 17 if ($increment)
242 17 0 if ($decimal_digits) { }
277 0 772 if exists $symbols{$symbols_type}{'alias'}
279 12 760 $number =~ s/^-//u ? :
283 17 755 if ($format->{'rounding'} or defined $for_cash)
286 17 0 if (defined $for_cash)
294 4 768 if ($pad_zero > 0)
302 772 0 $minimum_grouping_digits ? :
307 772 0 if ($minimum_grouping_digits and length $integer >= $minimum_grouping_digits or not $minimum_grouping_digits) { }
310 27 745 if (defined $minor_group and $separator) { }
323 19 753 if defined $decimal
334 24 1520 if ($type eq 'negative') { }
356 0 773 unless $self->numbering_system->{$numbering_system}{'type'} eq 'numeric'
388 0 8 unless $format_data
397 0 8 if (my($locale_id, undef, $format) = $format_name =~ m[^(.*?)/(.*?)/(.*?)$]u)
399 0 0 if $locale
412 2 8 unless $data->{$format_name}
413 0 8 unless $data->{$format_name}{$type}
422 8 0 keys %data ? :
429 0 1 unless defined $result
442 3 11 if (not $plural and $format_rule =~ /(cardinal|ordinal)/u)
449 3 11 if ($plural)
457 1 13 if ($number =~ /^-/u) { }
2 11 elsif ($number =~ /\./u) { }
461 1 0 if ($format_rule =~ /\x{2192}\x{2192}/u) { }
0 0 elsif (my($rule_name) = $format_rule =~ /\x{2192}(.+)\x{2192}/u) { }
0 0 elsif ($format_rule =~ /=%%.*=/u) { }
0 0 elsif ($format_rule =~ /=%.*=/u) { }
0 0 elsif ($format_rule =~ /=.*=/u) { }
466 0 0 if ($rule_name =~ s/^%%/%/u)
470 0 0 if ($format_data) { }
494 2 0 if ($number >= 0 and $number < 1) { }
501 1 1 if ($format_rule =~ /\x{2192}\x{2192}/u) { }
0 1 elsif (my($rule_name) = $format_rule =~ /\x{2192}(.*)\x{2192}/u) { }
506 0 0 if ($rule_name =~ s/^%%/%/u)
510 0 0 if ($format_data) { }
518 1 1 if ($format_rule =~ /\x{2190}\x{2190}/u) { }
0 1 elsif (my($rule_name) = $format_rule =~ /\x{2190}(.+)\x{2190}/u) { }
523 0 0 if ($rule_name =~ s/^%%/%/u)
527 0 0 if ($format_data) { }
535 1 1 if ($format_rule =~ /=.*=/u)
536 0 1 if ($format_rule =~ /=%%.*=/u) { }
1 0 elsif ($format_rule =~ /=%.*=/u) { }
551 3 8 if ($format_rule =~ /\[.*\]/u)
552 0 3 if ($in_fraction_rule_set and $number * $base_value == 1) { }
0 3 elsif (not $in_fraction_rule_set || $number % $divisor) { }
564 2 9 if ($in_fraction_rule_set) { }
565 0 2 if (my($rule_name) = $format_rule =~ /\x{2190}(.*)\x{2190}/u) { }
0 2 elsif ($format_rule =~ /=.*=/u) { }
566 0 0 if (length $rule_name) { }
568 0 0 if ($rule_name =~ s/^%%/%/u)
572 0 0 if ($format_data) { }
588 3 6 if (my($rule_name) = $format_rule =~ /\x{2192}(.*)\x{2192}/u)
589 0 3 if (length $rule_name) { }
591 0 0 if ($rule_name =~ s/^%%/%/u)
595 0 0 if ($format_data) { }
607 0 9 if (my($rule_name) = $format_rule =~ /\x{2190}(.*)\x{2190}/u)
608 0 0 if (length $rule_name) { }
610 0 0 if ($rule_name =~ s/^%%/%/u)
614 0 0 if ($format_data) { }
626 4 5 if ($format_rule =~ /=.*=/u)
627 0 4 if ($format_rule =~ /=%%.*=/u) { }
2 2 elsif ($format_rule =~ /=%.*=/u) { }
658 1 0 if $number =~ /^-/u and exists $format_data->{'-x'}
659 1 1 if $number =~ /\./u and exists $format_data->{'x.x'}
660 6 6 if $number == {sign => '+', value => ['0']} or $number =~ /^-/u
661 2 4 if $number >= $format_data->{'max'}{'base_value'}
665 4 67 if $key == {sign => '+', value => ['0']}
666 1 66 if $number == $key
667 3 63 if $number < $key