X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F46xml-to-pg.t;h=dcdb01f0594f93c06483ea10e24df75689e4d77b;hb=ad2587769ab392b8916e17bf9b3afb3e2efdfe99;hp=0104bfea9b02f600596a361c409ec290ded2f9b2;hpb=8c4efd11b1888e7b99cdc302dbc66ace5037453d;p=dbsrgits%2FSQL-Translator.git diff --git a/t/46xml-to-pg.t b/t/46xml-to-pg.t index 0104bfe..dcdb01f 100644 --- a/t/46xml-to-pg.t +++ b/t/46xml-to-pg.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; @@ -20,7 +21,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, ); @@ -32,19 +33,36 @@ my $sql = $sqlt->translate( filename => $xmlfile, ) or die $sqlt->error; -is($sql, << "SQL"); -DROP TABLE "Basic"; +eq_or_diff($sql, << "SQL"); +DROP TABLE "Basic" CASCADE; CREATE TABLE "Basic" ( "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 "emptytagdef" character varying DEFAULT '', + "another_id" integer DEFAULT '2', + "timest" timestamp, PRIMARY KEY ("id"), - Constraint "emailuniqueindex" UNIQUE ("email") + CONSTRAINT "emailuniqueindex" UNIQUE ("email") ); CREATE INDEX "titleindex" on "Basic" ("title"); + +DROP TABLE "Another" CASCADE; +CREATE TABLE "Another" ( + "id" serial NOT NULL, + PRIMARY KEY ("id") +); + +DROP VIEW "email_list"; +CREATE VIEW "email_list" ( "email" ) AS + SELECT email FROM Basic WHERE (email IS NOT NULL) +; + +ALTER TABLE "Basic" ADD FOREIGN KEY ("another_id") + REFERENCES "Another" ("id") DEFERRABLE; + SQL