X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F60roundtrip.t;h=e8182d5ea77bddd801bf16dd596cb9f9918392a1;hb=703171c1ddcc709d273395d6796f9fcb40671a02;hp=d51e7704b9270454fdddf10b2d6e9e9b71ff627e;hpb=87615710721c29b00d25898ba7b66429936ce6f4;p=dbsrgits%2FSQL-Translator-2.0-ish.git diff --git a/t/60roundtrip.t b/t/60roundtrip.t index d51e770..e8182d5 100644 --- a/t/60roundtrip.t +++ b/t/60roundtrip.t @@ -28,18 +28,18 @@ my $plan = [ producer_args => {}, parser_args => {}, }, -# { -# engine => 'MySQL', -# name => 'MySQL 5.0', -# producer_args => { mysql_version => 5 }, -# parser_args => { mysql_parser_version => 5 }, -# }, -# { -# engine => 'MySQL', -# name => 'MySQL 5.1', -# producer_args => { mysql_version => '5.1' }, -# parser_args => { mysql_parser_version => '5.1' }, -# }, + { + engine => 'MySQL', + name => 'MySQL 5.0', + producer_args => { mysql_version => 5 }, + parser_args => { mysql_parser_version => 5 }, + }, + { + engine => 'MySQL', + name => 'MySQL 5.1', + producer_args => { mysql_version => '5.1' }, + parser_args => { mysql_parser_version => '5.1' }, + }, { engine => 'PostgreSQL', producer_args => {}, @@ -85,12 +85,12 @@ my $base_file = "$Bin/data/roundtrip_autogen.yaml"; open (my $base_fh, '<', $base_file) or die "$base_file: $!"; my $base_t = SQL::Translator->new; -$base_t->$_ (1) for qw/add_drop_table no_comments/; +$base_t->$_(1) for qw/add_drop_table no_comments/; my $base_schema = $base_t->translate( parser => 'YAML', data => do { local $/; <$base_fh>; }, -) or die $base_t->error; +) or die $!; #assume there is at least one table my $string_re = { @@ -120,7 +120,7 @@ for my $args (@$plan) { local $TODO = $args->{todo} if $args->{todo}; lives_ok ( - sub { check_roundtrip ($args, $base_t, $base_schema) }, + sub { check_roundtrip ($args, $base_t) }, "Round trip for $args->{name} did not throw an exception", ); } @@ -129,14 +129,14 @@ for my $args (@$plan) { done_testing; sub check_roundtrip { - my ($args, $base_t, $base_schema) = @_; + my ($args, $base_t) = @_; # create some output from the submitted schema my $base_out = $base_t->translate( - data => $base_schema, + data => $base_t->schema, producer => $args->{engine}, -# producer_args => $args->{producer_args}, + producer_args => $args->{producer_args} || {}, ); like ( @@ -144,7 +144,7 @@ sub check_roundtrip { $string_re->{$args->{engine}} || $string_re->{SQL}, "Received some meaningful output from the first $args->{name} production", ) or do { - diag ( _gen_diag ($base_t->error) ); + diag ( _gen_diag ($@) ); return; }; @@ -154,12 +154,12 @@ sub check_roundtrip { my $mid_schema = $parser_t->translate ( data => $base_out, parser => $args->{engine}, -# parser_args => $args->{parser_args}, + parser_args => $args->{parser_args} || {}, ); isa_ok ($mid_schema, 'SQL::Translator::Object::Schema', "First $args->{name} parser pass produced a schema:") or do { - diag (_gen_diag ( $parser_t->error, $base_out ) ); + diag (_gen_diag ( $@, $base_out ) ); return; }; @@ -183,10 +183,10 @@ sub check_roundtrip { # producer_args => $args->{producer_args}, # ); - my $rt_out = $parser_t->translate ( + my $rt_out = $parser_t->translate( data => $mid_schema, producer => $args->{engine}, -# producer_args => $args->{producer_args}, + producer_args => $args->{producer_args} || {}, ); like ( @@ -194,7 +194,7 @@ sub check_roundtrip { $string_re->{$args->{engine}} || $string_re->{SQL}, "Received some meaningful output from the second $args->{name} production", ) or do { - diag ( _gen_diag ( $parser_t->error ) ); + diag ( _gen_diag ( $@ ) ); return; };