X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F44-xml-to-db2-array.t;h=6a872ca12f283bce448be6b55a6506c8c2478b6f;hb=HEAD;hp=d254af9522aae49390518365a66daafdac9c461a;hpb=08d91aada45b94a16f3660b5cc10384df5616ff9;p=dbsrgits%2FSQL-Translator.git diff --git a/t/44-xml-to-db2-array.t b/t/44-xml-to-db2-array.t index d254af9..6a872ca 100644 --- a/t/44-xml-to-db2-array.t +++ b/t/44-xml-to-db2-array.t @@ -20,7 +20,7 @@ my $xmlfile = "$Bin/data/xml/schema.xml"; my $sqlt; $sqlt = SQL::Translator->new( no_comments => 1, - show_warnings => 1, + show_warnings => 0, add_drop_table => 1, ); @@ -34,24 +34,38 @@ my @sql = $sqlt->translate( my $want = [ 'DROP TABLE Basic;', q|CREATE TABLE Basic ( -id INTEGER GENERATED BY DEFAULT AS IDENTITY NOT NULL, -title VARCHAR(100) NOT NULL DEFAULT 'hello', -description VARCHAR(0) DEFAULT '', -email VARCHAR(255), -explicitnulldef VARCHAR(0), -explicitemptystring VARCHAR(0) DEFAULT '', -emptytagdef VARCHAR(0) DEFAULT '', -timest TIMESTAMP, -CONSTRAINT emailuniqueindex UNIQUE (email) , - PRIMARY KEY(id) + id INTEGER GENERATED BY DEFAULT AS IDENTITY (START WITH 1, INCREMENT BY 1) NOT NULL, + title VARCHAR(100) NOT NULL DEFAULT 'hello', + description VARCHAR(0) DEFAULT '', + email VARCHAR(500), + explicitnulldef VARCHAR(0), + explicitemptystring VARCHAR(0) DEFAULT '', + emptytagdef VARCHAR(0) DEFAULT '', + another_id INTEGER DEFAULT 2, + timest TIMESTAMP, + PRIMARY KEY (id), + CONSTRAINT emailuniqueindex UNIQUE (email), + CONSTRAINT very_long_index_name_on_title_field_which_should_be_truncated_for_various_rdbms UNIQUE (title) );|, +'DROP TABLE Another;', + +q|CREATE TABLE Another ( + id INTEGER GENERATED BY DEFAULT AS IDENTITY (START WITH 1, INCREMENT BY 1) NOT NULL, + num NUMERIC(10,2), + PRIMARY KEY (id) +);|, + +'ALTER TABLE Basic ADD FOREIGN KEY (another_id) REFERENCES Another(id);', + 'CREATE INDEX titleindex ON Basic ( title );', 'CREATE VIEW email_list AS -SELECT email FROM Basic WHERE email IS NOT NULL;', +SELECT email FROM Basic WHERE (email IS NOT NULL);', + +'CREATE TRIGGER foo_trigger after insert ON Basic REFERENCING OLD AS oldrow NEW AS newrow FOR EACH ROW MODE DB2SQL update modified=timestamp();', -'CREATE TRIGGER foo_trigger after insert ON Basic REFERENCING OLD AS oldrow NEW AS newrow FOR EACH ROW MODE DB2SQL update modified=timestamp();' +'CREATE TRIGGER bar_trigger before insert, update ON Basic REFERENCING OLD AS oldrow NEW AS newrow FOR EACH ROW MODE DB2SQL update modified2=timestamp();', ]; is_deeply(\@sql, $want, 'Got correct DB2 statements in list context');