Branch Coverage

blib/lib/DBIx/FlexibleBinding.pm
Criterion Covered Total %
branch 126 204 61.7


line true false branch
382 5 0 if (substr($arg, 0, 1) eq '-') { }
383 1 4 if ($arg eq '-alias') { }
4 0 elsif ($arg eq '-subs') { }
392 0 4 unless ref $list and &reftype($list) eq 'ARRAY'
434 0 5 unless defined $attr
435 5 0 unless defined $attr->{'RootClass'}
518 15862 0 unless (ref $sth)
520 3524 12338 if ref $bind_values[0] and ref $bind_values[0] eq 'HASH'
523 0 15862 if $sth->err
527 0 15862 if $sth->err
530 0 15862 if $sth->err
532 15862 0 if ($result)
533 0 15862 if (@$callbacks)
588 7060 8865 if ($stmt =~ /:\w+\b/) { }
5292 3573 elsif ($stmt =~ /\@\w+\b/) { }
1766 1807 elsif ($stmt =~ /\?\d+\b/) { }
601 0 15925 unless my $sth = $dbh->next::method($stmt, @args)
704 24 0 unless (ref $sth)
706 4 20 if ref $bind_values[0] and ref $bind_values[0] eq 'HASH'
709 0 24 if $sth->err
713 0 24 if $sth->err
816 2 0 unless (ref $sth)
818 0 2 if ref $bind_values[0] and ref $bind_values[0] eq 'HASH'
821 0 2 if $sth->err
825 0 2 if $sth->err
869 2 0 unless (ref $sth)
871 0 2 if ref $bind_values[0] and ref $bind_values[0] eq 'HASH'
874 0 2 if $sth->err
878 0 2 if $sth->err
901 2 0 unless (ref $sth)
903 0 2 if ref $bind_values[0] and ref $bind_values[0] eq 'HASH'
906 0 2 if $sth->err
910 0 2 if $sth->err
949 15925 0 if (ref $params_arrayref and &reftype($params_arrayref) eq 'ARRAY')
951 1807 14118 unless @$params_arrayref
957 0 366540 if (defined $param_count->{$param}) { }
965 10586 3532 if &any(sub { /\D/; } , @$params_arrayref)
974 14118 15922 if (@_ > 1)
984 0 380658 if (@_ > 1) { }
990 14118 366540 unless exists $_[0]{'private_dbix_flexbind'}{'param_count'}
993 0 380658 if wantarray
999 15925 366540 if (@_ > 1) { }
1005 0 366540 unless exists $_[0]{'private_dbix_flexbind'}{'param_order'}
1008 366540 0 if wantarray
1014 10586 0 if (@_ > 1)
1020 10586 0 if ($_[0]{'private_dbix_flexbind'}{'using_named'} = !!$_[1])
1032 3532 10590 if (@_ > 1)
1038 3532 0 if ($_[0]{'private_dbix_flexbind'}{'using_numbered'} = !!$_[1])
1050 1807 380658 if (@_ > 1)
1056 1807 0 if ($_[0]{'private_dbix_flexbind'}{'using_positional'} = !!$_[1])
1091 0 14118 unless @args
1092 0 14118 if $sth->_using_positional
1096 8660 5458 if ($ref) { }
1097 0 8660 unless ($ref eq 'HASH' or $ref eq 'ARRAY')
1101 3528 5132 if $ref eq 'HASH'
1102 1604 3528 if $sth->_using_numbered
1106 5458 0 if (@args)
1107 1928 3530 if $sth->_using_numbered
1140 0 366540 unless (not !$param)
1144 0 366540 if ($param =~ /[^\@\w]/)
1151 0 366540 if ($sth->_using_positional) { }
1162 366540 9162444 if ($identifier eq $param)
1164 0 366540 if $count > $param_count->{$param}
1276 14118 1804 if ($sth->_auto_bind) { }
1281 882 922 if (@bind_values == 1 and ref $bind_values[0] and &reftype($bind_values[0]) eq 'ARRAY') { }
1499 0 2 unless defined $rows
1521 26 0 if ($result)
1522 26 0 unless ($sth->err)
1523 26 0 if (@$callbacks)
1529 0 26 unless defined $result
1530 0 26 wantarray ? :
1551 6 0 if ($result)
1552 6 0 unless ($sth->err)
1553 4 2 if (@$callbacks)
1559 0 6 unless defined $result
1560 0 6 wantarray ? :
1598 4 0 if ($result)
1599 4 0 unless ($sth->err)
1602 4 0 if (@$callbacks)
1629 19 3 if ($result)
1630 19 0 unless ($sth->err)
1631 14 5 if (@$callbacks)
1686 9 7 if (@args)
1687 0 9 if (@args == 1 and not defined $args[0]) { }
2 7 elsif (@args == 1 and &blessed($args[0])) { }
5 2 elsif ($args[0] =~ /^dbi:/i) { }
1691 0 2 if ($args[0]->isa('DBI::db')) { }
2 0 elsif ($args[0]->isa('DBI::st')) { }
1718 5 16 unless (defined $self)
1729 0 5 if exists $self->{'target'}
1737 0 5 if (@args == 1 and &blessed($args[0])) { }
1738 0 0 unless $args[0]->isa('DBI::db')
1741 0 0 unless $self->{'target'}->isa('DBIx::FlexibleBinding::db')
1744 0 5 unless $args[0] =~ /^dbi:/i
1756 0 2 unless $args[0]->isa('DBI::st')
1759 0 2 unless $self->{'target'}->isa('DBIx::FlexibleBinding::st')
1767 0 0 unless (defined &$AUTOLOAD)
1769 0 0 unless my $endpoint = $self->{'target'}->can($method)
1804 2 0 if ($self->{'target'}->isa('DBIx::FlexibleBinding::st'))
1805 2 0 if ($self->{'target'}{'NUM_OF_PARAMS'}) { }
1828 0 2 unless ref $coderef and &reftype($coderef) eq 'CODE'
1841 1 5 if @items == 1 and not defined $items[0]