Branch Coverage

blib/lib/Test/Smoke/Database/Parsing.pm
Criterion Covered Total %
branch 219 316 69.3


line true false branch
70 0 0 if $$self{'opts'}{'verbose'}
82 0 0 if /~$/ or /(\d+)\.rpt/ and $k{$1}
85 0 0 if (not defined $ref) { }
0 0 elsif (not ref $ref) { }
86 0 0 if $$self{'opts'}{'debug'}
89 0 0 if ($ref == -1) { }
0 0 elsif ($ref == -2) { }
0 0 elsif ($ref == -3) { }
92 0 0 if not $$_{'id'} or $k{$$_{'id'}}
93 0 0 if $$self{'opts'}{'debug'}
95 0 0 if $self->db->add_to_db($_)
99 0 0 if $$self{'opts'}{'verbose'}
103 0 0 if $$self{'opts'}{'verbose'}
113 0 0 if $$self{'opts'}{'debug'}
114 0 0 if $self->db->add_to_db($ref)
117 0 0 if $$self{'opts'}{'verbose'}
127 1 5 unless $file
128 1 4 unless (-r $file)
130 0 4 unless open FILE, $file
140 16 1139 if ($l =~ /$date/)
141 0 1155 if ($l =~ /\=$/)
142 0 1155 if ($re) { }
151 0 11882 unless ($a and ref $a)
155 22 1125 if ($l =~ /MULTIPART_MIXED_/)
156 14 1133 if $l =~ /^ HP-UX/ and not $ok
157 442 705 unless ($ok)
158 56 649 if ($ok < 5)
159 14 691 if ($ok == 1) { }
14 677 elsif ($ok == 2) { }
14 663 elsif ($ok == 3) { }
14 649 elsif ($ok == 4) { }
14 635 elsif ($ok == 5) { }
30 605 elsif ($ok > 5 and $l =~ /^\d/ || $l =~ /^ \d/) { }
97 508 elsif ($ok > 5 and $l =~ /^O/ || $l =~ /^F/ || $l =~ /^m/ and $l ne "Failures:\n") { }
448 60 elsif ($ok > 6) { }
160 90 14 if $_
162 90 14 if $_
164 90 14 if $_
166 90 28 if $_ and /^\d*$/
179 644 0 length $l >= 9 * $i ? :
183 97 0 length $l > 9 * $nbI ? :
184 0 7 unless $conf =~ /^-/ or $conf =~ /^\s*$/
186 386 258 unless (/^[ \?\-\.]+$/)
187 386 0 unless $_ =~ /^\s*$/
199 0 0 unless $$a{'os'} or $$a{'osver'}
200 433 3275 if ($$a{'os'} =~ /cygwin/i) { }
1363 1912 elsif ($$a{'os'} =~ /aix/i) { }
207 114 3594 if ($l =~ /^$ln{$n}/i)
208 114 0 if $lr[$n]
213 368 80 unless ($r)
214 181 187 if ($l =~ /^[ \t]+/ and %last) { }
216 221 0 if ($lr[$_])
218 221 0 if $l =~ /^\s/
229 0 53 unless (ref $r and $$r{'smoke'})
242 26 27 if (not $$r{'ccver'} and $header =~ /${name}[^ ]* \s*([^\n]*)\n/i)
244 26 0 if ($v =~ /^([^\n]*?\d)\s+(.*)/) { }
246 24 2 if $lr[$ok + 1]{'os'} and $lr[$ok + 1]{'os'} eq $$r{'os'}
250 8 45 if ($$r{'ccver'} and $$r{'ccver'} =~ /^(.*?)\s+32-bit$/)
265 1 13 unless $file
266 1 12 unless (-r $file)
267 0 12 unless open FILE, $file
279 12 816 if ($l =~ /=$/)
280 12 816 if ($r) { }
283 0 12 unless $cont
293 0 764 if $l =~ /^>/
295 6 758 if ($l =~ /^From:/) { }
3 755 elsif ($l =~ /^Return-Path: /) { }
7 748 elsif ($l =~ /^Subject: Smoke \[([^\]]{5,5})\]/) { }
10 738 elsif ($l =~ /$date/) { }
1 737 elsif ($l =~ /^Subject: Re:/) { }
0 737 elsif ($l =~ /Automated smoke report for patch (\d+) on - $/ or $l =~ /Automated smoke report for patch (\d*) on - \(\)$/) { }
7 730 elsif ($l =~ /Automated smoke report for patch (\d+) on (.*) - (.*)$/ or $l =~ /Automated smoke report for .* patch (\d+) on (.*) - (.*)$/) { }
2 728 elsif ($l =~ /Automated smoke report for patch (\d*) on (.*)$/) { }
0 728 elsif ($l =~ /Automated smoke report for patch (\d*)$/) { }
2 726 elsif ($irix == 1) { }
2 724 elsif ($l =~ /Automated smoke report for .* patch (\d+)$/) { }
29 695 elsif ($l =~ m[^.+:\s+.*\((.+)(?:/\d+ cpus?)?\)$]) { }
2 693 elsif ($l =~ /^\s+on\s+(.*) - (.*)$/) { }
2 691 elsif ($l =~ /^\s+using\s+(.*) version (.*)$/) { }
0 691 elsif ($l =~ /on (.*) using (.*) version (.*)$/) { }
9 682 elsif ($l =~ /using (.*) version (.*)$/) { }
70 612 elsif ($l =~ /^($re4Smoke) +(-.+)$/ or $l =~ /^($re4Smoke)$/) { }
5 607 elsif ($l =~ /^($re2Smoke) +(-.+)$/ or $l =~ /^($re2Smoke)$/) { }
46 561 elsif (not $fail and $l =~ /^[\| ]*\+-+ (.*)$/ and not $1 =~ /^-*$/) { }
226 335 elsif ($fail) { }
5 330 elsif ($l =~ /Failures(.*):/) { }
296 2 4 if ($l =~ /Brand/) { }
0 4 elsif ($l =~ /Alian/) { }
298 6 0 if $l =~ /^From: ([^ ]+\@[^ ]+)/
299 0 6 if $l =~ /^From: .* <([^ ]+\@[^ ]+)>/
317 0 0 unless ($h{'os'} or $h{'osver'})
326 2 0 if ($l =~ /(irix\d*)$/)
334 2 0 if $l =~ /^ - (.*)$/
362 1 69 if $1 eq '- - - -' or $1 eq '? ? ? ?'
364 63 6 $2 ? :
371 4 1 $2 ? :
377 46 0 if $1 ne 'Configuration'
381 203 23 if $l
382 119 107 if $l =~ /^\s/
388 11 0 if ($h{'build'} and $h{'os'})
389 11 0 if $h{'matrix'}
390 11 0 if $file =~ /(\d+)\.rpt/ or $file =~ /(\d+)\.normal\.rpt/
395 0 0 if ($nbr > 8) { }
0 0 elsif (not $have_result and !$col || $col != -1) { }
402 0 0 $col ? :
413 50 14 unless $$ref{'nbte'}
417 0 64 if ($$ref{'os'} eq 'WIN32') { }
0 64 elsif ($$ref{'os'} =~ /windows/) { }
3 61 elsif ($$ref{'os'} =~ /^cygwin/) { }
0 61 elsif ($$ref{'os'} eq 'red hat linux 8.0') { }
0 61 elsif ($$ref{'os'} eq 'osf1') { }
0 61 elsif ($$ref{'os'} =~ /^sunos/) { }
0 61 elsif ($$ref{'os'} eq 'bsd/os') { }
1 60 elsif ($$ref{'os'} eq 'hpux') { }
436 32 32 defined $$ref{'cc'} && $$ref{'cc'} =~ /gcc/ ? :
437 3 1 if not $isgcc and $$ref{'cc'} =~ /cc/ and $$ref{'ccver'} =~ /^2\.9/ || $$ref{'ccver'} =~ /^3\./
439 0 29 if not $isgcc and $$ref{'ccver'} and $$ref{'ccver'} =~ /^egcs-/
442 1 63 if (not $$ref{'cc'}) { }
1 62 elsif ($isgcc and $$ref{'cc'} =~ m[/([^/]+ .+)$]) { }
1 61 elsif ($isgcc and $$ref{'cc'} =~ m[/([^/]+)$]) { }
61 0 elsif ($$ref{'cc'} =~ /^\s?(.*)\s?$/) { }
448 4 60 if (not $$ref{'ccver'} or $$ref{'ccver'} =~ /cc: Error:/) { }
1 59 elsif ($$ref{'ccver'} eq 'gcc') { }
449 1 3 unless $mj
451 1 0 if $$ref{'os'} eq 'solaris' and $$ref{'osver'} =~ /2.7/ || $$ref{'osver'} =~ /2.8/
454 0 1 if $$ref{'ccver'} eq 'gcc'
458 11 48 if $isgcc and $$ref{'ccver'} =~ /^([\d\.]+) /
469 35 29 if $isgcc
477 6 58 if ($$ref{'osver'} =~ m[^(.*)\(([^/]{3,10})/.*\)] or $$ref{'osver'} =~ /^(.*)\(([^\)]{3,10})\)/) { }
481 0 3 if $$ref{'archi'} =~ /^i.86/ or $$ref{'archi'} eq 'x86' or $$ref{'os'} eq 'cygwin' or $$ref{'os'} eq 'mswin32'
486 0 58 if ($$ref{'os'} eq 'solaris' or $$ref{'os'} eq 'NetBSD' and $$ref{'osver'} eq '1.5.3' or $$ref{'os'} eq 'linux' and $$ref{'osver'} eq '2.2.19') { }
0 58 elsif ($$ref{'os'} eq 'linux' and $$ref{'osver'} eq '2.2.16' || $$ref{'osver'} eq '2.4.18') { }
0 58 elsif ($$ref{'os'} eq 'dec_osf') { }
2 56 elsif ($$ref{'os'} =~ /^irix/ and $$ref{'osver'} =~ /^(.*) (IP\d*)/) { }
20 36 elsif ($$ref{'os'} eq 'aix') { }
32 4 elsif ($$ref{'os'} =~ /HP-UX/i or $$ref{'os'} =~ /^irix/i) { }
504 0 0 $$ref{'os'} eq 'freebsd' ? :
0 64 unless ($$ref{'osver'})
505 0 64 if ()
506 64 0 if $$ref{'osver'} =~ /^([^\(]*)/
507 64 0 if $$ref{'osver'} =~ /^(.*?)\s*$/
508 5 59 if $$ref{'osver'} =~ /^(.*)-\d/
509 0 64 if $$ref{'osver'} =~ /^(.*)Service Pack (.*)$/
512 57 7 if (not $$ref{'version'} or $$ref{'version'} eq '5.?.?')
513 49 8 if ($$ref{'smoke'} > 17675 and $$ref{'smoke'} < 22318) { }
0 8 elsif ($$ref{'smoke'} > 17675 and $$ref{'smoke'} < 22523) { }
0 8 elsif ($$ref{'smoke'} > 17675) { }
523 54 10 if ($$ref{'date'} and $$ref{'date'} =~ /$date/) { }
531 59 5 if ($$ref{'author'})
532 0 59 if ($$ref{'author'} =~ /^jhi/) { }
1 58 elsif ($$ref{'author'} =~ /^alian/ or $$ref{'author'} =~ /^alb\@/) { }
1 57 elsif ($$ref{'author'} =~ /^abeltje/i) { }
0 57 elsif ($$ref{'author'} =~ /^nwc10\@/) { }
0 57 elsif ($$ref{'author'} =~ /^kane\@/) { }
0 57 elsif ($$ref{'author'} =~ /\@marimba.nl$/) { }
2 55 elsif ($$ref{'author'} =~ /^h\.m\.brand/) { }
550 53 11 if ($$ref{'version'} =~ /^5\.9/ and $$ref{'build'})
551 1 52 if $$ref{'build'}{'-Uuseperlio'}