Improve trigger 'scope' attribute support (RT#119997)
[dbsrgits/SQL-Translator.git] / t / 03mysql-to-oracle.t
index 53f7e9d..5b64c59 100644 (file)
@@ -1,23 +1,41 @@
 #!/usr/local/bin/perl
 # vim: set ft=perl:
 
-BEGIN { print "1..1\n" }
+use strict;
+use Test::More;
+use SQL::Translator;
+use Test::SQL::Translator qw(maybe_plan);
 
 my $create = q|
 CREATE TABLE random (
     id int auto_increment PRIMARY KEY,
     foo varchar(255) not null default '',
+    bar enum('wibble','wo''bble'),
     updated timestamp
 );
+CREATE UNIQUE INDEX random_foo_update ON random(foo,updated);
+CREATE INDEX random_foo ON random(foo);
+
 |;
 
-use SQL::Translator;
-use Data::Dumper;
+BEGIN {
+    maybe_plan(undef,
+        'SQL::Translator::Parser::MySQL',
+        'SQL::Translator::Producer::Oracle');
+}
+
+my $tr       = SQL::Translator->new(
+    parser   => "MySQL",
+    producer => "Oracle",
+    quote_table_names => 0,
+    quote_field_names => 0,
+);
+
+my $output = $tr->translate(\$create);
 
-my $tr = SQL::Translator->new(parser   => "MySQL",
-                              producer => "Oracle"
-                              #producer => "SQL::Translator::Producer::Oracle::translate"
-                              #producer => sub { Dumper($_[1]) }
-                             );
+ok( $output, 'Translate MySQL to Oracle' );
+ok( $output =~ /CREATE INDEX random_foo /, 'Normal index definition translated.');
+ok( $output =~ /CREATE UNIQUE INDEX random_foo_update /, 'Unique index definition translated.');
+ok( $output =~ /\QCHECK (bar IN ('wibble', 'wo''bble'))\E/, 'Enum translated and escaped.');
 
-print $tr->translate(\$create);
+done_testing;