require 'rm/plugins/postfixadmin'
require 'rm/plugins/roundcube'
require 'rm/rm_runner'
-require 'rm/rm_dummy_runner'
+
class TestRm < MailshearsTest
"DovecotRm - Removed user adam@example.net " +
"(#{cfg.dovecot_mail_root}/example.net/adam).\n" +
"PostfixadminRm - Removed user adam@example.net.\n" +
- "RoundcubeRm - Removed user adam@example.net (User ID: 2).\n"
+ "RoundcubeRm - Removed user adam@example.net (User ID: 3).\n"
assert_equal(expected, actual)
arm = AgendavRm.new(cfg)
actual = arm.list_users()
- expected = []
+ expected = [User.new('booger@example.com')]
assert_equal(expected, actual)
drm = DavicalRm.new(cfg)
actual = drm.list_users()
- expected = [User.new('alice@example.com')]
+ expected = [User.new('alice@example.com'), User.new('booger@example.com')]
assert_equal(expected, actual)
pfarm = PostfixadminRm.new(cfg)
actual = pfarm.list_aliases()
expected = [{'address' => 'alice@example.com',
- 'goto' => 'alice@example.com'},
- {'address' => 'bob@example.com',
- 'goto' => 'bob@example.com'},
+ 'goto' => 'alice@example.com,' +
+ 'bob@example.com,' +
+ 'carol@example.net'},
{'address' => 'beth@example.net',
- 'goto' => 'beth@example.net'},
+ 'goto' => 'beth@example.net'},
+ {'address' => 'bob@example.com',
+ 'goto' => 'bob@example.com'},
{'address' => 'carol@example.net',
- 'goto' => 'carol@example.net'}]
- assert_equal(expected, actual)
+ 'goto' => 'carol@example.net'}]
+ expected.each { |e| assert(actual.include?(e)) } # can't sort dicts
+ actual.each { |a| assert(expected.include?(a)) } # can't sort dicts
rrm = RoundcubeRm.new(cfg)
actual = rrm.list_users()
- expected = [User.new('alice@example.com')]
+ expected = [User.new('alice@example.com'), User.new('booger@example.com')]
assert_equal(expected, actual)
# Check that adam's directory is gone but that the rest remain.
arm = AgendavRm.new(cfg)
actual = arm.list_users()
- expected = []
+ expected = [User.new('booger@example.com')]
assert_equal(expected, actual)
drm = DavicalRm.new(cfg)
actual = drm.list_users()
- expected = [User.new('alice@example.com')]
+ expected = [User.new('alice@example.com'), User.new('booger@example.com')]
assert_equal(expected, actual)
pfarm = PostfixadminRm.new(cfg)
actual = pfarm.list_aliases()
expected = [{'address' => 'alice@example.com',
- 'goto' => 'alice@example.com'},
+ 'goto' => 'alice@example.com,bob@example.com'},
{'address' => 'bob@example.com',
- 'goto' => 'bob@example.com'}]
- assert_equal(expected, actual)
+ 'goto' => 'bob@example.com'}]
+ expected.each { |e| assert(actual.include?(e)) } # can't sort dicts
+ actual.each { |a| assert(expected.include?(a)) } # can't sort dicts
rrm = RoundcubeRm.new(cfg)
actual = rrm.list_users()
- expected = [User.new('alice@example.com')]
+ expected = [User.new('alice@example.com'), User.new('booger@example.com')]
assert_equal(expected, actual)
# Check that example.net's directory is gone but that the rest remain.