X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F51-xml-to-oracle_quoted.t;h=6f3a10217bdad9350c8e5fa04ac1f94babd80145;hb=5502f49068d11d554bcbd8cce8d531f4ee10d74a;hp=73627eccff7d2e98b4479ecc4b186f092f0670b3;hpb=7de0715cd3c9d0e5fde79c84859f5334575accfa;p=dbsrgits%2FSQL-Translator.git diff --git a/t/51-xml-to-oracle_quoted.t b/t/51-xml-to-oracle_quoted.t index 73627ec..6f3a102 100644 --- a/t/51-xml-to-oracle_quoted.t +++ b/t/51-xml-to-oracle_quoted.t @@ -5,6 +5,7 @@ use FindBin qw/$Bin/; use Test::More; use Test::SQL::Translator; use Test::Exception; +use Test::Differences; use Data::Dumper; use SQL::Translator; use SQL::Translator::Schema::Constants; @@ -39,22 +40,23 @@ my $sql_string = $sqlt->translate( filename => $xmlfile, ) or die $sqlt->error; -my $want = [ +my $want = [ 'DROP TABLE "Basic" CASCADE CONSTRAINTS', 'DROP SEQUENCE "sq_Basic_id"', 'CREATE SEQUENCE "sq_Basic_id"', 'CREATE TABLE "Basic" ( "id" number(10) NOT NULL, "title" varchar2(100) DEFAULT \'hello\' NOT NULL, - "description" varchar2 DEFAULT \'\', + "description" clob DEFAULT \'\', "email" varchar2(500), - "explicitnulldef" varchar2, - "explicitemptystring" varchar2 DEFAULT \'\', - "emptytagdef" varchar2 DEFAULT \'\', + "explicitnulldef" varchar2(4000), + "explicitemptystring" varchar2(4000) DEFAULT \'\', + "emptytagdef" varchar2(4000) DEFAULT \'\', "another_id" number(10) DEFAULT \'2\', "timest" date, PRIMARY KEY ("id"), - CONSTRAINT "Basic_emailuniqueindex" UNIQUE ("email") + CONSTRAINT "u_Basic_emailuniqueindex" UNIQUE ("email"), + CONSTRAINT "u_Basic_very_long_index_name_o" UNIQUE ("title") )', 'DROP TABLE "Another" CASCADE CONSTRAINTS', 'DROP SEQUENCE "sq_Another_id"', @@ -82,7 +84,7 @@ END; 'CREATE OR REPLACE TRIGGER "ts_Basic_timest" BEFORE INSERT OR UPDATE ON "Basic" FOR EACH ROW WHEN (new."timest" IS NULL) -BEGIN +BEGIN SELECT sysdate INTO :new."timest" FROM dual; END; ', @@ -101,7 +103,7 @@ END; is_deeply(\@sql, $want, 'Got correct Oracle statements in list context'); -is($sql_string, q|DROP TABLE "Basic" CASCADE CONSTRAINTS; +eq_or_diff($sql_string, q|DROP TABLE "Basic" CASCADE CONSTRAINTS; DROP SEQUENCE "sq_Basic_id01"; @@ -110,15 +112,16 @@ CREATE SEQUENCE "sq_Basic_id01"; CREATE TABLE "Basic" ( "id" number(10) NOT NULL, "title" varchar2(100) DEFAULT 'hello' NOT NULL, - "description" varchar2 DEFAULT '', + "description" clob DEFAULT '', "email" varchar2(500), - "explicitnulldef" varchar2, - "explicitemptystring" varchar2 DEFAULT '', - "emptytagdef" varchar2 DEFAULT '', + "explicitnulldef" varchar2(4000), + "explicitemptystring" varchar2(4000) DEFAULT '', + "emptytagdef" varchar2(4000) DEFAULT '', "another_id" number(10) DEFAULT '2', "timest" date, PRIMARY KEY ("id"), - CONSTRAINT "Basic_emailuniqueindex" UNIQUE ("email") + CONSTRAINT "u_Basic_emailuniqueindex01" UNIQUE ("email"), + CONSTRAINT "u_Basic_very_long_index_name01" UNIQUE ("title") ); DROP TABLE "Another" CASCADE CONSTRAINTS; @@ -157,7 +160,7 @@ END; CREATE OR REPLACE TRIGGER "ts_Basic_timest01" BEFORE INSERT OR UPDATE ON "Basic" FOR EACH ROW WHEN (new."timest" IS NULL) -BEGIN +BEGIN SELECT sysdate INTO :new."timest" FROM dual; END; /