X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=p5sagit%2FConfig-Any.git;a=blobdiff_plain;f=t%2F53-perl.t;h=4e59ae7e5791fe0764d5b7cadd7c2b18fa669ba3;hp=1a749a1dd346e9b6d60bdf917cb8aeffbd30c126;hb=HEAD;hpb=67a1cd509bfc3f77a4fcaf42710de01597987bb0 diff --git a/t/53-perl.t b/t/53-perl.t index 1a749a1..4e59ae7 100644 --- a/t/53-perl.t +++ b/t/53-perl.t @@ -1,7 +1,7 @@ use strict; use warnings; -use Test::More tests => 7; +use Test::More tests => 12; use Config::Any; use Config::Any::Perl; @@ -19,17 +19,42 @@ use Config::Any::Perl; # test invalid config { my $file = 't/invalid/conf.pl'; - my $config = eval { Config::Any::Perl->load( $file ) }; - - ok( !$config, 'config load failed' ); - ok( $@, "error thrown ($@)" ); + my $config; + my $loaded = eval { + $config = Config::Any::Perl->load( $file ); + 1; + }; + + ok !$loaded, 'config load failed'; + is $config, undef, 'config load failed'; + like $@, qr/syntax error/, 'error thrown'; } # parse error generated on invalid config { my $file = 't/invalid/conf.pl'; - my $config = eval { Config::Any->load_files( { files => [$file], use_ext => 1} ) }; + my $config; + my $loaded = eval { + $config = Config::Any::Perl->load( $file ); + Config::Any->load_files( { files => [$file], use_ext => 1} ); + 1; + }; + + ok !$loaded, 'config load failed'; + is $config, undef, 'config load failed'; + like $@, qr/syntax error/, 'error thrown'; +} - ok( !$config, 'config load failed' ); - ok( $@, "error thrown ($@)" ); +# test missing config +{ + my $file = 't/invalid/missing.pl'; + my $config; + my $loaded = eval { + $config = Config::Any::Perl->load( $file ); + 1; + }; + + ok !$loaded, 'config load failed'; + is $config, undef, 'config load failed'; + isnt $@, '', 'error thrown'; }