Branch Coverage

blib/lib/DBD/Multi.pm
Criterion Covered Total %
branch 53 72 73.6


line true false branch
17 0 10 if $DBD::Multi::drh
52 112 1 $attr->{'dsns'} && ref $attr->{'dsns'} eq 'ARRAY' ? :
55 0 113 if ($dbname =~ /dsn=(.*)/)
63 0 113 if exists $attr->{'failed_max'}
65 1 112 if exists $attr->{'failed_expire'}
95 24 412 unless ($_sth)
122 0 0 if ($dbh->FETCH('Active'))
123 0 0 if $dbh->FETCH('_dbh')
130 0 0 if ($dbh->FETCH('Active'))
131 0 0 if $dbh->FETCH('_dbh')
188 5 405 @_ ? :
190 1 409 if $sth->FETCH('Active')
196 3 1637 unless not defined $value or defined $sth->FETCH($field)
206 1634 407 unless $sth->{'_sth'}->FETCH($attrib)
295 113 0 unless defined $self->nextid
300 113 0 unless defined $self->failed_max
301 113 0 unless defined $self->failed_expire
302 113 0 unless defined $self->timeout
327 441 6 if $dbh
346 791 175 unless $self->failed->{$dsource}
347 1 174 if ($now - $self->failed_last->{$dsource} > $self->failed_expire)
362 448 118 if (defined $dsource)
370 0 2 if grep({$self->failed->{$_} >= $self->failed_max;} keys %{$self->failed;}) < keys %{$self->all_dsources;}
383 174 637 if exists $self->failed->{$_}
386 118 448 if @used == @dsources and @failed == @dsources
389 271 177 if @used == @dsources
393 2 473 if $self->failed->{$dsource} and $self->failed->{$dsource} >= $self->failed_max
394 25 448 if $self->used->{$dsource}
408 0 234 unless my $dsource = shift @{$dsources;}
415 450 84 unless ($dsource)
421 55 477 if UNIVERSAL::isa($dsource, 'DBI::db')
424 213 264 if (ref $dsource eq 'CODE')
426 207 6 if UNIVERSAL::isa($handle, 'DBI::db')
432 0 263 if (&timeout_call(scalar $self->timeout, sub { $dbh = 'DBI'->connect_cached(@{$dsource;}); } ))
450 0 84 unless $dbh
451 12 72 if ($dbh->{'handler'})