plan skip_all => <<'EOF' unless $dsn || $dsn2;
Set $ENV{DBICTEST_FIREBIRD_DSN} and/or $ENV{DBICTEST_FIREBIRD_ODBC_DSN},
-_USER and _PASS to run these tests
+_USER and _PASS to run these tests.
+
+WARNING: this test creates and drops the tables "artist", "bindtype_test" and
+"sequence_test"; the generators "gen_artist_artistid", "pkid1_seq", "pkid2_seq"
+and "nonpkid_seq" and the trigger "artist_bi".
EOF
my @info = (
}
# test empty insert
+ lives_and {
+ my $row = $ars->create({});
+ ok $row->artistid;
+ } 'empty insert works';
+
+# test inferring the generator from the trigger source and using it with
+# auto_nextval
{
- local $ars->result_source->column_info('artistid')->{is_auto_increment} = 0;
+ local $ars->result_source->column_info('artistid')->{auto_nextval} = 1;
- lives_ok { $ars->create({}) }
- 'empty insert works';
+ lives_and {
+ my $row = $ars->create({ name => 'introspecting generator' });
+ ok $row->artistid;
+ } 'inferring generator from trigger source works';
}
# test blobs (stolen from 73oracle.t)
- eval { $dbh->do('DROP TABLE "bindtype_test2"') };
+ eval { $dbh->do('DROP TABLE "bindtype_test"') };
$dbh->do(q[
- CREATE TABLE "bindtype_test2"
+ CREATE TABLE "bindtype_test"
(
"id" INT PRIMARY KEY,
"bytea" INT,
- "a_blob" BLOB,
- "a_clob" BLOB SUB_TYPE TEXT
+ "blob" BLOB,
+ "clob" BLOB SUB_TYPE TEXT
)
]);
my $maxloblen = length $binstr{'large'};
local $dbh->{'LongReadLen'} = $maxloblen;
- my $rs = $schema->resultset('BindType2');
+ my $rs = $schema->resultset('BindType');
my $id = 0;
- foreach my $type (qw( a_blob a_clob )) {
+ foreach my $type (qw( blob clob )) {
foreach my $size (qw( small large )) {
$id++;
diag $@ if $@;
}
- foreach my $table (qw/artist bindtype_test2 sequence_test/) {
+ foreach my $table (qw/artist bindtype_test sequence_test/) {
eval { $dbh->do(qq[DROP TABLE "$table"]) };
diag $@ if $@;
}