Branch Coverage

blib/lib/Test/Debugger.pm
Criterion Covered Total %
branch 107 126 84.9


line true false branch
12 6 0 if ($@) { }
20 6 0 if (not $@ and 'Test::Harness'->VERSION >= 1.21)
117 6 44 if @_
118 5 44 if ($is_new)
120 3 2 $caller[0] eq 'Test::Debugger' ? :
131 6 4 ref $_[0] ? :
134 1 5 if (exists $opts{'todo'} and ref $opts{'todo'} eq 'ARRAY')
137 0 6 if (exists $opts{'onfail'} and ref $opts{'onfail'} eq 'CODE')
140 4 2 if (exists $opts{'log_file'})
143 0 6 if (exists $opts{'next_test_number'}) { }
0 6 elsif (exists $opts{'start'}) { }
148 6 0 if (exists $opts{'tests'} or exists $opts{'skip'})
156 0 5 if (exists $opts{'param_order'})
167 42 0 ref $_[0] ? :
169 0 42 if (defined $current)
177 44 2 ref $_[0] ? :
179 4 42 if (@_) { }
24 18 elsif (exists $$self{'param_order'}{$method}) { }
1 17 elsif (exists $Test::Debugger::param_order{$method}) { }
17 0 elsif (exists $$self{'param_order'}{'ok'}) { }
184 0 1 if (exists $$self{'param_order'}{'ok'}) { }
200 0 6 if ($array[$c] eq 'self')
214 2 22 if ($num_opts == 1 or ref $first eq 'Test::Debugger' and $num_opts == 2)
216 0 2 $num_opts == 1 ? :
239 3 2 if ($num_opts == 1 or ref $first eq 'Test::Debugger' and $num_opts == 2)
241 0 3 $num_opts == 1 ? :
282 23 19 unless ($$opts{'single'} or $$opts{'operator'})
283 21 2 defined $$opts{'expected'} ? :
284 22 1 defined $$opts{'actual'} ? :
286 21 2 if (defined $expect and defined $actual) { }
287 9 12 $expect =~ /\D/ || $actual =~ /\D/ || $expect eq '' || $actual eq '' ? :
304 42 192 if ($key eq 'expected')
333 5 37 if ($single) { }
335 4 1 defined $actual ? :
339 35 2 defined $expect ? :
36 1 defined $actual ? :
346 2 40 if (exists $Test::Debugger::todo{$$self{'current'}})
349 0 42 if (not $Test::Debugger::separate_todo and $todo)
353 7 35 if ($$self{'log_file'} and not $true)
354 6 1 defined $expect ? :
6 1 defined $actual ? :
365 5 37 if ($$self{'final'} and $$self{'current'} >= $$self{'final'}) { }
370 6 36 $skip ? :
376 2 3 $actual ? :
385 35 2 if (defined $expect and defined $actual) { }
1 1 elsif (defined $expect eq defined $actual) { }
386 2 33 if (ref $expect eq 'Regexp')
389 35 0 if (exists {!= => {code => sub { my $expected = shift(); shift() != $expected; } , desc => 'Not Equal to '}, < => {code => sub { my $expected = shift(); shift() < $expected; } , desc => 'Less Than '}, <= => {code => sub { my $expected = shift(); shift() <= $expected; } , desc => 'Less Than or Equal to '}, == => {code => sub { my $expected = shift(); shift() == $expected; } , desc => ''}, =~ => {code => sub { my $expected = shift(); (shift()) =~ /$expected/; } , desc => 'to Match Pattern '}, > => {code => sub { my $expected = shift(); shift() > $expected; } , desc => 'Greater Than '}, >= => {code => sub { my $expected = shift(); shift() >= $expected; } , desc => 'Greater Than or Equal to '}, eq => {code => sub { shift() eq shift(); } , desc => ''}, ge => {code => sub { my $expected = shift(); shift() ge $expected; } , desc => 'Greater Than or Equal to (alpha) '}, gt => {code => sub { my $expected = shift(); shift() gt $expected; } , desc => 'Greater Than (alpha) '}, le => {code => sub { my $expected = shift(); shift() le $expected; } , desc => 'Less Than or Equal to (alpha) '}, lt => {code => sub { my $expected = shift(); shift() lt $expected; } , desc => 'Less Than (alpha) '}, ne => {code => sub { shift() ne shift(); } , desc => 'Not Equal to (alpha) '}, re => {code => sub { my $expected = shift(); (shift()) =~ /$expected/; } , desc => 'to Match Pattern '}}->{$operator}) { }
390 31 4 {!= => {code => sub { my $expected = shift(); shift() != $expected; } , desc => 'Not Equal to '}, < => {code => sub { my $expected = shift(); shift() < $expected; } , desc => 'Less Than '}, <= => {code => sub { my $expected = shift(); shift() <= $expected; } , desc => 'Less Than or Equal to '}, == => {code => sub { my $expected = shift(); shift() == $expected; } , desc => ''}, =~ => {code => sub { my $expected = shift(); (shift()) =~ /$expected/; } , desc => 'to Match Pattern '}, > => {code => sub { my $expected = shift(); shift() > $expected; } , desc => 'Greater Than '}, >= => {code => sub { my $expected = shift(); shift() >= $expected; } , desc => 'Greater Than or Equal to '}, eq => {code => sub { shift() eq shift(); } , desc => ''}, ge => {code => sub { my $expected = shift(); shift() ge $expected; } , desc => 'Greater Than or Equal to (alpha) '}, gt => {code => sub { my $expected = shift(); shift() gt $expected; } , desc => 'Greater Than (alpha) '}, le => {code => sub { my $expected = shift(); shift() le $expected; } , desc => 'Less Than or Equal to (alpha) '}, lt => {code => sub { my $expected = shift(); shift() lt $expected; } , desc => 'Less Than (alpha) '}, ne => {code => sub { shift() ne shift(); } , desc => 'Not Equal to (alpha) '}, re => {code => sub { my $expected = shift(); (shift()) =~ /$expected/; } , desc => 'to Match Pattern '}}->{$operator}{'code'}($expect, $actual) ? :
407 1 5 $todo ? :
408 2 4 if $message
409 1 5 $skip ? :
410 1 5 if $skip
419 6 36 if ($skip) { }
422 4 32 $todo ? :
423 34 2 $true ? :
437 2 5 if ($todo) { }
5 0 elsif ($skip) { }
444 1 6 unless defined $expect
445 1 6 unless defined $actual
446 7 0 if (open FILE, '>>' . $$self{'log_file'})
448 4 3 if $message
449 0 7 if $error