Branch Coverage

blib/lib/Hash/Union.pm
Criterion Covered Total %
branch 55 100 55.0


line true false branch
112 0 4 unless ref $hashes eq 'ARRAY'
118 0 4 if $opts{'reverse'}
121 0 4 unless ref $left eq 'HASH' or not defined $left
125 0 4 unless ref $right eq 'HASH' or not defined $right
140 8 0 unless ($opts{'simple'})
142 2 27 if (/^(?:\?=|ifnone:)\s*(.*)/) { }
0 27 elsif (/^(?:\+=|prepend:)\s*(.*)/) { }
0 27 elsif (/^(?:=\+|append:)\s*(.*)/) { }
2 25 elsif (/^(?:=|set:)\s*(.*)/) { }
143 0 2 if exists $$l{$1}
146 0 0 if exists $$l{$1}
149 0 0 if exists $$l{$1}
152 0 2 if exists $$l{$1}
162 28 0 unless ($opts{'simple'})
163 4 24 if ($k =~ /^(?:\?=|ifnone:)\s*(.*)/) { }
8 16 elsif ($k =~ /^(?:\+=|prepend:)\s*(.*)/) { }
8 8 elsif ($k =~ /^(?:=\+|append:)\s*(.*)/) { }
3 5 elsif ($k =~ /^(?:=|set:)\s*(.*)/) { }
164 0 4 if exists $$r{$1}
167 0 8 if exists $$r{$1}
170 0 8 if exists $$r{$1}
173 0 3 if exists $$r{$1}
179 0 28 unless defined $$r{$k}
180 3 25 unless (defined $$l{$lk})
186 0 25 if ref $$l{$lk} and not ref $$r{$k}
187 0 25 if not ref $$l{$lk} and ref $$r{$k}
190 13 12 unless (ref $$l{$lk})
191 7 6 if ($op == 0) { }
2 4 elsif ($op == 1) { }
2 2 elsif ($op == 2) { }
2 0 elsif ($op == 3) { }
204 0 12 if ref $$l{$lk} ne ref $$r{$k}
207 0 12 if (ref $$l{$lk} eq 'SCALAR')
208 0 0 if ($op == 0) { }
0 0 elsif ($op == 1) { }
0 0 elsif ($op == 2) { }
0 0 elsif ($op == 3) { }
211 0 0 unless ${$$l{$lk};}
221 8 4 if (ref $$l{$lk} eq 'ARRAY')
222 0 8 if ($op == 0) { }
0 8 elsif ($op == 1) { }
4 4 elsif ($op == 2) { }
4 0 elsif ($op == 3) { }
225 0 0 unless @{$$l{$lk};}
235 4 0 if (ref $$l{$lk} eq 'HASH')
236 0 4 if ($op == 0) { }
0 4 elsif ($op == 1) { }
2 2 elsif ($op == 2) { }
2 0 elsif ($op == 3) { }
239 0 0 unless %{$$l{$lk};}