use strict;
use warnings;
use Test::More 'no_plan';
my $Class = 'Config::Auto';
use_ok( $Class );
my @Formats = $Class->formats;
ok( scalar(@Formats), "Retrieved available formats" );
### try to create some objects using all formats
{ ok( 1, "Building object for every format" );
for my $format (@Formats) {
my $obj = $Class->new( source => $0, format => $format );
ok( $obj, " Built object from '$format'" );
isa_ok( $obj, $Class, " Object" );
is( $obj->format, $format,
" Format as expected" );
}
}
### grab one format, do all the accessor and sanity checks on it
{ ok( 1, "Testing data retrieval methods" );
my $obj = $Class->new( source => $0 );
ok( $obj, " Object created" );
isa_ok( $obj, $Class, " Object" );
isa_ok( $obj->data, 'ARRAY'," Data retrieved" );
ok( -e $obj->file, " Filename found" );
ok( ref( $obj->fh ), " Filehandle found" );
ok( $obj->as_string, " Contents retrieved" );
my $href = $obj->score;
ok( $href, " Score computed" );
isa_ok( $href, 'HASH', " Return value" );
ok( scalar(keys(%$href)), " Scores found" );
}