X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=p5sagit%2FConfig-Any.git;a=blobdiff_plain;f=t%2F50-general.t;h=5361ca27104ee43f3062170dbf0c7c35a610b6d1;hp=ec0dc533e91ff6af2530d0776304439edd1c2e5d;hb=1afb249c67eda203b13fef661fd046bff0ee26cc;hpb=5a2e0210fe5c7da046be37b4240008f2b667be67 diff --git a/t/50-general.t b/t/50-general.t index ec0dc53..5361ca2 100644 --- a/t/50-general.t +++ b/t/50-general.t @@ -2,13 +2,14 @@ use strict; use warnings; use Test::More; +use Config::Any; use Config::Any::General; if ( !Config::Any::General->is_supported ) { plan skip_all => 'Config::General format not supported'; } else { - plan tests => 4; + plan tests => 9; } { @@ -23,3 +24,27 @@ else { { -LowerCaseNames => 1 } ); ok( exists $config->{ component } ); } + +{ + my $config + = Config::Any::General->load( 't/conf/single_element_arrayref.conf' ); + is_deeply $config->{ foo }, [ 'bar' ], 'single element arrayref'; +} + +# test invalid config +{ + my $file = 't/invalid/conf.conf'; + my $config = eval { Config::Any::General->load( $file ) }; + + ok( !$config, 'config load failed' ); + ok( $@, "error thrown ($@)" ); +} + +# parse error generated on invalid config +{ + my $file = 't/invalid/conf.conf'; + my $config = eval { Config::Any->load_files( { files => [$file], use_ext => 1} ) }; + + ok( !$config, 'config load failed' ); + ok( $@, "error thrown ($@)" ); +}