require 'common/domain'
require 'common/user'
require 'mailshears_test'
-require 'minitest/autorun'
-require 'mv/plugins/agendav'
require 'mv/plugins/davical'
require 'mv/plugins/dovecot'
require 'mv/plugins/postfixadmin'
actual = output_buffer.string()
expected =
- "AgendavMv - Source user alice@example.com not found.\n" +
"DavicalMv - Moved user alice@example.com (Principal ID: 1) " +
"to alice@example.net (Principal ID: 1).\n" +
"DovecotMv - Moved user alice@example.com " +
# Now check the database.
- amv = AgendavMv.new(cfg)
- actual = amv.list_users()
- expected = [User.new('adam@example.net'),User.new('booger@example.com')]
- assert_equal(expected.sort(), actual.sort())
-
dmv = DavicalMv.new(cfg)
actual = dmv.list_users()
expected = [User.new('alice@example.net'), User.new('booger@example.com')]
assert_equal(expected.sort(), actual.sort())
actual = pfamv.list_aliases()
- expected = [{'address' => 'alice@example.net',
- 'goto' => 'alice@example.net'},
- {'address' => 'bob@example.com',
- 'goto' => 'bob@example.com'},
- {'address' => 'adam@example.net',
+ expected = [{'address' => 'adam@example.net',
'goto' => 'adam@example.net'},
+ {'address' => 'alice@example.net',
+ 'goto' => 'alice@example.net,' +
+ 'adam@example.net,' +
+ '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'}]
expected.each { |e| assert(actual.include?(e)) } # can't sort dicts
# Skip output verification, it's ugly. But make sure the database
# has what we expect.
- amv = AgendavMv.new(cfg)
- actual = amv.list_users()
- expected = [User.new('adam@example.net'),User.new('booger@example.com')]
- assert_equal(expected.sort(), actual.sort())
-
dmv = DavicalMv.new(cfg)
actual = dmv.list_users()
expected = [User.new('alice@example.com'), User.new('booger@example.com')]
assert_equal(expected.sort(), actual.sort())
actual = pfamv.list_aliases()
- expected = [{'address' => 'alice@example.com',
- 'goto' => 'alice@example.com'},
- {'address' => 'bob@example.com',
- 'goto' => 'bob@example.com'},
- {'address' => 'adam@example.net',
+ expected = [{'address' => 'adam@example.net',
'goto' => 'adam@example.net'},
+ {'address' => 'alice@example.com',
+ 'goto' => 'alice@example.com,' +
+ 'adam@example.net,' +
+ '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'}]
expected.each { |e| assert(actual.include?(e)) } # can't sort dicts