Condition Coverage

blib/lib/Test/Debugger.pm
Criterion Covered Total %
condition 73 104 70.1


and 2 conditions

line l !l condition
131 0 3 'Test::Debugger'->new(@_) && (return)

and 3 conditions

line !l l&&!r l&&r condition
20 0 0 6 not $@ and 'Test::Harness'->VERSION >= 1.21
134 5 0 1 exists $opts{'todo'} and ref $opts{'todo'} eq 'ARRAY'
137 6 0 0 exists $opts{'onfail'} and ref $opts{'onfail'} eq 'CODE'
214 4 18 2 ref $first eq 'Test::Debugger' and $num_opts == 2
239 0 2 3 ref $first eq 'Test::Debugger' and $num_opts == 2
286 2 0 21 defined $expect and defined $actual
349 42 0 0 not $Test::Debugger::separate_todo and $todo
353 1 34 7 $$self{'log_file'} and not $true
365 0 37 5 $$self{'final'} and $$self{'current'} >= $$self{'final'}
385 2 0 35 defined $expect and defined $actual

or 2 conditions

line l !l condition
114 44 6 $Test::Debugger::object_handle ||= bless({}, $class)
122 0 5 $$self{'current'} ||= 0
124 5 0 $$self{'final'} ||= 0
149 6 0 $opts{'tests'} || 0
150 1 5 $opts{'skip'} || 0
151 2 4 $opts{'skip_message'} || ''
157 0 0 $opts{'param_order'} || {}
159 0 0 $$p_order{$key} || (next)
178 46 0 shift() || 'ok'
309 14 28 $opts{'operator'} ||= ''
317 5 37 shift() || 0
318 37 5 shift() || 'eq'
319 6 36 shift() || 0
320 2 40 shift() || 0
321 37 5 shift() || ''
322 23 19 shift() || ''
375 2 3 shift() || 0
403 6 0 shift() || 0
404 1 5 shift() || 0
405 2 4 shift() || ''
416 6 36 shift() || 0
417 4 38 shift() || 0
418 37 5 shift() || ''
432 5 2 shift() || 0
433 2 5 shift() || 0
434 4 3 shift() || ''
435 0 7 shift() || ''

or 3 conditions

line l !l&&r !l&&!r condition
148 6 0 0 exists $opts{'tests'} or exists $opts{'skip'}
214 0 0 24 $num_opts == 1 or ref $first eq 'Test::Debugger' and $num_opts == 2
239 0 0 5 $num_opts == 1 or ref $first eq 'Test::Debugger' and $num_opts == 2
282 5 14 23 $$opts{'single'} or $$opts{'operator'}
287 0 0 12 $expect =~ /\D/ || $actual =~ /\D/ || $expect eq '' || $actual eq ''
308 35 7 0 $opts{'self'} ||= $self