Branch Coverage

inc/Test2/API/Instance.pm
Criterion Covered Total %
branch 29 152 19.0


line true false branch
47 6 6 unless $self->{'finalized'}
59 0 6 unless @_
102 0 6 unless defined $self->{'_pid'}
103 0 6 unless defined $self->{'_tid'}
105 6 0 unless ($self->{'formatter'})
107 0 6 if ($ENV{'T2_FORMATTER'}) { }
6 0 elsif (@{$self->{'formatters'};}) { }
110 0 0 if ($ENV{'T2_FORMATTER'} =~ /^(\+)?(.*)$/) { }
111 0 0 $1 ? :
126 0 6 unless (ref $formatter or $formatter->can('write'))
129 0 0 unless ($ok)
141 6 0 unless $INC{'Test2/IPC.pm'} or @{$self->{'ipc_drivers'};}
146 0 0 unless (@{$self->{'ipc_drivers'};})
148 0 0 unless $ok
153 0 0 unless $driver->can('is_viable') and $driver->is_viable
154 0 0 unless $self->{'ipc'} = $driver->new
155 0 0 if $self->{'ipc'}->use_shm
162 0 0 $_[0]{'formatter'} ? :
169 6 0 unless $self->{'finalized'}
184 0 6 unless $code and $rtype eq 'CODE'
196 0 0 unless $code and $rtype eq 'CODE'
208 0 0 unless $code and $rtype eq 'CODE'
220 0 0 unless $code and $rtype eq 'CODE'
224 0 0 if $self->{'loaded'}
229 6 0 unless ($self->{'loaded'})
230 6 0 unless defined $self->{'_pid'}
231 6 0 unless defined $self->{'_tid'}
237 0 6 unless eval 'END { Test2::API::test2_set_is_end() }; 1'
250 0 6 unless $code and $rtype eq 'CODE'
261 0 0 unless $self->{'finalized'}
273 0 0 unless defined $self->{'_pid'}
274 0 0 unless defined $self->{'_tid'}
280 0 0 unless $self->{'ipc_polling'}
281 0 0 unless $self->{'ipc_shm_id'}
285 0 0 unless shmread $self->{'ipc_shm_id'}, $val, 0, $self->{'ipc_shm_size'}
287 0 0 if $val eq $self->{'ipc_shm_last'}
293 0 0 unless defined $self->ipc_polling
301 0 0 if defined $self->{'ipc_shm_id'}
303 0 0 unless defined $self->{'_pid'}
304 0 0 unless defined $self->{'_tid'}
317 0 0 $self->{'ipc'}->can('shm_size') ? :
318 0 0 unless my $shm_id = shmget($ipc_key, $shm_size, 438)
321 0 0 unless shmwrite $shm_id, $initial, 0, $shm_size
335 0 0 unless defined $id
342 0 0 unless defined $self->{'ipc_shm_id'}
344 0 0 unless shmread $self->{'ipc_shm_id'}, $val, 0, $self->{'ipc_shm_size'}
345 0 0 if $val eq $self->{'ipc_shm_last'}
353 0 0 unless defined $self->{'ipc_shm_id'}
357 0 0 unless $val
365 0 0 unless defined $self->{'ipc_polling'}
372 0 0 if (&CAN_FORK())
376 0 0 if $pid == -1
377 0 0 unless $err
398 0 0 unless $fail
405 0 0 unless defined $self->{'_pid'} and $self->{'_pid'} == $$
406 0 0 unless defined $self->{'_tid'} and $self->{'_tid'} == 0
409 0 0 if defined $self->{'ipc_shm_id'}
418 0 6 if ($INC{'Test/Builder.pm'} and $Test::Builder::VERSION ne $Test2::API::VERSION)
435 0 0 unless $ctx
437 0 0 if $ctx->_aborted and ${$ctx->_aborted;}
441 0 0 unless $trace->pid and $trace->pid == $$
447 0 0 if $hub->bailed_out
448 0 0 if defined $hub->skip_reason
457 0 6 if (not defined $self->{'_pid'} && defined $self->{'_tid'} or $self->{'_pid'} != $$ or $self->{'_tid'} != 0)
462 6 0 $self->{'stack'} ? :
464 0 6 if (@hubs and $self->{'ipc'} and not $self->{'no_wait'})
468 0 0 unless my $ipc = $hub->ipc
469 0 0 if $seen{$ipc}++
478 6 0 if (my $root = shift @hubs)
488 0 6 if (@hubs)
493 6 0 unless ($root->no_ending)
495 1 5 unless $root->ended
498 0 6 unless $root->is_passing
502 0 6 if $new_exit > 255
504 0 6 if ($new_exit and eval { do { require Test2::API::Breakage; 1 } })
507 0 0 if (@warn)