7 use Test::More tests => 10;
\r
8 use Scalar::Util qw(blessed reftype);
\r
11 use Config::Any::INI;
\r
13 our $cfg_file = 't/conf/conf.foo';
\r
15 eval { Config::Any::INI->load($cfg_file); };
\r
17 skip "File loading backend for INI not found", 9 if $@;
\r
19 ok( my $c_arr = Config::Any->load_files({
\r
20 files => [ $cfg_file ],
\r
21 force_plugins => [qw(Config::Any::INI)]
\r
22 }), "load file with parser forced" );
\r
24 ok(my $c = $c_arr->[0], "load_files returns an arrayref");
\r
26 ok(ref $c, "load_files arrayref contains a ref");
\r
27 my $ref = blessed $c ? reftype $c : ref $c;
\r
28 is(substr($ref,0,4), "HASH", "hashref");
\r
30 my ($name, $cfg) = each %$c;
\r
31 is($name, $cfg_file, "filename matches");
\r
33 my $cfgref = blessed $cfg ? reftype $cfg : ref $cfg;
\r
34 is(substr($cfgref,0,4), "HASH", "hashref cfg");
\r
36 is( $cfg->{name}, 'TestApp', "appname parses" );
\r
37 is( $cfg->{Component}{ "Controller::Foo" }->{ foo }, 'bar',
\r
38 "component->cntrlr->foo = bar" );
\r
39 is( $cfg->{Model}{ "Model::Baz" }->{ qux }, 'xyzzy',
\r
40 "model->model::baz->qux = xyzzy" );
\r
43 ok( my $c_arr_2 = Config::Any->load_files({
\r
44 files => [ $cfg_file ],
\r
45 force_plugins => [qw(Config::Any::INI)],
\r
47 }), "load file with parser forced" );
\r