Branch Coverage

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


line true false branch
112 0 15 if ($table =~ /(.+)\.(.+)/) { }
118 14 1 $sth->fetchrow_hashref ? :
139 0 6 if ($table =~ /(.+)\.(.+)/) { }
144 1 5 unless $sth->fetchrow_hashref
163 0 5 if ($table =~ /(.+)\.(.+)/) { }
168 3 2 if $sth->fetchrow_hashref
170 1 0 @tables ? :
186 0 5 unless has_table($dbh, $table)
188 3 2 grep({$_->{'COLUMN_NAME'} eq $column;} @columns) ? :
208 0 3 unless has_table($dbh, $table)
211 1 7 unless (grep {$_->{'COLUMN_NAME'} eq $column;} @all_columns)
229 0 4 unless has_table($dbh, $table)
232 3 1 if (grep {$_->{'COLUMN_NAME'} eq $column;} @all_columns)
234 1 0 @columns ? :
258 0 12 if ($driver eq 'mysql')
263 0 12 if $type eq 'VIEW'
264 4 8 if $type eq 'INDEX'
265 0 8 if $schem =~ /^(information_schema)$/
267 0 8 if ($driver eq 'Pg') { }
8 0 elsif ($driver eq 'SQLite') { }
268 0 0 if $schem =~ /^(pg_catalog)$/
270 2 6 if $schem =~ /^(temp)$/
271 2 4 if $name =~ /^(sqlite_master|sqlite_temp_master)$/
274 4 0 length $schem ? :
313 1 0 if ($driver eq 'SQLite') { }
0 0 elsif ($driver eq 'mysql') { }
316 0 1 if (defined $wanted_table) { }
321 2 0 if /.+\.(.+)/
326 2 2 unless $row->{'type'} eq 'index'
327 0 2 unless grep {$_ eq $row->{'tbl_name'};} @wanted_tables
328 1 1 unless $row->{'name'} =~ /\Asqlite_autoindex_.+_(\d+)\z/
343 4 2 unless $row->{'TABLE_TYPE'} eq 'INDEX'
349 0 2 if (defined $wanted_table)
350 0 0 if ($wanted_table =~ /(.+)\.(.+)/) { }
351 0 0 unless $schem eq $1 and $table eq $2
353 0 0 unless $table eq $wanted_table
357 1 1 unless my $sql = $row->{'sqlite_sql'}
359 0 1 unless ($sql =~ s/\A\s*CREATE\s+(UNIQUE\s+)?INDEX\s+//is)
364 0 1 $1 ? :
365 0 1 $1 ? :
367 0 1 unless $sql =~ s/\A(\S+)\s+//s
372 0 1 unless $sql =~ s/\AON\s*(\S+)\s*\(\s*(.+)\s*\)//s
386 0 0 if (defined $wanted_table)
387 0 0 if ($wanted_table =~ /(.+)\.(.+)/) { }
388 0 0 unless $row->{'TABLE_SCHEM'} eq $1 and $row->{'TABLE_NAME'} eq $2
390 0 0 unless $row->{'TABLE_NAME'} eq $wanted_table
395 0 0 $row->{'NON_UNIQUE'} ? :
396 0 0 $row->{'INDEX_NAME'} eq 'PRIMARY' ? :
404 0 0 unless grep {$row->{'INDEX_NAME'} eq $_;} @index_names
407 0 0 if (@hashes == 1) { }
444 0 14 if ($table =~ /\./) { }