my $extra_count = $self->{extra}{count} || 0;
- plan tests => @connect_info * (182 + $extra_count + ($self->{data_type_tests}{test_count} || 0));
+ plan tests => @connect_info * (183 + $extra_count + ($self->{data_type_tests}{test_count} || 0));
foreach my $info_idx (0..$#connect_info) {
my $info = $connect_info[$info_idx];
$self->drop_extra_tables_only;
my $dbh = $self->dbconnect(1);
- {
- # Silence annoying but harmless postgres "NOTICE: CREATE TABLE..."
- local $SIG{__WARN__} = sub {
- my $msg = shift;
- warn $msg unless $msg =~ m{^NOTICE:\s+CREATE TABLE};
- };
-
-
- $dbh->do($_) for @{ $self->{extra}{create} || [] };
- $dbh->do($_) for @{ $self->{data_type_tests}{ddl} || []};
- }
+ $dbh->do($_) for @{ $self->{extra}{create} || [] };
+ $dbh->do($_) for @{ $self->{data_type_tests}{ddl} || []};
$self->{_created} = 1;
my $file_count = grep /CREATE (?:TABLE|VIEW)/i, @{ $self->{extra}{create} || [] };
my $dbh = $self->dbconnect(0);
- {
- local $SIG{__WARN__} = sub {}; # postgres notices
- $dbh->do($_) for @{ $self->{extra}{pre_drop_ddl} || [] };
- }
-
+ $dbh->do($_) for @{ $self->{extra}{pre_drop_ddl} || [] };
$dbh->do("DROP TABLE $_") for @{ $self->{extra}{drop} || [] };
foreach my $data_type_table (@{ $self->{data_type_tests}{table_names} || [] }) {
my $file_count;
{
my @loader_warnings;
- local $SIG{__WARN__} = sub { push(@loader_warnings, $_[0]); };
+ local $SIG{__WARN__} = sub { push(@loader_warnings, @_); };
eval qq{
package $schema_class;
use base qw/DBIx::Class::Schema::Loader/;
isa_ok( $rsobj35, "DBIx::Class::ResultSet" );
my @columns_lt2 = $class2->columns;
- is_deeply( \@columns_lt2, [ qw/id dat dat2 set_primary_key dbix_class_testcomponent meta/ ], "Column Ordering" );
+ is_deeply( \@columns_lt2, [ qw/id dat dat2 set_primary_key can dbix_class_testcomponent meta/ ], "Column Ordering" );
+
+ is $class2->column_info('can')->{accessor}, undef,
+ 'accessor for column name that conflicts with a UNIVERSAL method removed';
is $class2->column_info('set_primary_key')->{accessor}, undef,
'accessor for column name that conflicts with a result base class method removed';
$conn->storage->disconnect; # needed for Firebird and Informix
my $dbh = $self->dbconnect(1);
-
- {
- # Silence annoying but harmless postgres "NOTICE: CREATE TABLE..."
- local $SIG{__WARN__} = sub {
- my $msg = shift;
- warn $msg unless $msg =~ m{^NOTICE:\s+CREATE TABLE};
- };
-
- $dbh->do($_) for @statements_rescan;
- }
-
+ $dbh->do($_) for @statements_rescan;
$dbh->disconnect;
sleep 1;
my @new = do {
- # kill the 'Dumping manual schema' warnings
- local $SIG{__WARN__} = sub {};
+ local $SIG{__WARN__} = sub { warn @_
+ unless $_[0] =~ /(?i:loader_test)\d+ has no primary key|^Dumping manual schema|^Schema dump completed/
+ };
$conn->rescan;
};
is_deeply(\@new, [ qw/LoaderTest30/ ], "Rescan");
$conn->storage->dbh->do("DROP TABLE loader_test30");
@new = do {
- local $SIG{__WARN__} = sub {};
+ local $SIG{__WARN__} = sub { warn @_
+ unless $_[0] =~ /(?i:loader_test)\d+ has no primary key|^Dumping manual schema|^Schema dump completed/
+ };
$conn->rescan;
};
is_deeply(\@new, [], 'no new tables on rescan');
my ($oqt, $cqt) = $self->get_oqt_cqt(always => 1); # open quote, close quote
- my $dbh = $conn->storage->dbh;
+ my $dbh = $self->dbconnect;
- {
- # Silence annoying but harmless postgres "NOTICE: CREATE TABLE..."
- local $SIG{__WARN__} = sub {
- my $msg = shift;
- warn $msg unless $msg =~ m{^NOTICE:\s+CREATE TABLE};
- };
-
- $dbh->do($_) for (
+ $dbh->do($_) for (
qq|
CREATE TABLE ${oqt}LoaderTest40${cqt} (
${oqt}Id${cqt} INTEGER NOT NULL PRIMARY KEY,
|,
qq| INSERT INTO ${oqt}LoaderTest40${cqt} VALUES (1, 'foo') |,
qq| INSERT INTO ${oqt}LoaderTest41${cqt} VALUES (1, 1) |,
- );
- }
+ );
$conn->storage->disconnect;
local $conn->_loader->{preserve_case} = 1;
$conn->_loader->_setup;
+
{
- local $SIG{__WARN__} = sub {};
+ local $SIG{__WARN__} = sub { warn @_
+ unless $_[0] =~ /(?i:loader_test)\d+ has no primary key|^Dumping manual schema|^Schema dump completed/
+ };
$conn->rescan;
- }
+ };
if (not $self->{skip_rels}) {
is $conn->resultset('LoaderTest41')->find(1)->loader_test40->foo3_bar, 'foo',
dat VARCHAR(32) NOT NULL,
dat2 VARCHAR(32) NOT NULL,
set_primary_key INTEGER $self->{null},
+ can INTEGER $self->{null},
dbix_class_testcomponent INTEGER $self->{null},
meta INTEGER $self->{null},
UNIQUE (dat2, dat)
my $dbh = $self->dbconnect(1);
- # Silence annoying but harmless postgres "NOTICE: CREATE TABLE..."
- local $SIG{__WARN__} = sub {
- my $msg = shift;
- warn $msg unless $msg =~ m{^NOTICE:\s+CREATE TABLE};
- };
+ $dbh->do($_) for @{ $self->{pre_create} || [] };
$dbh->do($_) foreach (@statements);
for (1,2) {
my $dbh = $self->dbconnect(0);
- {
- local $SIG{__WARN__} = sub {}; # postgres notices
- $dbh->do($_) for @{ $self->{extra}{pre_drop_ddl} || [] };
- }
+ $dbh->do($_) for @{ $self->{extra}{pre_drop_ddl} || [] };
$dbh->do("DROP TABLE $_") for @{ $self->{extra}{drop} || [] };