Branch Coverage

lib/Data/Compare.pm
Criterion Covered Total %
branch 72 88 81.8


line true false branch
30 25 0 unless &tainted(scalar getcwd()) or not chdir $cwd
48 0 82 if $file eq 'Data::Compare::Plugins::Scalar-Properties'
50 69 13 if $requires eq '1'
53 0 13 if (ref $requires ne 'ARRAY')
58 0 13 if (ref((@{$requires;})[0]) ne 'ARRAY')
63 13 13 unless defined $type2
65 0 26 if (not defined $type1 or ref $type1 ne '' or not defined $type2 or ref $type2 ne '') { }
0 26 elsif (defined $cruft) { }
0 26 elsif (ref $handler ne 'CODE') { }
91 0 7 unless $#_ == 1 or $#_ == -1
99 0 1072 unless $#_ == 1 or $#_ == 2
104 7 1065 if (@_)
112 6628 3048 unless $opts->{$_}
117 1072 1347 unless (exists $opts->{'recursion_detector'})
123 1 2418 if $opts->{'recursion_detector'} == 99
125 6 2413 if (ref $x and exists $Data::Compare::been_there{"$x-$xpos-$xparent"} and $Data::Compare::been_there{"$x-$xpos-$xparent"} > 1 or ref $y and exists $Data::Compare::been_there{"$y-$ypos-$yparent"} and $Data::Compare::been_there{"$y-$ypos-$yparent"} > 1) { }
132 1262 1151 if ref $x
133 1257 1156 if ref $y
137 4 2409 if ref $opts->{'ignore_hash_keys'} eq 'ARRAY'
142 0 2413 if (exists $handler{$refx} and exists $handler{$refx}{$refy}) { }
0 2413 elsif (exists $handler{$refy} and exists $handler{$refy}{$refx}) { }
1151 1262 elsif (not $refx || $refy) { }
8 1254 elsif ($refx ne $refy) { }
14 1240 elsif (&Scalar::Util::refaddr($x) == &Scalar::Util::refaddr($y)) { }
22 1218 elsif ($refx eq 'SCALAR' or $refx eq 'REF') { }
1127 91 elsif ($refx eq 'ARRAY') { }
61 30 elsif ($refx eq 'HASH') { }
2 28 elsif ($refx eq 'Regexp') { }
0 28 elsif ($refx eq 'CODE') { }
1 27 elsif ($refx eq 'GLOB') { }
149 1147 4 if (defined $x and defined $y) { }
163 1124 3 if ($#{$x;} == $#{$y;}) { }
168 7 1132 unless _Compare($x->[$i], $y->[$i], {%{$opts;}, 'xparent', $x, 'xpos', $i, 'yparent', $y, 'ypos', $i})
179 7 54 unless scalar @kx == scalar @ky
182 2 164 unless defined $x->{$_} or defined $y->{$_}
183 11 153 unless defined $y->{$_} and _Compare($x->{$_}, $y->{$_}, {%{$opts;}, 'xparent', $x, 'xpos', $_, 'yparent', $y, 'ypos', $_})
197 21 6 if ($type eq 'HASH') { }
2 4 elsif ($type eq 'ARRAY') { }
2 2 elsif ($type eq 'SCALAR' or $type eq 'REF') { }
1 1 elsif ($type eq 'GLOB') { }
1 0 elsif ($type eq 'CODE') { }
235 2 2 $_ eq '' ? :
0 4 $_ eq '' ? :
242 0 0 $_ eq '' ? :