|
@@ -107,6 +107,13 @@ class AutoWizardTest < ActiveSupport::TestCase
|
|
|
{
|
|
|
name: 'some group1',
|
|
|
users: ['master_unit_test01@example.com', 'agent1_unit_test01@example.com']
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: 'Users',
|
|
|
+ users: ['master_unit_test01@example.com', 'agent1_unit_test01@example.com'],
|
|
|
+ signature: 'default',
|
|
|
+ email_address_id: 1,
|
|
|
+ note: 'Standard Group/Pool for Tickets.',
|
|
|
}
|
|
|
],
|
|
|
Settings: [
|
|
@@ -118,7 +125,40 @@ class AutoWizardTest < ActiveSupport::TestCase
|
|
|
name: 'product_name',
|
|
|
value: 'Zammad UnitTest02 System'
|
|
|
},
|
|
|
- ]
|
|
|
+ ],
|
|
|
+ Channels: [
|
|
|
+ {
|
|
|
+ id: 1,
|
|
|
+ area: 'Email::Account',
|
|
|
+ group: 'Users',
|
|
|
+ options: {
|
|
|
+ inbound: {
|
|
|
+ adapter: 'imap',
|
|
|
+ options: {
|
|
|
+ host: 'mx1.example.com',
|
|
|
+ user: 'not_existing',
|
|
|
+ password: 'some_pass',
|
|
|
+ ssl: true
|
|
|
+ }
|
|
|
+ },
|
|
|
+ outbound: {
|
|
|
+ adapter: 'sendmail'
|
|
|
+ }
|
|
|
+ },
|
|
|
+ preferences: {
|
|
|
+ online_service_disable: true,
|
|
|
+ },
|
|
|
+ active: true
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ EmailAddresses: [
|
|
|
+ {
|
|
|
+ id: 1,
|
|
|
+ channel_id: 1,
|
|
|
+ realname: 'some realname',
|
|
|
+ email: 'helpdesk@example.com',
|
|
|
+ }
|
|
|
+ ],
|
|
|
}
|
|
|
assert_equal(false, AutoWizard.enabled?)
|
|
|
auto_wizard_file_write(auto_wizard_data)
|
|
@@ -142,11 +182,29 @@ class AutoWizardTest < ActiveSupport::TestCase
|
|
|
auto_wizard_data[:Groups].each {|local_group|
|
|
|
group = Group.find_by(name: local_group[:name])
|
|
|
assert_equal(local_group[:name], group.name)
|
|
|
- next unless local_group[:users]
|
|
|
- local_group[:users].each {|local_user_login|
|
|
|
- local_user = User.find_by(login: local_user_login)
|
|
|
- assert(group.user_ids.include?(local_user.id))
|
|
|
- }
|
|
|
+ if local_group[:users]
|
|
|
+ local_group[:users].each {|local_user_login|
|
|
|
+ local_user = User.find_by(login: local_user_login)
|
|
|
+ assert(group.user_ids.include?(local_user.id))
|
|
|
+ }
|
|
|
+ end
|
|
|
+ if local_group[:signature]
|
|
|
+ signature = group.signature
|
|
|
+ assert_equal('default', signature.name)
|
|
|
+ end
|
|
|
+ }
|
|
|
+ auto_wizard_data[:EmailAddresses].each {|local_email_address|
|
|
|
+ email_address = EmailAddress.find_by(email: local_email_address[:email])
|
|
|
+ assert_equal(local_email_address[:email], email_address.email)
|
|
|
+ assert_equal(local_email_address[:realname], email_address.realname)
|
|
|
+ channel = email_address.channel
|
|
|
+ assert_equal(local_email_address[:channel_id], email_address.channel.id)
|
|
|
+ }
|
|
|
+ auto_wizard_data[:Channels].each {|local_channel|
|
|
|
+ channel = Channel.find_by(id: local_channel[:id])
|
|
|
+ assert_equal(local_channel[:area], channel.area)
|
|
|
+ group = channel.group
|
|
|
+ assert_equal(local_channel[:group], group.name)
|
|
|
}
|
|
|
auto_wizard_data[:Settings].each {|local_setting|
|
|
|
setting_value = Setting.get(local_setting[:name])
|