Fix MySQL skip counts
[dbsrgits/DBIx-Class-Schema-Loader.git] / t / 23dumpmore.t
index babe3f0..dd52596 100644 (file)
@@ -387,6 +387,7 @@ $t->dump_test(
     constraint => [ [ qr/my_schema/ => qr/foo|bar/ ] ],
     exclude => [ [ qr/my_schema/ => qr/bar/ ] ],
   },
+  generated_results => [qw(MySchema::Floop)],
   warnings => [
     qr/^db_schema is not supported on SQLite/,
   ],
@@ -576,6 +577,7 @@ $t->dump_test(
     options => {
         use_namespaces => 1,
     },
+    generated_results => [qw(Foo Bar)],
     regexes => {
         'Result/Foo' => [
             qr/sub custom_method { 'custom_method works' }\n0;\n\n# You can replace.*\n1;\n\z/,
@@ -583,5 +585,60 @@ $t->dump_test(
     },
 );
 
+# test dry-run mode
+$t->dump_test(
+    classname => 'DBICTest::DumpMore::DryRun',
+    options => {
+        dry_run => 1,
+    },
+    generated_results => [qw(Foo Bar)],
+);
+
+my $schema_file = $t->class_file('DBICTest::DumpMore::DryRun');
+ok( !-e $schema_file, "dry-run doesn't create file for schema class" );
+(my $schema_dir = $schema_file) =~ s/\.pm\z//;
+ok( !-e $schema_dir, "dry-run doesn't create subdirectory for schema namespace" );
+
+# test omit_version (RT#92300)
+$t->dump_test(
+    classname => 'DBICTest::DumpMore::omit_version',
+    options => {
+       omit_version => 1,
+    },
+    regexes => {
+       Foo => [
+           qr/^\# Created by DBIx::Class::Schema::Loader @ \d\d\d\d-\d\d-\d\d \d\d:\d\d:\d\d$/m,
+       ],
+    },
+);
+
+# test omit_timestamp (RT#92300)
+$t->dump_test(
+    classname => 'DBICTest::DumpMore::omit_timestamp',
+    options => {
+       omit_timestamp => 1,
+    },
+    regexes => {
+       Foo => [
+           qr/^\# Created by DBIx::Class::Schema::Loader v[\d.]+$/m,
+       ],
+    },
+);
+
+# test omit_version and omit_timestamp simultaneously (RT#92300)
+$t->dump_test(
+    classname => 'DBICTest::DumpMore::omit_both',
+    options => {
+       omit_version => 1,
+       omit_timestamp => 1,
+    },
+    # A positive regex here would match the top comment
+    neg_regexes => {
+       Foo => [
+           qr/^\# Created by DBIx::Class::Schema::Loader.+$/m,
+       ],
+    },
+);
+
 done_testing;
 # vim:et sts=4 sw=4 tw=0: