X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=p5sagit%2FConfig-Any.git;a=blobdiff_plain;f=t%2F55-yaml.t;h=b6d1f9e7102fb5eb09fe9aa81bfe3662f55b0d63;hp=049b79f68ec175111ee8b426bd19778e8834582e;hb=82410e22b11e82191fa54ba974cdaac68a8c5454;hpb=f0e3c2214342d0d8a8839009b8b9c7e6bfbc7ab2 diff --git a/t/55-yaml.t b/t/55-yaml.t index 049b79f..b6d1f9e 100644 --- a/t/55-yaml.t +++ b/t/55-yaml.t @@ -1,11 +1,38 @@ -use Test::More tests => 2; +use strict; +use warnings; +no warnings 'once'; +use Test::More; +use Config::Any; use Config::Any::YAML; -my $config = eval { Config::Any::YAML->load( 't/conf/conf.yml' ) }; +if ( !Config::Any::YAML->is_supported ) { + plan skip_all => 'YAML format not supported'; +} +else { + plan tests => 6; +} -SKIP: { - skip "Couldn't Load YAML plugin", 2 if $@; +{ + my $config = Config::Any::YAML->load( 't/conf/conf.yml' ); ok( $config ); is( $config->{ name }, 'TestApp' ); } + +# test invalid config +{ + my $file = 't/invalid/conf.yml'; + my $config = eval { Config::Any::YAML->load( $file ) }; + + ok( !$config, 'config load failed' ); + ok( $@, "error thrown ($@)" ); +} + +# parse error generated on invalid config +{ + my $file = 't/invalid/conf.yml'; + my $config = eval { Config::Any->load_files( { files => [$file], use_ext => 1} ) }; + + ok( !$config, 'config load failed' ); + ok( $@, "error thrown ($@)" ); +}