make dump/populate work with mixed-case table names
[dbsrgits/DBIx-Class-Fixtures.git] / t / lib / DBICTest.pm
index 2e1ddc4..b2f9322 100755 (executable)
@@ -48,9 +48,11 @@ sub init_schema {
 
     my $db_file = "t/var/DBIxClass.db";
 
-    unlink($db_file) if -e $db_file;
-    unlink($db_file . "-journal") if -e $db_file . "-journal";
     mkdir("t/var") unless -d "t/var";
+    if ( !$args{no_deploy} ) {
+      unlink($db_file) if -e $db_file;
+      unlink($db_file . "-journal") if -e $db_file . "-journal";
+    }
 
     my $dsn = $args{"dsn"} || "dbi:SQLite:${db_file}";
     my $dbuser = $args{"user"} || '';
@@ -94,8 +96,7 @@ sub deploy_schema {
     my $self = shift;
     my $schema = shift;
 
-
-    my $file = $self->get_ddl_file($schema);
+    my $file = shift || $self->get_ddl_file($schema);
     open IN, $file;
     my $sql;
     { local $/ = undef; $sql = <IN>; }
@@ -138,6 +139,7 @@ sub populate_schema {
         [ 1, 'Caterwauler McCrae' ],
         [ 2, 'Random Boy Band' ],
         [ 3, 'We Are Goth' ],
+        [ 4, '' ] # Test overridden new will default name to "Test Name" using use_create => 1.
     ]);
 
     $schema->populate('CD', [
@@ -175,6 +177,9 @@ sub populate_schema {
         [ 1, 1 ],
         [ 1, 2 ],
         [ 1, 3 ],
+        [ 2, 1 ],
+        [ 2, 2 ],
+        [ 3, 3 ],
     ]);
 
     $schema->populate('Track', [
@@ -195,6 +200,11 @@ sub populate_schema {
         [ 17, 1, 2, "Apiary"],
         [ 18, 1, 3, "Beehind You"],
     ]);
+
+       $schema->populate('MixedCase', [
+               [qw/ id name /],
+               [ 1, 'some name' ]
+       ]);
 }
 
 1;