[305] | 1 | use strict; |
---|
| 2 | use warnings; |
---|
| 3 | use Test::More tests => 16; |
---|
| 4 | use File::Temp; |
---|
| 5 | |
---|
| 6 | use_ok('LATMOS::Accounts::Bases'); |
---|
| 7 | use_ok('LATMOS::Accounts::Bases::Objects'); |
---|
| 8 | use_ok('LATMOS::Accounts::Bases::Mail'); |
---|
| 9 | use_ok('LATMOS::Accounts::Bases::Mail::Aliases'); |
---|
| 10 | use_ok('LATMOS::Accounts::Bases::Mail::Revaliases'); |
---|
| 11 | |
---|
| 12 | my $dir = File::Temp::tempdir; |
---|
| 13 | |
---|
| 14 | foreach (qw(aliases revaliases)) { |
---|
| 15 | system('cp', "testdata/$_", "$dir/$_"); |
---|
| 16 | } |
---|
| 17 | |
---|
| 18 | ok(my $mailb = LATMOS::Accounts::Bases->new( |
---|
| 19 | 'mail', |
---|
[1071] | 20 | { |
---|
| 21 | params => { |
---|
| 22 | aliases => "$dir/aliases", |
---|
| 23 | revaliases => "$dir/revaliases", |
---|
| 24 | }} |
---|
[305] | 25 | ), "Can get mail base"); |
---|
| 26 | |
---|
| 27 | isa_ok($mailb, 'LATMOS::Accounts::Bases'); |
---|
| 28 | isa_ok($mailb, 'LATMOS::Accounts::Bases::Mail'); |
---|
| 29 | ok($mailb->load, "Can load mail base"); |
---|
| 30 | |
---|
[861] | 31 | is( $mailb->attribute('aliases', 'forward')->iname, "forward", "can call get_field_name"); |
---|
[305] | 32 | |
---|
[1358] | 33 | ok(my $alias = $mailb->get_object('aliases', 'name'), "Can get alias name"); |
---|
| 34 | ok(my $revaliases = $mailb->get_object('revaliases', 'name'), "Can get revalias name"); |
---|
[305] | 35 | |
---|
| 36 | is($alias->get_c_field('forward'), 'to', 'Can get aliases'); |
---|
| 37 | |
---|
| 38 | ok($mailb->create_object('aliases', 'admin', |
---|
| 39 | forward => 'root' |
---|
| 40 | ), "Can create an aliases"); |
---|
| 41 | |
---|
| 42 | ok($mailb->commit, "Can save mail base"); |
---|
| 43 | |
---|
| 44 | ok(my $mailbmod = LATMOS::Accounts::Bases->new( |
---|
| 45 | 'mail', |
---|
[1071] | 46 | { params => { |
---|
[305] | 47 | aliases => "$dir/aliases", |
---|
| 48 | revaliases => "$dir/revaliases", |
---|
[1071] | 49 | }} |
---|
[305] | 50 | ), "Can get mail base"); |
---|
| 51 | |
---|
| 52 | system('rm', '-fr', $dir); |
---|