4 # Before `make install' is performed this script should be runnable with
5 # `make test'. After `make install' it should work as `perl test.pl'
7 # SQL::Translator::Filter::HelloWorld - Test filter in a package
8 #=============================================================================
9 package SQL::Translator::Filter::HelloWorld;
12 use vars qw/$VERSION/;
16 my ($schema,$args) = (shift,shift);
18 my $greeting = $args->{greeting} || "Hello";
24 # Hack to allow sqlt to see our module as it wasn't loaded from a .pm
25 $INC{'SQL/Translator/Filter/HelloWorld.pm'}
26 = 'lib/SQL/Translator/Filter/HelloWorld.pm';
28 #=============================================================================
35 use Test::SQL::Translator qw(maybe_plan);
40 maybe_plan(4, 'YAML', 'Test::Differences')
42 use Test::Differences;
94 parser_type: SQL::Translator::Parser::YAML
96 producer_type: SQL::Translator::Producer::YAML
102 # Parse the test XML schema
104 $obj = SQL::Translator->new(
111 # Filter from SQL::Translator::Filter::*
118 ) or die "Failed to create translator object: ".SQL::Translator->error;
121 # my ($sqlt,$ans_yaml,$name) = @_;
124 # my $out = eval { $sqlt->translate };
125 # fail( $sqlt->error ) if $sqlt->error;
126 # fail( "No output" ) unless $out;
127 # eq_or_diff $out, $ans_yaml ,"Translated $name";
131 lives_ok { $out = $obj->translate; } "Translate ran";
132 is $obj->error, '' ,"No errors";
133 ok $out ne "" ,"Produced something!";
134 eq_or_diff $out, $ans_yaml ,"Output looks right";