Condition Coverage

blib/lib/Spreadsheet/Reader/Format/ParseExcelFormatStrings.pm
Criterion Covered Total %
condition 123 203 60.5


and 3 conditions

line !l l&&!r l&&r condition
220 0 0 459 defined $format_string and my(@result) = $format_string =~ /^( # Collect any formatting stuff first
249 175 4 4 $fixed_value =~ /\"\-\"/ and $format_string
270 97 0 227 $action_type and $current_action
97 194 33 $action_type and $current_action and $current_action ne $action_type
194 0 33 $action_type and $current_action and $current_action ne $action_type and $action_type ne 'TEXT'
282 2 0 2 $pre_action =~ /^\.$/ and $format_string =~ /^0+/
0 0 2 $pre_action =~ /^0+$/ and $deconstructed_list[-1][0] =~ /^\.$/
323 126 0 9 $quote_string and $fixed_value eq $quote_string
343 0 122 21 $action_type && $action_type eq 'TEXT'
344 0 139 4 $action_type and $action_type eq 'DATESTRING'
363 67 4 26 $is_date and not $date_text
436 0 13 12 not $found_string and defined $piece->[0]
543 144 0 12 $clone_ref->{'sub_seconds'} and $clone_ref->{'sub_seconds'} ne '1'
605 0 0 2 defined $1 and defined $2
0 0 2 defined $1 and defined $2 and defined $3
609 2 0 0 defined $bump_year && $year <= $bump_year
0 2 0 defined $drop_year && $year >= $drop_year
618 38 0 8 $self->get_european_first && $dt_eu
673 42 0 2 $clone_ref->{'sub_seconds'} and $clone_ref->{'sub_seconds'} ne '1'
705 4 72 4 not $sub_seconds and $piece->[0] =~ /[\.]/
749 16 24 20 $cldr_string and $cldr_string =~ /:'?$/
4 28 8 $piece->[1] and $piece->[1] eq ':'
785 176 4 4 $sub_seconds and $sub_seconds ne '1'
792 108 0 0 $sub_seconds and $sub_seconds ne '1'
878 88 0 0 $type_filter->name eq 'ZeroOrUndef' and not $list_ref->[-1][0]
88 0 0 $type_filter->name eq 'ZeroOrUndef' and not $list_ref->[-1][0] and $list_ref->[-1][1] eq '"-"'
908 0 0 0 $2 && $2 ne ','
928 88 0 0 $leading_zeros and length $leading_zeros
938 0 0 0 $leading_zeros and length $leading_zeros
943 24 12 20 $piece->[1] and $piece->[1] eq '/'
947 2 0 34 $trailinq_zeros and length $trailinq_zeros
951 24 0 2 $leading_zeros and length $leading_zeros
1008 0 28 28 not $found_integer and defined $piece->[0]
1044 100 0 12 $built_ref->{'sign'} and $return
1106 102 0 12 $built_ref->{'sign'} and $return
1181 24 0 4 $built_ref->{'sign'} and $return
1234 0 0 0 $adjusted_input =~ /^(\-)?((\d{1,3})?(\.\d+)?)[Ee](\-)?(\d+)$/ and $2
0 0 0 $adjusted_input =~ /^(\-)?((\d{1,3})?(\.\d+)?)[Ee](\-)?(\d+)$/ and $2 and $6
0 0 0 $adjusted_input =~ /^(\-)?((\d{1,3})?(\.\d+)?)[Ee](\-)?(\d+)$/ and $2 and $6 and $6 < 309
1266 24 0 24 $built_ref->{'sign'} and $return
1320 396 0 64 not $return and $built_ref->{'initial_value'}
1323 240 30 190 $built_ref->{'sign'} and $return
1354 689 0 73 $value_definitions->{'negative_type'} and $value_definitions->{'initial_value'} < 0
1368 0 226 0 $value_definitions->{'initial_value'} and $value_definitions->{'divide_by_thousands'}
1421 0 12 36 defined $value_definitions->{'integer'}{'value'} and sprintf('%.0f', $value_definitions->{'integer'}{'value'}) =~ /([1-9])/
1641 0 48 424 $max_iterations > 0 and $decimal >= 1e-05
1647 248 40 120 $decimal < 1e-05 and $decimal > 1e-10
1664 8 136 24 $denominator and length $denominator > $max_digits

or 2 conditions

line l !l condition
612 0 2 $7 // 0
613 0 2 $7 // 0
1566 444 16 $value_definitions->{'fraction'}{'value'} //= 0
1612 214 0 $comma //= ','

or 3 conditions

line l !l&&r !l&&!r condition
137 2 36 0 $target_name // "Excel__$position"
275 12 13 0 $action_type eq 'INTEGER' or $action_type eq 'DECIMAL'
282 2 2 0 $pre_action =~ /^\.$/ and $format_string =~ /^0+/ or $pre_action =~ /^0+$/ and $deconstructed_list[-1][0] =~ /^\.$/
379 37 60 0 $coercion_name // $action_type . '_' . $coercion_index++
596 44 0 2 $dt_us or $dt_eu
749 20 8 32 $cldr_string and $cldr_string =~ /:'?$/ or $piece->[1] and $piece->[1] eq ':'
926 20 36 26 $number_type eq 'INTEGER' or $number_type eq 'DECIMAL'
6 20 0 $number_type eq 'SCIENTIFIC' or $number_type eq 'FRACTION'
1027 0 0 112 not defined $adjusted_input or $adjusted_input eq ''
1088 0 0 114 not defined $adjusted_input or $adjusted_input eq ''
1155 0 0 28 not defined $adjusted_input or $adjusted_input eq ''
1234 0 0 48 not defined $adjusted_input or $adjusted_input eq ''
48 0 0 $adjusted_input =~ /^\-?\d*(\.\d+)?$/ or $adjusted_input =~ /^(\-)?((\d{1,3})?(\.\d+)?)[Ee](\-)?(\d+)$/ and $2 and $6 and $6 < 309
1297 0 0 460 not defined $adjusted_input or $adjusted_input eq ''
1647 16 264 144 $integer > 999 or $decimal < 1e-05 and $decimal > 1e-10
1664 16 30 138 not $numerator or $denominator and length $denominator > $max_digits
1702 12 0 156 not $denominator or $denominator == 1