Branch Coverage

blib/lib/Bio/Tools/Phylo/PAML.pm
Criterion Covered Total %
branch 360 456 78.9


line true false branch
44 1 20 if defined $dir
61 20 0 unless $self->{'_summary'} and not $self->{'_summary'}{'multidata'}
65 16 4 if ($seqtype eq 'CODONML' or $seqtype eq 'AAML') { }
2 2 elsif ($seqtype eq 'BASEML') { }
2 0 elsif ($seqtype eq 'YN00') { }
68 8 65 if ($seqtype eq 'CODONML' and /^pairwise comparison, codon frequencies:/) { }
1 64 elsif ($seqtype eq 'AAML' and /^ML distances of aa seqs\.$/) { }
9 55 elsif (/^Model\s+(\d+)/ or not $has_model_line and /^TREE/ and $seqtype eq 'CODONML' and not $self->{'_summary'}{'version'} =~ /4/) { }
2 53 elsif (/for each branch/) { }
3 50 elsif (/^TREE/) { }
0 50 elsif (/Heuristic tree search by stepwise addition$/) { }
0 50 elsif (/Heuristic tree search by NNI perturbation$/) { }
0 50 elsif (/^stage 0:/) { }
105 0 2 unless (defined $data{'-trees'})
111 0 2 unless ($tree and ref $tree and $tree->isa('Bio::Tree::Tree'))
128 14 30 @nodes_L < 2 ? :
132 0 44 unless ($n)
135 30 14 unless ($n->is_Leaf and $n->id)
196 2 1 if (/^Distances:/) { }
1 0 elsif (/^TREE/) { }
212 2 1 if (/^Estimation by the method|\(B\) Yang & Nielsen \(2000\) method/)
222 20 0 if (%data) { }
263 0 20 $self->{'_already_parsed_seqs'} ? :
267 20 165 if (/^($SEQTYPES) \s+ # seqtype: CODONML, AAML, BASEML, CODON2AAML, YN00, etc (?: \(in \s+ ([^\)]+?) \s* \) \s* )? # version: "paml 3.12 February 2002"; not present < 3.1 or YN00 (\S+) \s* # tree filename (?: (.+?) )? # model description (not there in YN00) \s* $ # trim any trailing space /ox) { }
6 159 elsif (/\s+?\d+?\s+?\d+?/ and $self->{'_already_parsed_seqs'} != 1) { }
1 158 elsif (/^Data set \d$/) { }
0 158 elsif (/^Before\s+deleting\s+alignment\s+gaps/) { }
5 153 elsif (@lines >= 3 and $self->{'_already_parsed_seqs'} != 1) { }
0 300 elsif (/Printing out site pattern counts/ and $self->{'_already_parsed_seqs'} != 1) { }
279 8 12 unless (defined $self->{'_summary'}{'model'})
282 6 2 if ($model_line =~ /^Model:/)
288 18 2 if defined $self->{'_summary'}{'model'}
290 0 20 if $self->{'_summary'}{'seqtype'} eq 'AAMODEL'
308 2 3 unless (/^\n$/)
318 0 20 unless (defined $self->{'_summary'}{'seqtype'})
325 14 6 if ($seqtype eq 'CODONML') { }
2 4 elsif ($seqtype eq 'AAML') { }
0 4 elsif ($seqtype eq 'CODON2AAML') { }
2 2 elsif ($seqtype eq 'BASEML') { }
2 0 elsif ($seqtype eq 'YN00') { }
374 10 29 if (/^((?:Codon frequencies)|(?:Site-class models))\s*:\s+(.+)/) { }
4 25 elsif (/^\s+$/) { }
16 9 elsif (/^ns\s+=\s+/ or /^Frequencies/) { }
393 2 1493 if (/^Nei|\(A\) Nei/)
394 14 1479 if $done
395 557 922 if /^\s+/
397 866 56 unless $okay or /^Codon position x base \(3x4\) table\, overall/
399 42 14 if (s/^position\s+(\d+):\s+//)
408 14 28 if $pos == 3
413 8 29 if (/^Nei\s\&\sGojobori|\(A\)\sNei-Gojobori/)
417 8 21 if $done
418 8 13 if (/^Codon frequencies under model, for use in evolver/)
420 8 128 if /^\s+$/
434 0 2 unless $self->{'_summary'}{'seqs'}
436 1 33 if (/^TREE/ or /^AA distances/)
440 1 32 if $done
441 12 20 if /^\s+$/ or /^\(Ambiguity/
442 2 18 if (/^Frequencies\./) { }
0 18 elsif (not $okay) { }
2 16 elsif (not $header) { }
2 14 elsif (/^\#\s+constant\s+sites\:\s+ (\d+)\s+ # constant sites \(\s*([\d\.]+)\s*\%\s*\)/x) { }
1 13 elsif (/^ln\s+Lmax\s+\(unconstrained\)\s+\=\s+(\S+)/x) { }
494 0 3 unless $self->{'_summary'}{'seqs'}
497 2 21 if $done
498 0 21 if (/^TREE/)
499 2 19 if (/^\s+$/)
500 0 2 if $seen
503 3 16 if (/^(AA|ML) distances/)
509 16 0 if ($okay)
515 0 5 if ($type eq 'ML' and not @names and @vl)
525 0 35 unless @vl
532 3 13 if scalar @names == $numseqs
542 0 86 unless defined $v
560 0 18 if exists $self->{'_summary'}{'patterns'}
563 11 88 if (/^Codon\s+(usage|position)/ or /Model/) { }
52 36 elsif ($patternct) { }
18 18 elsif (/^ns\s+\=\s*(\d+)\s+ls\s+\=\s*(\d+)/) { }
7 11 elsif (/^\# site patterns \=\s*(\d+)/) { }
570 7 45 if /^\s+$/
601 8 18 if $self->{'_already_parsed_seqs'}
604 5 86 if (/^(Printing|After|TREE|Codon)/)
608 13 73 if /^\s+$/ and @seqs > 0
609 6 67 if /^\s+$/
610 1 66 if /^\d+\s+$/
615 53 13 if (@firstseq) { }
640 13 5 if (@seqs > 0)
656 8 16 if /^\s+$/
659 1 15 if (/^\(A\)\sNei-Gojobori\s\(1986\)\smethod/)
662 1 8 if ($_ =~ /.*\d+?\.\d+?\s*\(.*/)
675 14 2 if ($self->{'_summary'}{'seqtype'} eq 'CODONML')
682 2 14 if ($self->{'_summary'}{'seqtype'} eq 'YN00')
683 1 1 if ($firstseq)
693 16 0 if /^\s+$/ and exists $self->{'_summary'}{'ngmatrix'}
694 0 82 if /^\s+$/ or /^NOTE:/i
698 12 70 if ($self->{'_summary'}{'seqtype'} eq 'YN00') { }
706 14 68 unless defined $rest
708 12 70 if ($self->{'_summary'}{'seqtype'} eq 'YN00')
723 2 14 if ($self->{'_summary'}{'seqtype'} eq 'YN00' and @seqs)
735 1 7 if ($self->{'_summary'}{'model'} =~ /kappa = (\d+?\.\d+?) fixed/)
739 8 672 if (/^pairwise comparison, codon frequencies\:\s*(\S+)\./) { }
112 560 elsif (/^(\d+)\s+\((\S+)\)\s+\.\.\.\s+(\d+)\s+\((\S+)\)/) { }
112 448 elsif (/^lnL\s+\=\s*(\-?\d+(\.\d+)?)/) { }
112 336 elsif (/^t\=\s*(\d+(\.\d+)?)\s+/) { }
336 0 elsif (/^\s+$/) { }
0 0 elsif (/^\s+(\d+\.\d+)\s+(\d+\.\d+)\s+(\d+\.\d+)/) { }
751 112 0 if (defined($_ = $self->_readline))
757 1 111 if ($omega eq '')
784 112 0 defined $t && length $t ? :
112 0 defined $omega && length $omega ? :
812 2 9 if /^seq\.\s+seq\./
815 43 8 if (/^\s+(\d+)\s+ # seq # (\d+)\s+ # seq # (\d+(\.\d+))\s+ # S (\d+(\.\d+))\s+ # N (\d+(\.\d+))\s+ # t (\d+(\.\d+))\s+ # kappa (\d+(\.\d+))\s+ # omega \-??(\d+(\.\d+))\s+ # dN \+\-\s+ \-??(\d+(\.\d+))\s+ # dN SE \-??(\d+(\.\d+))\s+ # dS \+\-\s+ \-??(\d+(\.\d+))\s+ # dS SE /ox) { }
4 4 elsif (/^\s+$/) { }
1 3 elsif (/^\(C\) LWL85, LPB93 & LWLm methods/) { }
863 0 175 if $done
864 13 162 if (s/^TREE\s+\#\s*\d+:\s+//) { }
11 151 elsif (/^Node\s+\&/ or /^\s+N37/ or /^(CODONML|AAML|YN00|BASEML)/ or /^\*\*/ or /^Detailed output identifying parameters/) { }
13 138 elsif (/^tree\s+length\s+\=\s+(\S+)/) { }
13 125 elsif (/^\s*lnL\(.+np\:\s*(\d+)\)\:\s+(\S+)/) { }
26 99 elsif (/^\(/) { }
3 96 elsif (/^SEs for parameters/) { }
13 83 elsif (/^\s*\d+\.\.\d+/) { }
896 26 0 if ($tree)
899 13 13 if ($okay > 0)
902 13 0 if (not %match and @ids)
910 93 27 if ($match{$child}) { }
917 0 13 if ($self->verbose > 1)
926 3 10 if (defined $self->{'_SEs'})
936 21 12 @nodes_L < 2 ? :
940 0 33 unless ($n)
974 5 115 if $done
975 47 68 if /^\s+$/
976 0 9 unless $okay or /^Model\s+\d+/ or /^TREE/
978 7 61 if (/^Model\s+(\d+)/) { }
7 54 elsif (/^Time used\:\s+(\S+)/) { }
9 45 elsif (m[^kappa\s+\(ts/tv\)\s+\=\s+(\S+)]) { }
9 36 elsif (/^TREE/) { }
1 35 elsif (m[^omega\s+\(dn/ds\)\s+\=\s+(\S+)]i) { }
6 29 elsif (/^(Naive Empirical Bayes)|(Bayes Empirical Bayes)|(Positively\sselected\ssites)/i) { }
15 14 elsif (/^dN/i) { }
0 14 elsif (/^Parameters in beta:/) { }
0 14 elsif (/^Parameters in beta\&w\>1:/) { }
3 11 elsif (/^alpha\s+\(gamma\)\s+\=\s+(\S+)/) { }
979 0 7 if ($okay) { }
1003 9 0 if (defined $data{'-trees'} and scalar @{$data{'-trees'};})
1036 7 8 if (/K\=(\d+)/) { }
8 0 elsif (/for each branch/) { }
1039 7 5 unless ($_ =~ /^\s+$/)
1044 1 6 if (/^site class/) { }
1079 0 8 unless (defined $data{'-trees'})
1085 0 8 unless ($tree and ref $tree and $tree->isa('Bio::Tree::Tree'))
1102 40 72 @nodes_L < 2 ? :
1106 0 112 unless ($n)
1110 72 40 unless ($n->is_Leaf and $n->id)
1124 0 0 if (/p\=\s+(\S+)\s+q\=\s+(\S+)/) { }
1142 0 0 if (/p0\=\s+(\S+)\s+p\=\s+(\S+)\s+q\=\s+(\S+)/) { }
1151 0 0 if (/\(p1\=\s+(\S+)\)\s+w\=\s*(\S+)/) { }
1171 3 0 if (s/^r\s+\(\s*\d+\)\:\s+//)
1175 3 0 if (s/^f\s*\:\s+//)
1199 36 80 if /^\s+$/ or /^\s+Pr\(w\>1\)/
1200 4 76 if (/^Time used/ or /^TREE/)
1204 5 71 if (/^Naive Empirical Bayes/i) { }
2 69 elsif (/^Bayes Empirical Bayes/i) { }
4 65 elsif (/^Positively selected sites/) { }
9 56 elsif ($okay and /^\s+(\d+)\s+(\S+)\s+(\-?\d+(?:\.\d+)?)(\**)\s+(\-?\d+(?:\.\d+)?)\s+\+\-\s+(\-?\d+(?:\.\d+)?)/) { }
8 48 elsif ($okay and /^\s+(\d+)\s+(\S+)\s+(\-?\d*(?:.\d+))(\**)\s+(\-?\d+(?:\.\d+)?)/) { }
8 42 elsif ($okay and /^\s+(\d+)\s+(\S)\s+([\d\.\-\+]+)(\**)/) { }
1218 0 9 unless defined $signif
1226 0 8 unless defined $signif
1231 0 8 unless defined $signif
1244 38 98 if /^\s+$/
1245 0 98 unless $okay or /^\s+branch\s+t/
1246 10 88 if (/^\s+branch\s+(.+)/) { }
78 10 elsif (/^\s*(\d+\.\.\d+)/) { }
1275 0 2 unless $self->{'_summary'}{'seqs'}
1277 0 28 if (/^TREE/ or /^Distances/)
1278 2 26 if $done
1279 10 16 if /^\s+$/ or /^\(Ambiguity/
1280 2 14 if (/^Frequencies\./) { }
0 14 elsif (not $okay) { }
2 12 elsif (not $header) { }
2 10 elsif (/^\#\s+constant\s+sites\:\s+ (\d+)\s+ # constant sites \(\s*([\d\.]+)\s*\%\s*\)/ox) { }
2 8 elsif (/^ln\s+Lmax\s+\(unconstrained\)\s+\=\s+(\S+)/ox) { }
1323 0 2 unless $self->{'_summary'}{'seqs'}
1326 0 13 if (/^TREE/)
1327 1 12 if $done
1328 2 10 if /^This matrix is not used in later/
1329 2 8 if (/^\s+$/)
1330 0 2 if $seen
1333 2 6 if (/^Distances:(\S+)\s+\(([^\)]+)\)\s+\(alpha set at (\-?\d+\.\d+)\)/)
1340 6 0 if ($okay)
1344 4 2 if (defined $vl)
1352 0 4 unless ($i)
1359 2 4 if scalar @names == $numseqs
1399 0 0 if (/^Rate\s+parameters:\s+/) { }
0 0 elsif (/^Base\s+frequencies:\s+/) { }
0 0 elsif (m[^Rate\s+matrix\s+Q,\s+Average\s+Ts/Tv\s+(\([^\)+]+\))?\s*\=\s+ (\-?\d+\.\d+)]x) { }
0 0 elsif (/^alpha\s+\(gamma,\s+K=\s*(\d+)\s*\)\s*\=\s*(\-?\d+\.\d+)/) { }
0 0 elsif (s/^(r|f):\s+//) { }
1416 0 0 if /^\s+$/
1417 0 0 if (/^alpha/)
1441 0 1 unless $self->{'_dir'} and -d $self->{'_dir'} and -r $self->{'_dir'}
1444 0 1 unless -e $rstfile and not -z $rstfile
1455 1 615 if (/^TREE\s+\#\s+(\d+)/) { }
1 614 elsif (/^Prob\sof\sbest\scharacter\sat\seach\snode,\slisted\sby\ssite/) { }
1 613 elsif (/^Check\sroot\sfor\sdirections\sof\schange\./ or /^Summary\sof\schanges\salong\sbranches\./) { }
0 613 elsif (/^Overall\s+accuracy\s+of\s+the\s+(\d+)\s+ancestral\s+sequences:/) { }
3 610 elsif (/^List of extant and reconstructed sequences/o) { }
1457 1 9 if (/tree\s+with\s+node\s+labels\s+for/)
1470 11 1 if (defined(my $blen = $n->branch_length))
1485 4 131 if /^Site/i or /^\s+$/
1486 130 1 if (s/^\s+(\d+)\s+(\d+)\s+([^:]+)\s*:\s*(.+)//) { }
1 0 elsif (/^Summary\sof\schanges\salong\sbranches\./) { }
1524 0 1 unless ($tree)
1536 36 57 if /^\s+$/
1537 1 56 if (/^List\sof\sextant\sand\sreconstructed\ssequences/) { }
11 45 elsif (/^Branch\s+(\d+):\s+(\d+)\.\.(\d+)\s+/) { }
45 0 elsif (/^\s+(\d+)\s+([A-Z*])\s+(\S+)\s+\-\>\s+([A-Z*])\s+(\S+)?/) { }
1545 0 11 unless ($node)
1551 11 0 if (/\(n=\s*(\S+)\s+s=\s*(\S+)\)/)
1562 0 45 unless ($node)
1572 28 17 if defined $dprob
1592 0 0 if (@overall_seq != @overall_site or @overall_seq != @seqs)
1612 2 309 if /^Overall accuracy of the/
1613 61 248 if (/^\s+$/)
1614 0 61 if $seqcount and $seqcount == @seqs
1617 0 248 if (/^\s*(\d+)\s+(\d+)\s+$/)
1622 20 228 if (/^node/)
1626 19 1 if (@firstseq) { }