Branch Coverage

blib/lib/Tree/Bulk.pm
Criterion Covered Total %
branch 170 262 64.8


line true false branch
20 0 0 if -e $l
37 332 22 $up ? :
342 12 $key ? :
342 12 $data ? :
47 332 22 if ($up)
48 332 0 if ($side) { }
54 0 0 unless $side
64 0 378 unless $tree
65 69 309 !$tree->up ? :
70 0 2 unless $tree
77 0 7046 unless $tree
78 2144 1516 !$tree->left ? :
3660 3386 if $tree and not $tree->right
83 0 301 unless $tree
84 2 0 $tree->left ? :
2 299 if $tree->right
89 0 1 unless $tree
90 0 1 $tree->left ? :
95 0 2015 unless $tree
96 304 641 !@{$tree->keys} ? :
945 1070 if $tree->leaf
101 0 2893 unless $tree
102 47 162 $tree->isRoot ? :
209 2684 if $tree->leaf
107 0 5273 unless $tree
108 2559 1199 $tree->up->left == $tree ? :
3758 1515 if $tree->up and $tree->up->left
113 0 120 unless $tree
114 61 57 $tree->up->right == $tree ? :
118 2 if $tree->up and $tree->up->right
124 0 907 unless $tree
125 0 907 unless $from
128 2300 2519 if ($n->isLeftChild) { }
129 1907 393 $n->right ? :
135 1790 729 $n->left ? :
147 904 5197 unless $tree
153 1 1 $a > $b ? :
166 108 163 if (my $l = $n->left) { }
38 125 elsif (my $r = $n->right) { }
179 0 118 unless $n
181 0 118 unless $p
183 0 118 unless $r
185 60 58 $n->isRightChild ? :
187 66 52 if $L
193 0 153 unless $n
195 0 153 unless $p
197 0 153 unless $l
199 106 47 $n->isLeftChild ? :
201 76 77 if $R
217 0 632 unless $tree
221 134 2667 if ($l > 2 * $r + 1) { }
112 2555 elsif ($r > 2 * $l + 1) { }
222 134 0 if (my $l = $n->left)
223 4 130 if (&actualHeight(scalar $l->right) > &actualHeight(scalar $l->left))
230 112 0 if (my $r = $n->right)
231 17 95 if (&actualHeight(scalar $r->left) > &actualHeight(scalar $r->right))
309 0 1012 unless $tree
310 0 1012 unless defined $key
316 0 73391 unless $tree
317 0 73391 unless defined $key
318 0 73391 unless $key =~ /\A\d+\Z/
322 400283 2 if ($tree)
324 0 400283 unless @$keys
326 144313 255970 if $key < $keys->[0]
327 182581 73389 if $key > $keys->[-1]
331 0 171569 unless defined $v
332 73389 98180 if $key == $keys->[$i]
341 0 518 unless $n
348 0 258 unless $n
355 0 872 unless $tree
356 789 83 if (my $r = $tree->right)
357 512 277 $r->left ? :
361 77 77 unless $p->up and $p->up->right and $p->up->right == $p
368 0 413 unless $tree
369 386 27 if (my $l = $tree->left)
370 257 129 $l->right ? :
374 26 28 unless $p->up and $p->up->left and $p->up->left == $p
381 0 5 unless $tree
410 0 712 unless $target
411 0 712 unless $target->right
413 0 712 unless $source
423 0 358 unless $target
424 0 358 unless $target->left
426 0 358 unless $source
436 0 299 unless $t
437 0 299 if &duplex($t)
438 0 299 unless my $p = $t->up
440 152 147 $t->isLeftChild ? :
441 0 299 if $r
443 135 164 $p->leaf ? :
0 299 $r ? :
468 0 944 unless $tree
469 0 944 unless defined $key
473 0 1976 unless $tree
474 0 1976 unless @{$tree->keys}
475 720 1256 if ($key < $tree->keys->[0]) { }
312 944 elsif ($key > $tree->keys->[-1]) { }
944 0 elsif (grep {$_ == $key;} @{$tree->keys}) { }
480 944 2503 if $tree->keys->[$i] == $key
492 209 185 unless $t
496 90 24 $t->up && $t->up->right && $t->up->right == $t ? :
71 114 $t->up && $t->up->left && $t->up->left == $t ? :
498 10 8 $t->left ? :
61 18 $t->left && $t->right ? :
21 79 $t->isRoot ? :
85 100 $t->leaf ? :
501 161 24 if $t->up
509 0 24 unless $t
519 0 55 unless $tree
520 0 55 unless $N and $N > 0
547 0 0 unless $tree
549 0 0 if ($seen{$tree->name}++)
560 0 0 unless $tree
565 0 0 unless $tree
570 0 0 unless @{$tree->keys} == @{$tree->data}
575 0 0 unless $tree->isRoot or $tree->up and $tree->up->left and $tree == $tree->up->left or $tree->up and $tree->up->right and $tree == $tree->up->right
579 0 0 if $tree->left and !$tree->left->up || $tree->left->up != $tree
582 0 0 if $tree->right and !$tree->right->up || $tree->right->up != $tree
601 0 0 unless @k <= $tree->keysPerNode
603 0 0 unless defined $k[$i]
607 0 0 unless @d <= $tree->keysPerNode
611 0 0 if $k[$i - 1] >= $k[$i]
612 0 0 if $k{$k[$i]}++
613 0 0 unless defined $d[$i]
623 0 73383 unless &find($t, $k) == $t{$k}
628 23139 22453 unless $t
632 0 73383 unless delete $t{$_}
637 0 686 if CORE::keys %t
2578 0 1 if eval "eof(${p}::DATA)"
2580 0 1 if $@
2582 0 1 if $@