Update tests to use maybe_plan.
[dbsrgits/SQL-Translator.git] / t / 17sqlfxml-producer.t
index 29acb01..54ccf8a 100644 (file)
@@ -9,6 +9,7 @@ local $^W = 0;
 use strict;
 use Test::More;
 use Test::Exception;
+use Test::SQL::Translator qw(maybe_plan);
 
 use Data::Dumper;
 my %opt;
@@ -20,21 +21,22 @@ use FindBin qw/$Bin/;
 
 my $file = "$Bin/data/mysql/sqlfxml-producer-basic.sql";
 
+local $SIG{__WARN__} = sub {
+    CORE::warn(@_)
+        unless $_[0] =~ m#XML/Writer#;
+};
 
 # Testing 1,2,3,4...
 #=============================================================================
 
-eval { require XML::Writer; };
-if ($@ && $@ =~ m!locate XML::Writer.pm in!) {
-    plan skip_all => "You need XML::Writer to use XML::SQLFairy.";
+BEGIN {
+    maybe_plan(18,
+        'XML::Writer',
+        'Test::Differences',
+        'SQL::Translator::Producer::XML::SQLFairy');
 }
-eval { require Test::Differences; };
-if ($@ && $@ =~ m!locate Test/Differences.pm in!) {
-    plan skip_all => "You need Test::Differences for this test.";
-}
-use Test::Differences;
-plan tests => 18;
 
+use Test::Differences;
 use SQL::Translator;
 use SQL::Translator::Producer::XML::SQLFairy;
 
@@ -113,6 +115,7 @@ $ans = <<EOXML;
         <sqlt:type>PRIMARY KEY</sqlt:type>
         <sqlt:fields>id</sqlt:fields>
         <sqlt:reference_table></sqlt:reference_table>
+        <sqlt:reference_fields></sqlt:reference_fields>
         <sqlt:on_delete></sqlt:on_delete>
         <sqlt:on_update></sqlt:on_update>
         <sqlt:match_type></sqlt:match_type>
@@ -125,6 +128,7 @@ $ans = <<EOXML;
         <sqlt:type>UNIQUE</sqlt:type>
         <sqlt:fields>email</sqlt:fields>
         <sqlt:reference_table></sqlt:reference_table>
+        <sqlt:reference_fields></sqlt:reference_fields>
         <sqlt:on_delete></sqlt:on_delete>
         <sqlt:on_update></sqlt:on_update>
         <sqlt:match_type></sqlt:match_type>
@@ -294,8 +298,8 @@ $ans = <<EOXML;
       <sqlt:index name="titleindex" type="NORMAL" fields="title" options="" />
     </sqlt:indices>
     <sqlt:constraints>
-      <sqlt:constraint name="" type="PRIMARY KEY" fields="id" reference_table="" on_delete="" on_update="" match_type="" expression="" options="" deferrable="1" />
-      <sqlt:constraint name="" type="UNIQUE" fields="email" reference_table="" on_delete="" on_update="" match_type="" expression="" options="" deferrable="1" />
+      <sqlt:constraint name="" type="PRIMARY KEY" fields="id" reference_table="" reference_fields="" on_delete="" on_update="" match_type="" expression="" options="" deferrable="1" />
+      <sqlt:constraint name="" type="UNIQUE" fields="email" reference_table="" reference_fields="" on_delete="" on_update="" match_type="" expression="" options="" deferrable="1" />
     </sqlt:constraints>
   </sqlt:table>
 </sqlt:schema>