1use Config::Std { read_config => 'get_config' };
2use Test::More 'no_plan';
3
4my $input_file = 'test.cfg';
5
6my %data = (
7    # Default section...
8    '' => {
9        'def1'     => 'def val 1',
10        'def 2'    => 'def val 2',
11        'def 3 ml' => "def val 3\nacross several\n   lines",
12    },
13
14    # Named section...
15    'Named' => {
16        'hi there' => q{What's your name???},
17        'list'     => [qw(a list of values), 'all different'],
18    },
19
20    # Complex named section...
21    'Complex named!!!' => {
22        123456789 => 'zero',
23        '%^$%$#%' => 'curses',
24    },
25);
26
27my %config;
28
29ok eval{ get_config $input_file => %config }    => 'Read succeeded';
30diag( $@ ) if $@;
31
32is_deeply \%data, \%config                       => 'Data correct';
33