Branch Coverage

Bio/SeqFeature/Tools/Unflattener.pm
Criterion Covered Total %
branch 222 344 64.5


line true false branch
667 0 1 if $seq
668 0 1 if $group_tag
675 0 1 if $self->{'_reported_problems'}
676 0 1 if $self->{'_ignore_problems'}
678 0 1 if (not $self->{'_problems_reported'} and scalar @probs)
707 1 11 if @_
747 0 9 if @_
769 14 28849 if @_
770 1 28848 unless ($self->{'partonomy'})
868 11 11 if @_
896 2 0 if exists $self->{'_problems'}
924 1 5 unless exists $self->{'_problems'}
925 0 6 if ($self->verbose > 0)
936 6 0 if (@sfs)
943 12 12 $sf->has_tag($_) ? :
949 0 6 if ($severity > $thresh)
972 0 0 unless ($fh)
1033 1 6 if @_
1045 2725 12298 if (grep {$_ eq $type;} @roots)
1051 192 12106 unless ($ctype)
1125 1 10 unless ($self->seq)
1131 0 11 if ($partonomy and defined $structure_type)
1139 2 9 if defined $partonomy
1143 0 11 if defined $structure_type
1151 0 11 if (@all_seq_features > @flat_seq_features)
1154 0 11 if (@all_seq_features < @flat_seq_features)
1161 7 4 if ($use_magic)
1174 1 6 if (@sfs_with_locus_tag)
1177 0 1 if ($group_tag and $group_tag ne 'locus_tag')
1188 0 1 if ($self->verbose > 0)
1196 1 0 if (@sfs_with_locus_tag == 0 and @sfs_with_gene_tag == 0 and @sfs_with_product_tag > 0 and not $group_tag)
1201 0 1 if ($self->verbose > 0)
1207 7 4 unless ($group_tag)
1247 64 6269 if (not $sf->has_tag($group_tag)) { }
1256 0 6269 if (@group_tagvals > 1)
1265 0 6269 unless $gtv
1269 4253 2016 if ($group) { }
1308 899 5434 if ($sf->has_tag('pseudo'))
1312 101 798 if ($type eq 'misc_RNA' or $type eq 'mRNA') { }
1330 7 4 if ($use_magic)
1331 0 7 if (defined $structure_type)
1341 1540 4480 if $_->primary_tag eq 'mRNA'
1348 6 1 if ($n_cdss > 0) { }
1354 1 5 if ($n_mrnas == 0) { }
0 5 elsif ($n_mrnas_attached_to_gene == 0) { }
1372 0 0 if ($self->verbose)
1374 0 0 if $_->primary_tag eq 'mRNA'
1384 0 0 if ($_->primary_tag eq 'mRNA')
1404 1 0 if ($n_rnas > 0)
1409 0 7 if $noinfer
1411 7 0 if ($need_to_infer_exons)
1419 130 5879 if ($type eq 'exon')
1424 5879 130 if $type ne 'exon'
1434 0 11 if (grep {not scalar @$_;} @groups)
1439 0 11 if ($self->verbose > 0)
1453 1 10 if ($structure_type)
1454 1 0 if ($structure_type == 1) { }
1468 7 4 if ($use_magic)
1470 2 6018 if ($sf->has_tag('derived_from'))
1476 7 4 if ($use_magic)
1483 1384 547 if (@sfs > 1)
1486 1238 3989 if $type eq 'gene'
1488 9 3980 unless ($container_type)
1530 1 10 if ($need_to_infer_mRNAs)
1531 0 1 if ($self->verbose > 0)
1538 7 4 if ($need_to_infer_exons)
1558 2 5 if (@removed_exons)
1582 130 0 if ($inferred_exons) { }
1587 4 130 if $exons_done{$exon}
1594 0 284 unless ($exon->can('add_tag_value'))
1617 0 2 if (keys %exon_h)
1627 0 2 if (@problems)
1630 0 0 if (@bad_problems)
1668 0 2080 if (@ranges == 0) { }
2077 3 elsif (@ranges == 1) { }
1678 0 3 if ($self->verbose > 0)
1689 0 3 if ($self->verbose > 0)
1709 11 2072 if (@genes > 1)
1729 0 11 if ($self->verbose > 0)
1736 10 12 if ($loc->isa('Bio::Location::SplitLocationI')) { }
1738 10 0 if (@locs > 1) { }
1750 1 10 if (@genes > 1)
1754 11 0 if (@genes)
1755 0 11 unless @genes == 1
1846 0 2078 if ($self->verbose > 0)
1854 570 1508 if @sfs == 1
1876 1 1507 if ($resolver_tag) { }
1883 2 0 if ($sf->has_tag($resolver_tag)) { }
1891 0 4 if $self->verbose > 0
1893 6 4 if ($_->has_tag($tag))
1896 2 4 if (grep {$_ eq $resolver_tagval;} @vals)
1914 0 1507 if $resolver_tag
1931 0 1508 if (@top_sfs > 1)
1986 4155 1362 if ($container_type) { }
1989 249 3906 unless $sfs_by_type{$container_type}
1994 249 3906 if (not @possible_container_sfs) { }
1998 2934 972 if (@possible_container_sfs == 1) { }
2010 0 972 unless @possible_container_sfs > 1
2019 0 972 if ($sf->primary_tag ne 'CDS')
2028 0 972 unless $resolver_method
2041 6 966 unless (%container_sfh)
2105 0 0 if ($self->verbose > 0 and scalar keys %unresolved)
2130 322 1186 if (%unresolved)
2133 0 322 unless ($new_pairs)
2141 0 966 if ($self->verbose > 0)
2150 0 1508 if (%unresolved)
2151 0 0 unless $unresolved_problem_reported
2160 3906 1611 if ($container_sf) { }
2164 3906 0 if ($container_sf->contains($sf)) { }
2227 0 1288 if ($verbose > 0)
2239 0 4604 if ($verbose > 0)
2242 2302 2302 if ($selected_children{$_}) { }
2258 322 966 unless scalar keys %unresolved_parents
2262 0 966 unless scalar @I
2294 0 1336 unless (grep {$_->[0] ne $psf;} @{$unresolved{$sf};})
2300 966 0 unless ($bad)
2304 966 0 if ($set)
2311 966 0 if $successful_pairs
2328 0 0 if ($f->has_tag($group_tag))
2331 0 0 if ($self->verbose > 0)
2358 0 0 unless shift()
2360 0 0 if ($self->verbose > 0)
2363 0 0 if ($sf->has_tag('product'))
2395 1742 1864 if ($inside)
2397 20 1722 if ($_->start > $start or $_->end < $end)
2405 22 3584 if (not $inside and $sf->has_tag('ribosomal_slippage'))
2406 0 22 if ($self->verbose > 0)
2426 16 6 if (not scalar @transcript_splice_sites or $transcript_splice_sites[0] == $cds_splice_sites[0]) { }
2436 14 22 if (not @transcript_splice_sites) { }
20 2 elsif ($cds_splice_sites[0] == $transcript_splice_sites[0]) { }
2453 0 14 if ($self->verbose > 0)
2466 2 0 if ($cds_splice_sites[0] < $transcript_splice_sites[0]) { }
2475 0 2 if ($self->verbose > 0)
2488 16 0 if ($inside)
2491 0 16 if (@slips > 1)
2496 0 16 if (grep {$_ > 2;} @slips)
2505 0 3606 if ($self->verbose > 0)
2508 1738 1868 if ($inside)
2524 4467 101 if ($sf->location->isa('Bio::Location::SplitLocationI'))
2572 1 2034 unless $sfs
2573 0 2035 if $sf
2574 1 2034 if ($seq)
2575 0 1 unless $seq->isa('Bio::SeqI')
2579 0 2035 if (@exons)
2590 0 5856 unless $sf->isa('Bio::SeqFeatureI')
2591 0 5856 unless $sf->isa('Bio::FeatureHolderI')
2594 3865 1991 unless $type eq 'mRNA' or $type =~ /RNA/
2600 1762 229 if ($sf->location->isa('Bio::Location::SplitLocationI'))
2604 0 1991 unless (@locs)
2616 18260 0 if $sf->seq_id
2617 18260 0 if $sf->source_tag
2630 7266 10994 if ($loc_h{$locstr}) { }
2649 0 1991 unless ($sf->location->strand)
2723 1 0 if ($seq)
2724 0 1 unless $seq->isa('Bio::SeqI')
2730 0 52 unless $sf->isa('Bio::SeqFeatureI')
2731 0 52 unless $sf->isa('Bio::FeatureHolderI')
2732 0 52 if ($self->verbose > 0)
2736 0 52 if ($sf->primary_tag eq 'mRNA')
2742 24 28 if (@cdsl)
2749 0 24 if ($self->verbose > 0)
2762 0 24 if ($noinfer) { }
2772 24 0 if $cds->seq_id
2773 24 0 if $cds->source_tag
2828 0 0 unless $seq->isa('Bio::SeqI')
2860 0 2039 unless @ranges
2865 0 16469 if ($ranges[$i]->strand != $strand)
2878 0 16469 if ($rangeP->start > $range->end)
2879 0 0 if ($self->seq->is_circular) { }
2894 0 2039 unless ($pass)
2902 0 0 if ($rangeP->end < $range->start)
2937 0 0 unless (defined $score)