All Schema objects now have an extra attribute. Added parsing support (and
[dbsrgits/SQL-Translator.git] / t / 16xml-parser.t
index bc2b7a5..a744296 100644 (file)
@@ -27,7 +27,7 @@ use constant DEBUG => (exists $opt{d} ? 1 : 0);
 #=============================================================================
 
 BEGIN {
-    maybe_plan(142, 'SQL::Translator::Parser::XML::SQLFairy');
+    maybe_plan(150, 'SQL::Translator::Parser::XML::SQLFairy');
 }
 
 my $testschema = "$Bin/data/xml/schema.xml";
@@ -57,6 +57,11 @@ schema_ok( $scma, {
     tables => [
         {
             name => "Basic",
+            extra => {
+                foo => "bar",
+                hello => "world",
+                bar => "baz",
+            },
             fields => [
                 {
                     name => "id",
@@ -66,6 +71,7 @@ schema_ok( $scma, {
                     size => 10,
                     is_primary_key => 1,
                     is_auto_increment => 1,
+                    extra => { ZEROFILL => 1 },
                 },
                 {
                     name => "title",
@@ -87,6 +93,11 @@ schema_ok( $scma, {
                     is_unique => 1,
                     default_value => undef,
                     is_nullable => 1,
+                    extra => {
+                        foo => "bar",
+                        hello => "world",
+                        bar => "baz",
+                    }
                 },
                 {
                     name => "explicitnulldef",
@@ -105,12 +116,18 @@ schema_ok( $scma, {
                     data_type => "varchar",
                     default_value => "",
                     is_nullable => 1,
+                    comments => "Hello emptytagdef",
                 },
             ],
             constraints => [
                 {
                     type => PRIMARY_KEY,
                     fields => ["id"],
+                    extra => {
+                        foo => "bar",
+                        hello => "world",
+                        bar => "baz",
+                    },
                 },
                 {
                     name => 'emailuniqueindex',
@@ -122,6 +139,11 @@ schema_ok( $scma, {
                 {
                     name => "titleindex",
                     fields => ["title"],
+                    extra => {
+                        foo => "bar",
+                        hello => "world",
+                        bar => "baz",
+                    },
                 },
             ],
         } # end table Basic
@@ -132,6 +154,11 @@ schema_ok( $scma, {
             name => 'email_list',
             sql => "SELECT email FROM Basic WHERE email IS NOT NULL",
             fields => ['email'],
+            extra => {
+                foo => "bar",
+                hello => "world",
+                bar => "baz",
+            },
         },
     ],
 
@@ -142,6 +169,11 @@ schema_ok( $scma, {
             database_event      => 'insert',
             on_table            => 'foo',
             action              => 'update modified=timestamp();',
+            extra => {
+                foo => "bar",
+                hello => "world",
+                bar => "baz",
+            },
         },
     ],
 
@@ -152,6 +184,11 @@ schema_ok( $scma, {
             parameters => ['foo', 'bar'],
             owner      => 'Nomar',
             comments   => 'Go Sox!',
+            extra => {
+                foo => "bar",
+                hello => "world",
+                bar => "baz",
+            },
         },
     ],