Commit | Line | Data |
406a97c2 |
1 | use DBIx::Class::Schema::Loader::Optional::Dependencies |
2 | -skip_all_without => qw(test_backcompat test_rdbms_oracle); |
3 | |
9a95164d |
4 | use strict; |
1c94fb11 |
5 | use lib qw(t/backcompat/0.04006/lib); |
9a95164d |
6 | use dbixcsl_common_tests; |
1c94fb11 |
7 | use Test::More; |
9a95164d |
8 | |
9 | my $dsn = $ENV{DBICTEST_ORA_DSN} || ''; |
10 | my $user = $ENV{DBICTEST_ORA_USER} || ''; |
11 | my $password = $ENV{DBICTEST_ORA_PASS} || ''; |
12 | |
406a97c2 |
13 | dbixcsl_common_tests->new( |
9a95164d |
14 | vendor => 'Oracle', |
15 | auto_inc_pk => 'INTEGER NOT NULL PRIMARY KEY', |
16 | auto_inc_cb => sub { |
17 | my ($table, $col) = @_; |
18 | return ( |
19 | qq{ CREATE SEQUENCE ${table}_${col}_seq START WITH 1 INCREMENT BY 1}, |
20 | qq{ |
21 | CREATE OR REPLACE TRIGGER ${table}_${col}_trigger |
22 | BEFORE INSERT ON ${table} |
23 | FOR EACH ROW |
24 | BEGIN |
25 | SELECT ${table}_${col}_seq.nextval INTO :NEW.${col} FROM dual; |
26 | END; |
27 | } |
28 | ); |
29 | }, |
30 | auto_inc_drop_cb => sub { |
31 | my ($table, $col) = @_; |
32 | return qq{ DROP SEQUENCE ${table}_${col}_seq }; |
33 | }, |
34 | dsn => $dsn, |
35 | user => $user, |
36 | password => $password, |
406a97c2 |
37 | )->run_tests(); |