Condition Coverage

blib/lib/LaTeX/TOM/Parser.pm
Criterion Covered Total %
condition 133 199 66.8


and 2 conditions

line l !l condition
1668 0 26 $first &&= 0

and 3 conditions

line !l l&&!r l&&r condition
387 161 100 5 $text =~ /^\s*\\(\w+\*?)/ and defined $parent
261 3 2 $text =~ /^\s*\\(\w+\*?)/ and defined $parent and $parser->{'config'}{'INNERCMDS'}{$1}
434 153 1 112 $text =~ /(?:^|[^\\])(\\\w+\*?(\s*\[.*?\])?)\s*$/so and defined $tree->{'nodes'}[$i + 1]
154 0 112 $text =~ /(?:^|[^\\])(\\\w+\*?(\s*\[.*?\])?)\s*$/so and defined $tree->{'nodes'}[$i + 1] and $tree->{'nodes'}[$i + 1]{'type'} eq "GROUP"
546 326 102 32 $node->{'type'} eq "COMMAND" and $node->{'command'} eq "begin"
326 70 32 $node->{'type'} eq "COMMAND" and $node->{'command'} eq "end"
396 5 27 $node->{'type'} eq "COMMAND" and $node->{'command'} eq "end" and $node->{'children'}{'nodes'}[0]{'content'} eq $class
672 452 0 1114 $node->{'type'} eq "TEXT" and !$caremath || !$node->{'math'} && $caremath
0 38 414 $node->{'children'} and not $node->{'type'} eq 'COMMAND' && $node->{'command'} =~ /^verb/ || $node->{'type'} eq 'ENVIRONMENT' && $node->{'class'} =~ /^verbatim/
833 94 54 0 defined $node->{'class'} and $parser->{'config'}{'MATHENVS'}{$node->{'class'}} || $parser->{'config'}{'MATHENVS'}{"$node->{'class'}*"}
54 94 0 $node->{'type'} eq "COMMAND" and $parser->{'config'}{'TEXTENVS'}{$node->{'command'}} || $parser->{'config'}{'TEXTENVS'}{"$node->{'command'}*"}
68 54 0 $node->{'type'} eq "ENVIRONMENT" and $parser->{'config'}{'TEXTENVS'}{$node->{'class'}} || $parser->{'config'}{'TEXTENVS'}{"$node->{'command'}*"}
901 30 8 4 $node->{'type'} eq "COMMAND" and $node->{'command'} eq "begin"
38 3 1 $node->{'type'} eq "COMMAND" and $node->{'command'} eq "begin" and $node->{'children'}{'nodes'}[0]{'content'} eq $mapping->{'name'}
30 7 4 $node->{'type'} eq "COMMAND" and $node->{'command'} eq "end"
37 3 1 $node->{'type'} eq "COMMAND" and $node->{'command'} eq "end" and $node->{'children'}{'nodes'}[0]{'content'} eq $mapping->{'name'}
30 9 1 $node->{'type'} eq "COMMAND" and $node->{'command'} eq $mapping->{'name'}
39 1 0 $node->{'type'} eq "COMMAND" and $node->{'command'} eq $mapping->{'name'} and $mapping->{'nparams'}
10 14 15 $node->{'type'} eq "TEXT" and not $mapping->{'nparams'}
911 1 0 0 $remain > 0 and $i + $j < scalar @{$tree->{'nodes'};}
969 1 0 0 $remain > 0 and $i + $j < scalar @{$tree->{'nodes'};}
1006 0 15 0 $wordend and $text =~ /\\\Q$command\E(\W|$)/g
15 0 0 not $wordend and $text =~ /\\\Q$command\E/g
1058 35 13 1 $node->{'type'} eq "COMMAND" and $node->{'command'} =~ /^(re)?newcommand$/
35 12 1 $node->{'type'} eq "COMMAND" and $node->{'command'} =~ /^(re)?newenvironment$/
35 0 12 $node->{'type'} eq "COMMAND" and defined $prev
35 0 12 $node->{'type'} eq "COMMAND" and defined $prev and $prev->{'type'} eq "TEXT"
0 12 0 $node->{'type'} eq "COMMAND" and defined $prev and $prev->{'type'} eq "TEXT" and $prev->{'content'} =~ /\\def\s*$/o
1173 172 58 7 $node->{'type'} eq "COMMAND" and $node->{'command'} eq "input"
172 57 1 $node->{'type'} eq "COMMAND" and $node->{'command'} eq "bibliography"
1186 1 0 5 -e $file and $filename =~ /$has_extension/
1197 0 5 1 defined $contents and $contents =~ m[^ \% \s*? Psfig/TeX \s* $]mx
1317 2617 145 244 $symbol eq "}" and $index - 1 >= 0
2762 244 0 $symbol eq "}" and $index - 1 >= 0 and substr($text, $index - 1, 1) eq " "
1329 460 0 0 $prev_char eq "\\" and $pprev_char ne "\\"
1354 216 28 145 $index_o == -1 and $index_c == -1
28 94 122 $index_o != -1 and $index_o < $index_c
1374 2 0 1 $node->{'type'} eq "TEXT" and $node->{'content'} =~ /^\s*$/s
1388 0 0 0 $node->{'type'} eq "COMMAND" and $node->{'position'} eq "inner"
1423 2 0 0 $node->{'command'} ne "new$type" and $node->{'command'} ne "renew$type"
1653 26 0 0 $line =~ /^\s*\%/ && !($node_text =~ / \\begin\{verbatim\} .* \Q$line\E .* \\end\{verbatim\} /sx)
1714 920 0 0 $DEBUG >= 1 and $DEBUG <= 2
1719 0 0 0 $DEBUG >= 1 and defined $message
1720 0 0 0 $DEBUG == 2 and defined $code

or 2 conditions

line l !l condition
209 119 27 shift() || undef
210 0 146 shift() || 0
211 0 146 shift() || 0
640 19 27 shift() || 0
660 260 294 shift() || 0
891 2 10 shift() || 0
1694 9 7 $raise_error ||= 0

or 3 conditions

line l !l&&r !l&&!r condition
464 2 0 264 $text =~ /(\\(\w+\*?)[ \t]+(\S+))/sog or $text =~ /(\\(\w+)(\d+))/sog
514 7 112 266 $node->{'type'} eq "GROUP" or $node->{'type'} eq "COMMAND"
672 582 532 0 !$caremath || !$node->{'math'} && $caremath
0 38 414 $node->{'type'} eq 'COMMAND' && $node->{'command'} =~ /^verb/ || $node->{'type'} eq 'ENVIRONMENT' && $node->{'class'} =~ /^verbatim/
832 54 94 4 $node->{'type'} eq "ENVIRONMENT" or $node->{'type'} eq "COMMAND"
833 0 0 54 $parser->{'config'}{'MATHENVS'}{$node->{'class'}} || $parser->{'config'}{'MATHENVS'}{"$node->{'class'}*"}
26 0 68 $parser->{'config'}{'TEXTENVS'}{$node->{'command'}} || $parser->{'config'}{'TEXTENVS'}{"$node->{'command'}*"}
54 0 0 $parser->{'config'}{'TEXTENVS'}{$node->{'class'}} || $parser->{'config'}{'TEXTENVS'}{"$node->{'command'}*"}
26 0 122 $node->{'type'} eq "COMMAND" and $parser->{'config'}{'TEXTENVS'}{$node->{'command'}} || $parser->{'config'}{'TEXTENVS'}{"$node->{'command'}*"} or $node->{'type'} eq "ENVIRONMENT" and $parser->{'config'}{'TEXTENVS'}{$node->{'class'}} || $parser->{'config'}{'TEXTENVS'}{"$node->{'command'}*"}
1006 0 0 15 $wordend and $text =~ /\\\Q$command\E(\W|$)/g or not $wordend and $text =~ /\\\Q$command\E/g
1354 0 0 244 $index_c == -1 or $index_o != -1 and $index_o < $index_c
28 94 0 $index_o == -1 or $index_c < $index_o
1374 0 2 1 $node->{'type'} eq "COMMENT" or $node->{'type'} eq "TEXT" and $node->{'content'} =~ /^\s*$/s
1388 2 0 0 $node->{'type'} eq "GROUP" or $node->{'type'} eq "COMMAND" and $node->{'position'} eq "inner"
1423 0 0 2 $node->{'type'} ne "COMMAND" or $node->{'command'} ne "new$type" and $node->{'command'} ne "renew$type"
1663 26 0 0 $first or $line_type eq $mode_type
1669 0 26 0 $mode_type ||= $line_type