Branch Coverage

blib/lib/DBIx/Util/Schema.pm
Criterion Covered Total %
branch 51 102 50.0


line true false branch
106 0 15 if ($table =~ /(.+)\.(.+)/) { }
112 14 1 $sth->fetchrow_hashref ? :
133 0 6 if ($table =~ /(.+)\.(.+)/) { }
138 1 5 unless $sth->fetchrow_hashref
157 0 5 if ($table =~ /(.+)\.(.+)/) { }
162 3 2 if $sth->fetchrow_hashref
164 1 0 @tables ? :
180 0 5 unless has_table($dbh, $table)
182 3 2 grep({$_->{'COLUMN_NAME'} eq $column;} @columns) ? :
202 0 3 unless has_table($dbh, $table)
205 1 7 unless (grep {$_->{'COLUMN_NAME'} eq $column;} @all_columns)
223 0 4 unless has_table($dbh, $table)
226 3 1 if (grep {$_->{'COLUMN_NAME'} eq $column;} @all_columns)
228 1 0 @columns ? :
252 0 12 if ($driver eq 'mysql')
257 0 12 if $type eq 'VIEW'
258 4 8 if $type eq 'INDEX'
259 0 8 if $schem =~ /^(information_schema)$/
261 0 8 if ($driver eq 'Pg') { }
8 0 elsif ($driver eq 'SQLite') { }
262 0 0 if $schem =~ /^(pg_catalog)$/
264 2 6 if $schem =~ /^(temp)$/
265 2 4 if $name =~ /^(sqlite_master|sqlite_temp_master)$/
268 4 0 length $schem ? :
307 1 0 if ($driver eq 'SQLite') { }
0 0 elsif ($driver eq 'mysql') { }
310 0 1 if (defined $wanted_table) { }
315 2 0 if /.+\.(.+)/
320 2 2 unless $row->{'type'} eq 'index'
321 0 2 unless grep {$_ eq $row->{'tbl_name'};} @wanted_tables
322 1 1 unless $row->{'name'} =~ /\Asqlite_autoindex_.+_(\d+)\z/
337 4 2 unless $row->{'TABLE_TYPE'} eq 'INDEX'
343 0 2 if (defined $wanted_table)
344 0 0 if ($wanted_table =~ /(.+)\.(.+)/) { }
345 0 0 unless $schem eq $1 and $table eq $2
347 0 0 unless $table eq $wanted_table
351 1 1 unless my $sql = $row->{'sqlite_sql'}
353 0 1 unless ($sql =~ s/\A\s*CREATE\s+(UNIQUE\s+)?INDEX\s+//is)
358 0 1 $1 ? :
359 0 1 $1 ? :
361 0 1 unless $sql =~ s/\A(\S+)\s+//s
366 0 1 unless $sql =~ s/\AON\s*(\S+)\s*\(\s*(.+)\s*\)//s
380 0 0 if (defined $wanted_table)
381 0 0 if ($wanted_table =~ /(.+)\.(.+)/) { }
382 0 0 unless $row->{'TABLE_SCHEM'} eq $1 and $row->{'TABLE_NAME'} eq $2
384 0 0 unless $row->{'TABLE_NAME'} eq $wanted_table
389 0 0 $row->{'NON_UNIQUE'} ? :
390 0 0 $row->{'INDEX_NAME'} eq 'PRIMARY' ? :
398 0 0 unless grep {$row->{'INDEX_NAME'} eq $_;} @index_names
401 0 0 if (@hashes == 1) { }
438 0 14 if ($table =~ /\./) { }