update changes file
[p5sagit/Config-Any.git] / t / 10-branches.t
CommitLineData
5a2e0210 1use strict;
2use warnings;
3
bef9e9a5 4use Test::More tests => 10;
f0e3c221 5
bef9e9a5 6use_ok( 'Config::Any' );
f0e3c221 7
8{
9 my @warnings;
92a04e78 10 local $SIG{ __WARN__ } = sub { push @warnings, @_ };
4efab558 11
72628dc7 12 Config::Any->load_files();
4efab558 13 like(
14 shift @warnings,
15 qr/^No files specified!/,
16 "load_files expects args"
17 );
18
92a04e78 19 Config::Any->load_files( {} );
20 like(
21 shift @warnings,
4efab558 22 qr/^No files specified!/,
92a04e78 23 "load_files expects files"
24 );
4efab558 25
72628dc7 26 Config::Any->load_stems();
bef9e9a5 27 like(
28 shift @warnings,
29 qr/^No stems specified!/,
30 "load_stems expects args"
31 );
32
92a04e78 33 Config::Any->load_stems( {} );
34 like(
35 shift @warnings,
bef9e9a5 36 qr/^No stems specified!/,
92a04e78 37 "load_stems expects stems"
38 );
f0e3c221 39}
40
dcfb1d1d 41# grep out files we don't understand for these tests
42my @files = grep { !m{\.(foo|unsupported)$} } glob( "t/conf/conf.*" );
f0e3c221 43my $filter = sub { return };
92a04e78 44ok( Config::Any->load_files( { files => \@files, use_ext => 0 } ),
45 "use_ext 0 works" );
46ok( Config::Any->load_files( { files => \@files, use_ext => 1 } ),
47 "use_ext 1 works" );
f0e3c221 48
92a04e78 49ok( Config::Any->load_files(
50 { files => \@files, use_ext => 1, filter => \&$filter }
51 ),
52 "filter works"
53);
54eval {
55 Config::Any->load_files(
56 { files => \@files,
57 use_ext => 1,
58 filter => sub { die }
59 }
60 );
61};
62ok( $@, "filter breaks" );
f0e3c221 63
64my @stems = qw(t/conf/conf);
92a04e78 65ok( Config::Any->load_stems( { stems => \@stems, use_ext => 1 } ),
66 "load_stems with stems works" );