osem-fcy/spec/features/email_spec.rb

99 lines
4.2 KiB
Ruby
Raw Normal View History

2014-05-14 17:08:46 +02:00
require 'spec_helper'
feature EmailSettings do
2014-08-12 15:48:29 +03:00
let!(:conference) { create(:conference) }
let!(:organizer_role) { Role.find_by(name: 'organizer', resource: conference) }
2014-08-12 15:48:29 +03:00
let!(:organizer) { create(:user, role_ids: [organizer_role.id]) }
2014-05-14 17:08:46 +02:00
2014-08-12 15:48:29 +03:00
shared_examples 'email settings' do
2014-05-14 17:08:46 +02:00
scenario 'updates email settings',
feature: true, js: true do
expected_count = EmailSettings.count
2014-08-12 15:48:29 +03:00
sign_in organizer
2014-05-14 17:08:46 +02:00
visit admin_conference_emails_path(conference.short_title)
click_link 'Onboarding'
2014-05-14 17:08:46 +02:00
fill_in 'email_settings_registration_subject',
with: 'Registration subject'
fill_in 'email_settings_registration_body',
2014-05-14 17:08:46 +02:00
with: 'Registration email body'
click_link 'Proposal'
2014-05-14 17:08:46 +02:00
fill_in 'email_settings_accepted_subject',
with: 'Accepted subject'
fill_in 'email_settings_accepted_body',
2014-05-14 17:08:46 +02:00
with: 'Accepted email body'
fill_in 'email_settings_rejected_subject',
with: 'Rejected subject'
fill_in 'email_settings_rejected_body',
2014-05-14 17:08:46 +02:00
with: 'Rejected email body'
fill_in 'email_settings_confirmed_without_registration_subject',
with: 'Confirmed without registration subject'
fill_in 'email_settings_confirmed_without_registration_body',
2014-05-14 17:08:46 +02:00
with: 'Confirmed without registration email body'
click_link 'Update Notifications'
fill_in 'email_settings_conference_dates_updated_subject',
with: 'Updated conference dates subject'
fill_in 'email_settings_conference_dates_updated_body',
with: 'Updated conference dates email template'
fill_in 'email_settings_conference_registration_dates_updated_subject',
with: 'Updated conference registration dates subject'
fill_in 'email_settings_conference_registration_dates_updated_body',
with: 'Updated conference registration dates template'
fill_in 'email_settings_venue_updated_subject',
with: 'Updated conference venue subject'
fill_in 'email_settings_venue_updated_body',
with: 'Updated conference venue template'
2014-05-14 17:08:46 +02:00
click_button 'Update Email settings'
expect(flash).
2016-03-31 16:51:16 +02:00
to eq('Email settings have been successfully updated.')
2014-05-14 17:08:46 +02:00
expect(find('#email_settings_registration_subject').
value).to eq('Registration subject')
expect(find('#email_settings_registration_body').
2014-05-14 17:08:46 +02:00
value).to eq('Registration email body')
click_link 'Proposal'
2014-05-14 17:08:46 +02:00
expect(find('#email_settings_accepted_subject').
value).to eq('Accepted subject')
expect(find('#email_settings_accepted_body').
2014-05-14 17:08:46 +02:00
value).to eq('Accepted email body')
expect(find('#email_settings_rejected_subject').
value).to eq('Rejected subject')
expect(find('#email_settings_rejected_body').
2014-05-14 17:08:46 +02:00
value).to eq('Rejected email body')
expect(find('#email_settings_confirmed_without_registration_subject').
value).to eq('Confirmed without registration subject')
expect(find('#email_settings_confirmed_without_registration_body').
2014-05-14 17:08:46 +02:00
value).to eq('Confirmed without registration email body')
click_link 'Update Notifications'
expect(find('#email_settings_conference_dates_updated_subject').
value).to eq('Updated conference dates subject')
expect(find('#email_settings_conference_dates_updated_body').
value).to eq('Updated conference dates email template')
expect(find('#email_settings_conference_registration_dates_updated_subject').
value).to eq('Updated conference registration dates subject')
expect(find('#email_settings_conference_registration_dates_updated_body').
value).to eq('Updated conference registration dates template')
expect(find('#email_settings_venue_updated_subject').
value).to eq('Updated conference venue subject')
expect(find('#email_settings_venue_updated_body').
value).to eq('Updated conference venue template')
2014-05-14 17:08:46 +02:00
expect(EmailSettings.count).to eq(expected_count)
end
end
describe 'organizer' do
2014-08-12 15:48:29 +03:00
it_behaves_like 'email settings'
2014-05-14 17:08:46 +02:00
end
end