Branch Coverage

blib/lib/URI/VersionRange/Util.pm
Criterion Covered Total %
branch 129 148 87.1


line true false branch
46 740 11 if (defined $TYPES{$scheme})
69 0 5 unless length $part
72 1 4 if ($part =~ /^(.*?)-(.*)$/)
80 3 1 if ($part =~ /^\s*(.*?)\+\s*$/)
82 3 0 if defined $version
86 1 0 if (my $v = normalize_semver($part))
94 2 2 if (@plus)
106 0 1 unless $A->{'major'} <=> $B->{'major'} or $A->{'minor'} <=> $B->{'minor'}
109 1 1 if (@plus == 1)
152 4 1 /(.*)\)$/ ? :
2 5 /^\((.*)/ ? :
2 7 /(.*)\]$/ ? :
4 9 /^\[(.*)/ ? :
1 13 /^\[(.*)\]$/ ? :
2 14 /^\)$/ ? :
2 16 /^\($/ ? :
0 18 if (/^\((.*)\)$/) { }
185 3 629 if (my(@wildcards) = _semver_wildcards(">=", $part))
191 4 625 if ($part =~ /^(~)(.*)/)
197 10 615 if ($part =~ /^(\^)(.*)/)
203 595 20 if ($part =~ /(>\=|<\=|>|<)(.*)/)
208 2 593 if (my(@wildcards) = _semver_wildcards($operator, $version))
216 593 0 if ($version and is_semver($version))
223 19 1 if ($part ne "*")
227 19 0 if ($version and is_semver($version))
254 3 340 if ($part =~ /^(\*|\*\-)$/)
259 4 336 if ($part =~ /^(~)(.*)/)
264 6 330 if ($part =~ /^(\^)(.*)/)
283 2 2 /^(\d+)\.(\d+)\.\*/ ? :
1 4 /^(\d+)\.\*/ ? :
1 5 if (/(.*)\+$/) { }
308 1 0 if ($native =~ /^(~>)(.*)/)
322 1 1226 if ($operator eq ">=" and $term =~ /^(\d+)\.x(?:\.x)?$/)
328 4 1222 if ($operator eq ">=" and $term =~ /^(\d+)\.(\d+)\.x$/)
347 1 8 if ($has_prerelease and defined $patch)
357 6 2 if ($patch > 0) { }
1 1 elsif ($minor > 0) { }
372 1 7 if (/gem/)
377 4 3 if (/conan/)
402 13 3 if ($major > 0) { }
2 1 elsif ($minor > 0) { }
417 6 10 if (/conan/)
432 612 0 $_[0] =~ /$SEMVER_REGEXP/ ? :
442 5 1800 if @parts == 1
443 18 1787 if @parts == 2
447 1805 0 if ($version =~ /$SEMVER_REGEXP/)
451 637 1168 wantarray ? :
456 0 637 unless $_[0]
466 19 618 if $hash{'prerelease'}
467 0 637 if $hash{'buildmetadata'}
478 494 576 if (defined $TYPES{$scheme})
489 16 570 if $_[0] eq $_[1]
495 236 334 if $major_cmp != 0
498 178 156 if $minor_cmp != 0
501 70 86 if $patch_cmp != 0
503 10 76 if defined $a->{'prerelease'} and not defined $b->{'prerelease'}
504 8 68 if not defined $a->{'prerelease'} and defined $b->{'prerelease'}
505 10 0 unless defined $a->{'prerelease'} or defined $b->{'prerelease'}
507 58 0 if (defined $a->{'prerelease'} and defined $b->{'prerelease'})
512 11 47 @pre_a < @pre_b ? :
516 38 54 if $pre_cmp != 0
531 16 76 if ($a =~ /^\d+$/ and $b =~ /^\d+$/)
535 10 66 if ($a =~ /^\d+$/ or $b =~ /^\d+$/)
536 5 5 $a =~ /^\d+$/ ? :
552 6 570 if $a eq $b
564 0 1830 if $A eq "-" and $B ne "-"
565 0 1830 if $B eq "-" and $A ne "-"
567 0 1830 if $A eq "." and $B ne "."
568 0 1830 if $B eq "." and $A ne "."
570 0 1830 if $A eq "-" and $B eq "-"
571 628 1202 if $A eq "." and $B eq "."
573 1196 6 if ($A =~ /^\d+$/ and $B =~ /^\d+$/) { }
574 521 675 $A =~ /^0/ || $B =~ /^0/ ? :
575 534 662 if $num_cmp