Branch Coverage

blib/lib/Teng.pm
Criterion Covered Total %
branch 125 174 71.8


line true false branch
38 1 65 $pkg =~ s/^\+// ? :
41 0 66 if ref $class
51 2 64 if $pkg->can("init")
56 77 14 @_ == 1 ? :
59 2 89 if (my $mode = delete $args{'mode'})
61 2 0 unless (exists $args{'no_ping'})
62 1 1 $mode eq 'ping' ? :
76 86 1 unless ($loader or $self->schema)
80 0 86 unless ($schema)
87 0 71 unless ($self->connect_info or $self->{'dbh'})
91 20 71 if (not $self->{'dbh'}) { }
102 1 0 if (@_)
113 0 0 if (@_)
115 0 0 if ($mode eq 'ping') { }
123 0 0 $self->no_ping ? :
132 0 26 if (@args)
141 18 8 unless $connect_info->[3]
144 1 25 unless $self->{'dbh'} = eval {
157 17 57 if (my $on_connect_do = $self->on_connect_do)
158 4 13 if (not ref $on_connect_do) { }
8 5 elsif (ref $on_connect_do eq 'CODE') { }
4 1 elsif (ref $on_connect_do eq 'ARRAY') { }
179 0 50 if (@_) { }
192 1 49 unless my $new_dbh = eval {
207 52 0 if (my $dbh = $self->{'dbh'})
208 3 49 if ($self->owner_pid and $self->owner_pid != $$) { }
223 89 55 unless ($builder)
227 86 3 unless $self->{'sql_builder_args'}
233 140 4 if $self->{'schema'}
239 1 725 if (not $self->owner_pid or $self->owner_pid != $$) { }
725 0 elsif (my $dbh = $self->{'dbh'}) { }
243 0 725 if (not $dbh->FETCH('Active')) { }
12 713 elsif (not $self->no_ping || $dbh->ping) { }
277 0 5 if $caller[0]->isa("Teng")
278 0 5 if $caller[0] =~ /^Teng::/
279 1 4 if $self->trace_ignore_if->(@caller)
292 4 415 if ($ENV{'TENG_SQL_COMMENT'} or $self->sql_comment)
300 16 397 unless $binds
301 327 271 if (&Scalar::Util::blessed($v) and ref $v eq 'SQL::Maker::SQLType') { }
306 0 271 ref $v eq 'ARRAY' ? :
312 12 407 if ($@)
317 2 405 unless (defined wantarray)
329 0 27 if ($driver eq 'mysql') { }
0 27 elsif ($driver eq 'Pg') { }
27 0 elsif ($driver eq 'SQLite') { }
0 0 elsif ($driver eq 'Oracle') { }
332 0 0 if (defined $column) { }
353 5 332 ref $args->{$col} ? :
364 1 165 unless ($table)
384 1 6 if defined $sth->{'mysql_insertid'}
394 96 53 unless defined wantarray
400 22 31 if (@missing_primary_keys == 1)
404 1 21 defined $sth->{'mysql_insertid'} ? :
407 2 51 if $self->suppress_row_objects
412 0 60 if (ref $args->{$key})
419 51 0 if (%where and $refetch)
436 0 2 unless $args
0 2 unless scalar @{[] unless $args;}
441 0 2 $dbh->{'Driver'}{'Name'} eq 'Pg' && $dbh->{'pg_server_version'} >= 82000 ? :
0 2 $dbh->{'Driver'}{'Name'} eq 'mysql' ? :
444 0 2 if ($can_multi_insert) { }
446 0 0 unless ($table)
450 0 0 if ($table->has_deflators)
486 1 7 unless ($table)
514 0 36 $self->{'txn_manager_class'} ? :
521 55 31 unless $self->{'txn_manager'}
523 10 21 if (my $info = $self->{'txn_manager'}->in_transaction)
552 1 20 if ($@)
553 0 1 @bind_vars ? :
564 4 174 $opt->{'+columns'} ? :
571 1 34 unless ($table)
590 1 6 unless exists $args->{$1}
591 1 5 if (ref $args->{$1} and ref $args->{$1} eq 'ARRAY') { }
616 0 138 unless $table
628 0 138 unless (defined wantarray)
635 16 122 unless $row
636 0 122 if $self->{'suppress_row_objects'}
657 0 55 unless (defined wantarray)
673 10 45 wantarray ? :
681 0 2 unless $table
687 0 2 unless (defined wantarray)
694 0 2 unless $row
695 0 2 if $self->{'suppress_row_objects'}
712 0 4 unless $table
714 0 4 if $self->{'suppress_row_objects'}
743 26 1 if ($sql =~ /\sfrom\s+["`]?([\w]+)["`]?\s*/is)
768 1 85 if ($self->owner_pid and $self->owner_pid != $$ and my $dbh = $self->{'dbh'})