123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 |
- # Copyright (C) 2012-2021 Zammad Foundation, http://zammad-foundation.org/
- require 'rails_helper'
- RSpec.describe 'System > Maintenance', type: :system do
- context 'when maintenance login is used' do
- context 'when maintenance login will be activated', authenticated_as: :authenticate do
- def authenticate
- Setting.set('maintenance_login', false)
- true
- end
- it 'switch maintenance_login on' do
- visit 'system/maintenance'
- click '.js-loginSetting label'
- wait(10).until { expect(Setting.get('maintenance_login')).to be true }
- end
- end
- context 'when maintenance login will be deactiavted', authenticated_as: :authenticate do
- def authenticate
- Setting.set('maintenance_login', true)
- true
- end
- it 'switch maintenance_login off' do
- visit 'system/maintenance'
- click '.js-loginSetting label'
- wait(10).until { expect(Setting.get('maintenance_login')).to be false }
- end
- end
- context 'when maintenance login message will be used', authenticated_as: :authenticate do
- def message
- @message ||= 'badum tssss'
- end
- def authenticate
- Setting.set('maintenance_login_message', message)
- true
- end
- it 'shows current maintenance_login_message' do
- visit 'system/maintenance'
- expect(find('.js-loginPreview [data-name="message"]')).to have_text message
- end
- it 'saves new maintenance_login_message' do
- message_suffix = 'tssss'
- visit 'system/maintenance'
- within(:active_content) do
- elem = find('#maintenance-message.hero-unit')
- elem.click
- elem.send_keys message_suffix
- elem.execute_script "$(this).trigger('blur')" # required for chrome
- end
- find('#global-search').click # unfocus
- wait(10).until { expect(Setting.get('maintenance_login_message')).to eq "#{message}#{message_suffix}" }
- end
- end
- end
- context 'when maintenance mode is used' do
- context 'when maintenance mode will be activated', authenticated_as: :authenticate do
- def authenticate
- Setting.set('maintenance_mode', false)
- true
- end
- it 'switch maintenance_mode on' do
- visit 'system/maintenance'
- click '.js-modeSetting label'
- modal_ready
- click '.content.active .modal .js-submit'
- modal_disappear
- wait(10).until { expect(Setting.get('maintenance_mode')).to be true }
- end
- end
- context 'when maintenance mode will be deactiavted', authenticated_as: :authenticate do
- def authenticate
- Setting.set('maintenance_mode', true)
- true
- end
- it 'switch maintenance_mode off' do
- visit 'system/maintenance'
- click '.js-modeSetting label'
- wait(10).until { expect(Setting.get('maintenance_mode')).to be false }
- end
- end
- end
- end
|