Commit | Line | Data |
9eb914a2 |
1 | use strictures 1; |
2 | use Test::More; |
3 | use FindBin; |
4 | |
5 | use System::Introspector::Config; |
6 | |
7 | my $config = System::Introspector::Config->new( |
8 | config_file => "$FindBin::Bin/data/test.conf", |
9 | ); |
10 | |
11 | is $config->sudo_user, 'root', 'sudo user'; |
12 | is_deeply [$config->groups], [qw( stable unstable )], 'groups'; |
13 | ok $config->has_group('stable'), 'has group'; |
14 | ok !$config->has_group('none'), 'does not have group'; |
15 | is_deeply [$config->hosts], [qw( foo bar baz qux quux quuux )], 'hosts'; |
16 | is $config->user, 'introspect', 'user'; |
17 | |
18 | is_deeply $config->config_for_group('stable'), { |
19 | introspect => { |
20 | Foo => {}, |
21 | Bar => { sudo => 1 }, |
22 | }, |
23 | }, 'multiple elements with one sudo'; |
24 | |
25 | is_deeply $config->config_for_group('unstable'), { |
26 | introspect => { |
27 | Qux => { sudo => 1 }, |
28 | }, |
29 | }, 'single element with group-wide sudo'; |
30 | |
31 | done_testing; |