Attempt to fix 'Attempt to free unreferenced scalar' on 5.8
[dbsrgits/DBIx-Class-Schema-Loader.git] / t / 60dbicdump_config.t
CommitLineData
406a97c2 1use DBIx::Class::Schema::Loader::Optional::Dependencies
2 -skip_all_without => 'test_dbicdump_config';
0322c5b3 3
4use strict;
5use warnings;
6
7use Test::More;
8use File::Path qw/make_path rmtree/;
0322c5b3 9use DBIx::Class::Schema::Loader::Utils 'slurp_file';
112415f1 10use Try::Tiny;
0322c5b3 11use lib 't/lib';
12use make_dbictest_db ();
13use dbixcsl_test_dir '$tdir';
14
0322c5b3 15plan tests => 2;
16
17my $config_dir = "$tdir/dbicdump_config";
18make_path $config_dir;
19my $config_file = "$config_dir/my.conf";
20
21my $dump_path = "$tdir/dbicdump_config_dump";
22
23open my $fh, '>', $config_file
24 or die "Could not write to $config_file: $!";
25
26print $fh <<"EOF";
27schema_class DBICTest::Schema
28
112415f1 29lib t/lib
30
0322c5b3 31<connect_info>
32 dsn $make_dbictest_db::dsn
33</connect_info>
34
35<loader_options>
112415f1 36 dump_directory $dump_path
37 components InflateColumn::DateTime
38 schema_base_class TestSchemaBaseClass
39 quiet 1
0322c5b3 40</loader_options>
41EOF
42
43close $fh;
44
45system $^X, 'script/dbicdump', $config_file;
46
47is $? >> 8, 0,
48 'dbicdump executed successfully';
49
112415f1 50my $foo = try { slurp_file "$dump_path/DBICTest/Schema/Result/Foo.pm" } || '';
0322c5b3 51
52like $foo, qr/InflateColumn::DateTime/,
53 'loader options read correctly from config_file';
54
55done_testing;
56
57END {
58 rmtree($config_dir, 1, 1);
59 rmtree($dump_path, 1, 1);
60}