Branch Coverage

Bio/SearchIO/infernal.pm
Criterion Covered Total %
branch 250 310 80.6


line true false branch
223 3 4 if defined $model
224 3 4 if defined $database
225 4 3 if defined $accession
226 3 4 if defined $convert
227 4 3 if defined $desc
251 7 2 unless (exists $self->{'_handlerset'})
255 2 7 if $line =~ /^\s*$/
257 4 3 if ($line =~ /^\#\s+cmsearch\s/) { }
1 2 elsif ($line =~ /^CM\s\d+:/) { }
259 3 1 if ($secondline =~ /INFERNAL 1\.1/) { }
285 1 2 $self->{'_handlerset'} eq 'pre-1.0' ? :
1 3 $self->{'_handlerset'} eq 'latest' ? :
5 4 $self->{'_handlerset'} eq '1.1' ? :
299 1 4 if (not defined $buffer or $buffer =~ /^\[ok/) { }
313 3 49 if ($buffer =~ /^\#\s(\S+)\s\:\:\s/) { }
3 46 elsif ($buffer =~ /^\#\sINFERNAL\s+(\S+)\s+\((.+)\)/) { }
3 43 elsif ($buffer =~ /^\#\squery (?:\w+ )?file\:\s+(\S+)/) { }
3 40 elsif ($buffer =~ /^\#\starget\s\S+\sdatabase\:\s+(\S+)/) { }
4 36 elsif ($buffer =~ /^Query:\s+(\S+)\s+\[CLEN=(\d+)\]$/) { }
3 33 elsif ($buffer =~ s/^Accession:\s+// and not $accession) { }
2 31 elsif ($buffer =~ s/^Description:\s+// and not $description) { }
4 27 elsif ($buffer =~ /^Hit scores:/) { }
4 23 elsif ($buffer =~ /^Hit alignments:/) { }
4 19 elsif ($buffer =~ /Internal CM pipeline statistics summary:/) { }
365 4 34 if ($buffer =~ /^Hit alignments:/) { }
19 15 elsif ($buffer =~ /^\s+rank\s+E-value/ or $buffer =~ /\-\-\-/ or $buffer =~ /^$/ or $buffer =~ /No hits detected/) { }
382 0 15 unless defined $desc
394 4 34 if ($buffer =~ /^Internal CM pipeline statistics summary/)
398 15 19 if ($buffer =~ /^\>\>\s(\S*)\s+(.*)/) { }
15 4 elsif ($buffer =~ /NC$/) { }
411 15 60 if ($buffer =~ /^Internal CM pipeline statistics/ or $buffer =~ /NC$/ or $buffer =~ /^\>\>/) { }
45 15 elsif ($buffer =~ /^\s+rank\s+E-value/ or $buffer =~ /^\s----/ or $buffer =~ /^$/ or $buffer =~ /No hits detected/) { }
435 10 5 $seq_cov =~ /\]$/ ? :
438 0 15 unless (defined $tmphit)
470 15 153 if ($buffer =~ /^>>\s/ or $buffer =~ /^Internal CM pipeline statistics/) { }
27 231 elsif ($ct % 6 == 0 and $buffer =~ /^$/) { }
480 21 105 if $iterator == 0
495 0 15 $self->convert_meta ? :
510 4 64 if $buffer =~ m[^//]
512 4 60 if ($buffer =~ /^Target sequences:\s+(\d+)\s+\((\d+) residues/)
544 15 0 if (defined $hsp)
550 10 5 if ($hitlength != 0)
602 69 0 if ($type)
603 69 0 if ($self->_eventHandler->will_handle($type))
609 7 62 if (defined $type and $type eq 'result')
633 70 13 if ($type) { }
13 0 elsif ($MAPPING{$nm}) { }
634 70 0 if ($self->_eventHandler->will_handle($type))
644 23 47 if ($type eq 'hit')
650 0 13 if (ref($MAPPING{$nm}) =~ /hash/i) { }
664 8 75 if defined $type and $type eq 'result'
700 0 124 unless $data and ref $data
702 8 707 if $data->{$nm} and $data->{$nm} =~ /^\s*$/o
703 707 0 if ($MAPPING{$nm})
704 0 707 if (ref($MAPPING{$nm}) =~ /hash/i) { }
729 0 13 unless defined $data->{'Data'} and not $data->{'Data'} =~ /^\s+$/o
750 3 40 if not defined $name && defined $self->{'_elements'} or scalar @{$self->{'_elements'};} == 0
752 28 24 if $_ eq $name
771 0 86 unless defined $self->{'_elements'}[0]
836 3 2 if @_
853 3 3 if @_
870 7 3 if @_
887 4 9 if @_
904 4 9 if @_
920 7 2 if @_
937 3 39 if @_
953 7 2 if @_
974 7 3 if ($delim)
975 7 0 if (ref($delim) =~ /HASH/) { }
978 35 0 if (exists $data{$d})
1005 0 3 unless $str
1033 7 48 if $line =~ /^\s+$/
1035 1 47 if ($line =~ /^\#\s+cmsearch/msx) { }
1 46 elsif ($line =~ /^\#\sINFERNAL\s+(\d+\.\d+)/msx) { }
1 45 elsif ($line =~ /^\#\scommand:.*?\s(\S+)$/msx) { }
1 44 elsif ($line =~ /^\#\s+dbsize\(Mb\):\s+(\d+\.\d+)/msx) { }
1 43 elsif ($line =~ /^CM(?:\s(\d+))?:\s*(\S+)/msx) { }
1 42 elsif ($line =~ /^>\s*(\S+)/) { }
3 39 elsif ($line =~ m[ ^\sQuery\s=\s\d+\s-\s\d+,\s # Query start/end Target\s=\s(\d+)\s-\s(\d+) # Target start/end ]mosx) { }
3 36 elsif ($line =~ / ^\sScore\s=\s([\d\.]+),\s # Score = Bitscore (for now) (?:E\s=\s([\d\.e-]+),\s # E-val optional P\s=\s([\d\.e-]+),\s)? # P-val optional GC\s= # GC not captured /mosx) { }
3 33 elsif ($line =~ /^(\s+)[<>\{\}\(\)\[\]:_,-\.]+/msx) { }
1 32 elsif ($line =~ m[^//]msx) { }
1070 0 1 if ($self->in_element('hit'))
1096 3 0 if ($lasteval and $lastpval)
1099 0 3 $mineval > $lasteval ? :
1101 0 3 $minpval > $lastpval ? :
1104 0 3 $maxscore < $lastscore ? :
1106 1 2 unless ($self->within_element('hit'))
1109 1 0 $acc ? :
0 1 $ver ? :
1116 3 0 unless ($self->in_element('hsp'))
1136 8 23 unless $line
1143 3 20 if ($line =~ /^\s{0,2}\S+/)
1150 5 15 if $iterator == 0
1162 3 0 if ($self->in_element('hsp'))
1178 0 3 $self->convert_meta ? :
1193 3 0 if $lasteval and $lastpval
1201 1 0 if ($self->within_element('result') and $seentop)
1202 1 0 if ($self->in_element('hit'))
1206 1 0 if $mineval
1207 1 0 if $minpval
1214 0 1 if $self->within_element('hit')
1215 1 0 if $seentop
1232 25 60 if $line =~ /^\s+$/
1234 1 59 if ($line =~ /CM\s\d+:\s*(\S+)/msx) { }
3 56 elsif ($line =~ /^>\s*(\S+)/) { }
15 41 elsif ($line =~ m[ ^\sQuery\s=\s\d+\s-\s\d+,\s # Query start/end Target\s=\s(\d+)\s-\s(\d+) # Target start/end ]mosx) { }
15 26 elsif ($line =~ / ^\sScore\s=\s([\d\.]+),\s # Score = Bitscore (for now) (?:E\s=\s([\d\.e-]+),\s # E-val optional P\s=\s([\d\.e-]+),\s)? # P-val optional GC\s= # GC not captured /mosx) { }
15 11 elsif ($line =~ /^(\s+)[<>\{\}\(\)\[\]:_,-\.]+/msx) { }
1 10 elsif ($line =~ m[^//]msx) { }
1236 1 0 unless ($self->within_element('result'))
1249 2 1 if ($self->in_element('hit'))
1275 15 0 if ($lasteval and $lastpval)
1278 0 15 $mineval > $lasteval ? :
1280 0 15 $minpval > $lastpval ? :
1283 0 15 $maxscore < $lastscore ? :
1285 3 12 unless ($self->within_element('hit'))
1288 0 0 $acc ? :
3 0 $ver ? :
1295 15 0 unless ($self->in_element('hsp'))
1315 45 135 unless $line
1322 15 120 if ($line =~ /^\s{0,2}\S+/)
1329 30 90 if $iterator == 0
1341 15 0 if ($self->in_element('hsp'))
1346 0 15 $self->convert_meta ? :
1361 15 0 if $lasteval and $lastpval
1369 1 0 if ($self->within_element('result') and $seentop)
1374 1 0 if ($self->in_element('hit'))
1378 1 0 if $mineval
1385 0 1 if $self->within_element('hit')
1386 1 0 if $seentop
1407 0 88 if $line =~ /^\s+$/
1409 0 88 if $line =~ /^HMM\shit/
1411 4 84 if ($line =~ /^sequence:\s+(\S+)/) { }
52 32 elsif ($line =~ /^hit\s+\d+\s+:\s+(\d+)\s+(\d+)\s+(\d+\.\d+)\s+bits/msx) { }
26 6 elsif ($line =~ /^(\s+)[<>\{\}\(\)\[\]:_,-\.]+/msx) { }
2 4 elsif ($line =~ /^memory/msx or $line =~ /^CYK\smemory/msx) { }
1412 2 2 unless ($self->within_element('result'))
1423 2 2 if ($self->in_element('hit'))
1432 4 48 unless $maxscore
1433 12 40 if ($lastscore > $cutoff)
1434 4 8 unless ($self->within_element('hit'))
1437 0 0 $acc ? :
4 0 $ver ? :
1445 6 6 unless ($self->in_element('hsp'))
1448 2 10 $maxscore < $lastscore ? :
1464 54 234 if $line =~ /^\s*$/
1467 26 208 if (not defined $line or $line =~ /^\S+/)
1474 52 156 if $iterator == 0
1484 6 20 if ($self->in_element('hsp'))
1490 3 3 $self->convert_meta ? :
1508 2 0 if ($self->within_element('result') and $seentop)
1513 2 0 if ($self->in_element('hit'))
1522 0 2 if $self->within_element('hit')
1523 2 0 if $seentop