# encoding: utf-8 require 'browser_test_helper' class MaintenanceMessageTest < TestCase def test_websocket string = rand(99_999_999_999_999_999).to_s title_html = "test #{string}" title_text = "test #{string}<\/b>" message_html = "message 1äöüß #{string}\n\n\nhttp://zammad.org" message_text = "message 1äöüß<\/b> #{string}\n\nhttp:\/\/zammad.org" # check #1 browser1 = browser_instance login( browser: browser1, username: 'master@example.com', password: 'test', url: browser_url, ) browser2 = browser_instance login( browser: browser2, username: 'agent1@example.com', password: 'test', url: browser_url, ) click( browser: browser1, css: 'a[href="#manage"]', ) click( browser: browser1, css: 'a[href="#system/maintenance"]', ) set( browser: browser1, css: '#content input[name="head"]', value: title_html, ) set( browser: browser1, css: '#content textarea[name="message"]', value: message_html, ) click( browser: browser1, css: '#content button[type="submit"]', ) watch_for( browser: browser2, css: '.modal', value: title_text, ) watch_for( browser: browser2, css: '.modal', value: message_text, ) match_not( browser: browser1, css: 'body', value: message_text, ) click( browser: browser2, css: 'div.modal-header .js-close', ) # check #2 click( browser: browser1, css: 'a[href="#manage"]', ) click( browser: browser1, css: 'a[href="#system/maintenance"]', ) set( browser: browser1, css: '#content input[name="head"]', value: title_html + ' #2', ) set( browser: browser1, css: '#content textarea[name="message"]', value: message_html + ' #2', ) click( browser: browser1, css: '#content button[type="submit"]', ) watch_for( browser: browser2, css: '.modal', value: title_text + ' #2', ) watch_for( browser: browser2, css: '.modal', value: message_text + ' #2', ) match_not( browser: browser1, css: 'body', value: message_text, ) click( browser: browser2, css: 'div.modal-header .js-close', ) # check #3 click( browser: browser1, css: 'a[href="#manage"]', ) click( browser: browser1, css: 'a[href="#system/maintenance"]', ) set( browser: browser1, css: '#content input[name="head"]', value: title_html + ' #3', ) set( browser: browser1, css: '#content textarea[name="message"]', value: message_html + ' #3', ) check( browser: browser1, css: '#content input[name="reload"][value="1"]', ) click( browser: browser1, css: '#content button[type="submit"]', ) watch_for( browser: browser2, css: '.modal', value: title_text + ' #3', ) watch_for( browser: browser2, css: '.modal', value: message_text + ' #3', ) watch_for( browser: browser2, css: '.modal', value: 'Reload application', ) match_not( browser: browser1, css: 'body', value: message_text, ) end end