prepare oracle test
|
1 |
use strict; |
2 |
use warnings; |
|
3 | ||
4 |
use FindBin; |
|
5 |
$ENV{DBIX_CUSTOM_TEST_RUN} = 1 |
|
6 |
if -f "$FindBin::Bin/run/common-oracle.run"; |
|
7 |
$ENV{DBIX_CUSTOM_SKIP_MESSAGE} = 'oracle private test'; |
|
8 | ||
9 |
use DBIx::Custom; |
|
10 |
{ |
|
11 |
package DBIx::Custom; |
|
12 |
no warnings 'redefine'; |
|
13 | ||
14 |
my $date_typename = 'CHAR(10)'; |
|
15 |
my $datetime_typename = 'DATE'; |
|
16 | ||
17 |
sub date_typename { lc 'CHAR' } |
|
18 |
sub datetime_typename { lc $datetime_typename } |
|
19 | ||
20 |
my $date_datatype = 91; |
|
21 |
my $datetime_datatype = 11; |
|
22 | ||
23 |
sub date_datatype { lc $date_datatype } |
|
24 |
sub datetime_datatype { lc $datetime_datatype } |
|
25 |
|
|
26 |
has datetime_suffix => ''; |
|
27 | ||
28 |
has dsn => 'dbi:Oracle:host=localhost;port=1521;sid=XE'; |
|
29 |
has user => 'dbix_custom'; |
|
30 |
has password => 'dbix_custom'; |
|
31 |
has exclude_table => sub { |
|
32 | ||
33 |
return qr/^( |
|
34 |
pg_|column_|role_|view_|sql_ |
|
35 |
|applicable_roles |
|
36 |
|check_constraints |
|
37 |
|columns |
|
38 |
|constraint_column_usage |
|
39 |
|constraint_table_usage |
|
40 |
|data_type_privileges |
|
41 |
|domain_constraints |
|
42 |
|domain_udt_usage |
|
43 |
|domains |
|
44 |
|element_types |
|
45 |
|enabled_roles |
|
46 |
|information_schema |
|
47 |
|information_schema_catalog_name |
|
48 |
|key_column_usage |
|
49 |
|parameters |
|
50 |
|referential_constraints |
|
51 |
|routine_privileges |
|
52 |
|routines |
|
53 |
|schemata |
|
54 |
|table_constraints |
|
55 |
|table_privileges |
|
56 |
|tables |
|
57 |
|triggered_update_columns |
|
58 |
|triggers |
|
59 |
|usage_privileges |
|
60 |
|views |
|
61 |
)/x |
|
62 |
}; |
|
63 |
|
|
64 |
sub create_table1 { 'create table table1 (key1 varchar2(255), key2 varchar2(255));' } |
|
65 |
sub create_table1_2 {'create table table1 (key1 varchar2(255), key2 varchar2(255), ' |
|
66 |
. 'key3 varchar2(255), key4 varchar2(255), key5 varchar2(255));' } |
|
67 |
sub create_table1_type { "create table table1 (key1 $date_typename, key2 $datetime_typename);" } |
|
68 |
sub create_table1_highperformance { "create table table1 (ab varchar2(255), bc varchar2(255), " |
|
69 |
. "ik varchar2(255), hi varchar2(255), ui varchar2(255), pq varchar2(255), dc varchar2(255));" } |
|
70 |
sub create_table2 { 'create table table2 (key1 varchar2(255), key3 varchar2(255));' } |
|
71 |
sub create_table2_2 { "create table table2 (key1 varchar2(255), key2 varchar2(255), key3 varchar2(255))" } |
|
72 |
sub create_table3 { "create table table3 (key1 varchar2(255), key2 varchar2(255), key3 varchar2(255))" } |
|
73 |
sub create_table_reserved { 'create table "table" ("select" varchar2(255), "update" varchar2(255))' } |
|
74 |
} |
|
75 | ||
76 |
require "$FindBin::Bin/common.t"; |