#=============================================================================
BEGIN {
- maybe_plan(204, 'SQL::Translator::Parser::XML::SQLFairy');
+ maybe_plan(212, 'SQL::Translator::Parser::XML::SQLFairy');
}
my $testschema = "$Bin/data/xml/schema.xml";
add_drop_table => 1,
);
die "Can't find test schema $testschema" unless -e $testschema;
- my $sql = $sqlt->translate(
+
+ my $sql;
+ {
+ my @w;
+ local $SIG{__WARN__} = sub { push @w, $_[0] if $_[0] =~ /The database_event tag is deprecated - please use database_events/ };
+
+ $sql = $sqlt->translate(
from => 'XML-SQLFairy',
to => 'MySQL',
filename => $testschema,
- ) or die $sqlt->error;
- print $sql if DEBUG;
+ ) or die $sqlt->error;
+ print $sql if DEBUG;
+
+ ok (@w, 'database_event deprecation warning issued');
+ }
# Test the schema objs generted from the XML
#
{
name => "email",
data_type => "varchar",
- size => 255,
+ size => 500,
is_unique => 1,
default_value => undef,
is_nullable => 1,
bar => "baz",
},
},
+ {
+ name => 'bar_trigger',
+ perform_action_when => 'before',
+ database_events => 'insert,update',
+ on_table => 'Basic',
+ action => 'update modified2=timestamp();',
+ extra => {
+ hello => "aliens",
+ },
+ },
],
procedures => [
{
my $obj;
$obj = SQL::Translator->new(
- show_warnings => 1,
+ show_warnings => 0,
from => "XML-SQLFairy",
filename => "$Bin/data/xml/schema.xml",
to => "TTSchema",
[%- END %]};
my $obj;
$obj = SQL::Translator->new(
- show_warnings => 1,
+ show_warnings => 0,
from => "XML-SQLFairy",
filename => "$Bin/data/xml/schema.xml",
to => "TTSchema",
email
data_type: varchar
- size: 255
+ size: 500
is_nullable: 1
default_value:
is_primary_key: 0
my $sqlt;
$sqlt = SQL::Translator->new(
no_comments => 1,
- show_warnings => 1,
+ show_warnings => 0,
add_drop_table => 1,
);
"id" serial NOT NULL,
"title" character varying(100) DEFAULT 'hello' NOT NULL,
"description" text DEFAULT '',
- "email" character varying(255),
+ "email" character varying(500),
"explicitnulldef" character varying,
"explicitemptystring" character varying DEFAULT '',
-- Hello emptytagdef
<field
name="description"
size="0" data_type="text" order="3" default_value="" />
- <field name="email" size="255" data_type="varchar" order="4">
+ <field name="email" size="500" data_type="varchar" order="4">
<extra foo="bar" hello="world" bar="baz" />
</field>
<field name="explicitnulldef" size="0" data_type="varchar" order="5" />
</views>
<triggers>
- <trigger name="foo_trigger" database_events="insert" on_table="Basic"
+ <trigger name="foo_trigger" database_event="insert" on_table="Basic"
perform_action_when="after" order="1">
<action>update modified=timestamp();</action>
<extra foo="bar" hello="world" bar="baz" />
</trigger>
+ <trigger name="bar_trigger" database_events="insert , update" on_table="Basic"
+ perform_action_when="before" order="1">
+ <action>update modified2=timestamp();</action>
+ <extra hello="aliens" />
+ </trigger>
</triggers>
<procedures>