Condition Coverage

lib/Spreadsheet/Reader/ExcelXML/XMLReader.pm
Criterion Covered Total %
condition 94 110 85.4


and 3 conditions

line !l l&&!r l&&r condition
239 4526 10 24 defined $target_level and defined $result->[0]
4536 9 15 defined $target_level and defined $result->[0] and $result->[0]{'level'} > $target_level
268 911 237 0 $position and $position < 1
395 6 1080 82 $current_node and $current_node->{'name'} eq 'raw_text'
418 2 5387 0 $ref and &is_HashRef($ref)
441 292 4965 0 &is_HashRef($ref->{'list'}[$x]) && (exists $ref->{'list'}[$x]{'list'} || exists $ref->{'list'}[$x]{'attributes'} || exists $ref->{'list'}[$x]{'val'})
667 1132 0 &is_HashRef($ref->{'list'}[$x]) && scalar keys %{$$ref{'list'}[$x];} == 1 && exists $ref->{'list'}[$x]{'raw_text'}
445 4135 2 973 exists $hash_ref->{$key} and length $key > 0
469 4817 558 2 not $success and exists $ref->{'val'}
478 4825 2 0 not $success and exists $ref->{'raw_text'}
566 31 0 11 $parse_commands[1] && !&is_Int($parse_commands[1])
638 0 387 81 $node_ref->[0] and $node_ref->[0]{'name'} eq 'raw_text'
822 65 1127 6306 $result_type != 0 and $top_node_name ne $element
826 0 6331 3471 defined $result_type and $result_type == 1
882 1660 2241 1492 $self->_has_positions and $add_list->[0]{'level'} == $self->_last_position - 1
902 501 3212 1 defined $element->{'name'} && $element->{'name'} eq 'DOCTYPE'
911 2 4971 1338 exists $element->{'name'} and $element->{'name'} eq 'raw_text'
933 2383 1444 1148 exists $element->{'attributes'} and &is_HashRef($top_reference)
958 1783 947 2241 $self->_has_positions and $level == $self->_last_position
1124 342 11090 1194 $self->not_end_of_file and $self->_current_node->{'name'} eq 'raw_text'
1144 735 11891 2901 $self->not_end_of_file and $self->_current_node->{'level'} >= $node_ref->{'level'}
1174 188 0 205 not $self->_has_xml_header and @$sub_return
1337 20 535 449 $self->_has_positions and $add_list->[0]{'level'} == $self->_last_position - 1
1367 359 179 885 $element->{'type'} ne '#text' and substr($element->{'initial_string'}, -1) ne '/'
1376 60 828 535 $self->_has_positions and $last_level == $self->_last_position
1471 1 0 8111 $att_val and substr($att_val, 0, 1) eq '"'
1 0 8111 $att_val and substr($att_val, 0, 1) eq '"' and substr($att_val, -1, 1) eq '"'

or 2 conditions

line l !l condition
271 237 911 $position ||= 1

or 3 conditions

line l !l&&r !l&&!r condition
338 556 578 51 $result_type == 1 or $top_node_level > $target_level
375 7 5 1 $result_type == 1 or $top_node_level > $target_level
822 78 0 7498 $result_type == 1 or $result_type != 0 and $top_node_name ne $element
868 0 10 5393 not $add_list or scalar @$add_list == 0
990 8091 13 9471 not defined $string or length $string == 0
1057 400 1 23493 substr($node, 0, 1) eq '?' or substr($node, 0, 1) eq '!'
1135 393 3700 8533 $is_xml_header or $self_closing
1327 0 0 1004 not $add_list or scalar @$add_list == 0
1464 0 44 8112 not $att or $att eq 'xml:space="preserve"'