X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F18firebird_common.t;h=d154cbd44aca06896421d3bbfbfd75ab6ec78237;hb=3de915bcc13aef740372ed107c3076f1a8062d3d;hp=295bec3be782422e11dd10da78171039d258fc4b;hpb=3a89a69f4383e520ddbf4cb2ea22b2e044f7cd96;p=dbsrgits%2FDBIx-Class-Schema-Loader.git diff --git a/t/18firebird_common.t b/t/18firebird_common.t index 295bec3..d154cbd 100644 --- a/t/18firebird_common.t +++ b/t/18firebird_common.t @@ -54,8 +54,62 @@ my $tester = dbixcsl_common_tests->new( password => $odbc_password, } : ()), ], + data_types => { + # based on the Interbase Data Definition Guide + # http://www.ibphoenix.com/downloads/60DataDef.zip + # + # Numeric types + 'smallint' => { data_type => 'smallint' }, + 'int' => { data_type => 'integer' }, + 'integer' => { data_type => 'integer' }, + 'bigint' => { data_type => 'bigint' }, + 'float' => { data_type => 'float' }, + 'double precision' => + { data_type => 'double precision' }, + 'real' => { data_type => 'float' }, + + 'float(2)' => { data_type => 'float' }, + 'float(7)' => { data_type => 'float' }, + 'float(8)' => { data_type => 'double precision' }, + + 'decimal' => { data_type => 'decimal' }, + 'dec' => { data_type => 'decimal' }, + 'numeric' => { data_type => 'numeric' }, + + 'decimal(3)' => { data_type => 'decimal', size => [3,0] }, + + 'decimal(3,3)' => { data_type => 'decimal', size => [3,3] }, + 'dec(3,3)' => { data_type => 'decimal', size => [3,3] }, + 'numeric(3,3)' => { data_type => 'numeric', size => [3,3] }, + + 'decimal(6,3)' => { data_type => 'decimal', size => [6,3] }, + 'numeric(6,3)' => { data_type => 'numeric', size => [6,3] }, + + 'decimal(12,3)' => { data_type => 'decimal', size => [12,3] }, + 'numeric(12,3)' => { data_type => 'numeric', size => [12,3] }, + + 'decimal(18,18)' => { data_type => 'decimal', size => [18,18] }, + 'dec(18,18)' => { data_type => 'decimal', size => [18,18] }, + 'numeric(18,18)' => { data_type => 'numeric', size => [18,18] }, + + # Date and Time Types + 'date' => { data_type => 'date' }, + 'timestamp DEFAULT CURRENT_TIMESTAMP' + => { data_type => 'timestamp', default_value => \"CURRENT_TIMESTAMP" }, + 'time' => { data_type => 'time' }, + + # String Types + 'char' => { data_type => 'char', size => 1 }, + 'char(11)' => { data_type => 'char', size => 11 }, + 'varchar(20)' => { data_type => 'varchar', size => 20 }, + + # Blob types + 'blob' => { data_type => 'blob' }, + 'blob sub_type text' + => { data_type => 'blob sub_type text' }, + }, extra => { - count => 6, + count => 7, run => sub { $schema = shift; @@ -87,8 +141,16 @@ q{ my $guard = Scope::Guard->new(\&cleanup_extra); - $schema->_loader->{unquoted_ddl} = 0; - $schema->_loader->_setup; + delete $schema->_loader->{unquoted_ddl}; + + my $warning; + { + local $SIG{__WARN__} = sub { $warning = shift }; + $schema->_loader->_setup; + } + like $warning, qr/unquoted_ddl option/, + 'warning mentions unquoted_ddl option'; + { local $SIG{__WARN__} = sub {}; $schema->rescan;