Test stabilization: Improved handling of modal dialogs.
This commit is contained in:
parent
5727c571ff
commit
7a40517cb4
22 changed files with 105 additions and 165 deletions
|
@ -47,10 +47,7 @@ class AgentOrganizationProfileTest < TestCase
|
||||||
click(css: '.active .js-action .icon-arrow-down', fast: true)
|
click(css: '.active .js-action .icon-arrow-down', fast: true)
|
||||||
click(css: '.active .js-action [data-type="edit"]')
|
click(css: '.active .js-action [data-type="edit"]')
|
||||||
|
|
||||||
watch_for(
|
modal_ready()
|
||||||
css: '.active .modal',
|
|
||||||
value: 'note',
|
|
||||||
)
|
|
||||||
watch_for(
|
watch_for(
|
||||||
css: '.active .modal',
|
css: '.active .modal',
|
||||||
value: note,
|
value: note,
|
||||||
|
@ -65,6 +62,7 @@ class AgentOrganizationProfileTest < TestCase
|
||||||
value: 'some note abc',
|
value: 'some note abc',
|
||||||
)
|
)
|
||||||
click(css: '.active .modal button.js-submit')
|
click(css: '.active .modal button.js-submit')
|
||||||
|
modal_disappear()
|
||||||
|
|
||||||
watch_for(
|
watch_for(
|
||||||
css: '.active .profile-window',
|
css: '.active .profile-window',
|
||||||
|
@ -80,15 +78,14 @@ class AgentOrganizationProfileTest < TestCase
|
||||||
# change lastname back
|
# change lastname back
|
||||||
click(css: '.active .js-action .icon-arrow-down', fast: true)
|
click(css: '.active .js-action .icon-arrow-down', fast: true)
|
||||||
click(css: '.active .js-action [data-type="edit"]')
|
click(css: '.active .js-action [data-type="edit"]')
|
||||||
watch_for(
|
|
||||||
css: '.active .modal',
|
modal_ready()
|
||||||
value: 'note',
|
|
||||||
)
|
|
||||||
set(
|
set(
|
||||||
css: '.modal [name="name"]',
|
css: '.modal [name="name"]',
|
||||||
value: 'Zammad Foundation',
|
value: 'Zammad Foundation',
|
||||||
)
|
)
|
||||||
click(css: '.active .modal button.js-submit')
|
click(css: '.active .modal button.js-submit')
|
||||||
|
modal_disappear()
|
||||||
|
|
||||||
verify_task(
|
verify_task(
|
||||||
data: {
|
data: {
|
||||||
|
|
|
@ -162,15 +162,15 @@ class AgentTicketAttachmentTest < TestCase
|
||||||
|
|
||||||
# submit form
|
# submit form
|
||||||
click(css: '.content.active .js-submit')
|
click(css: '.content.active .js-submit')
|
||||||
sleep 2
|
|
||||||
|
|
||||||
# check warning
|
# check warning
|
||||||
|
modal_ready()
|
||||||
match(
|
match(
|
||||||
css: '.content.active .modal',
|
css: '.content.active .modal',
|
||||||
value: 'missing',
|
value: 'missing',
|
||||||
)
|
)
|
||||||
click(css: '.content.active .modal .js-cancel')
|
click(css: '.content.active .modal .js-cancel')
|
||||||
sleep 2
|
modal_disappear()
|
||||||
|
|
||||||
ticket_update(
|
ticket_update(
|
||||||
data: {
|
data: {
|
||||||
|
@ -259,7 +259,7 @@ class AgentTicketAttachmentTest < TestCase
|
||||||
# modify customer
|
# modify customer
|
||||||
click(browser: browser1, css: '.content.active .sidebar[data-tab="customer"] .js-actions .dropdown-toggle')
|
click(browser: browser1, css: '.content.active .sidebar[data-tab="customer"] .js-actions .dropdown-toggle')
|
||||||
click(browser: browser1, css: '.content.active .sidebar[data-tab="customer"] .js-actions [data-type="customer-edit"]')
|
click(browser: browser1, css: '.content.active .sidebar[data-tab="customer"] .js-actions [data-type="customer-edit"]')
|
||||||
sleep 2
|
modal_ready(browser: browser1)
|
||||||
set(browser: browser1, css: '.modal [name="address"]', value: 'some new address')
|
set(browser: browser1, css: '.modal [name="address"]', value: 'some new address')
|
||||||
click(browser: browser1, css: '.modal .js-submit')
|
click(browser: browser1, css: '.modal .js-submit')
|
||||||
modal_disappear(browser: browser1)
|
modal_disappear(browser: browser1)
|
||||||
|
@ -279,7 +279,7 @@ class AgentTicketAttachmentTest < TestCase
|
||||||
# change org of customer, check if org is shown in sidebar
|
# change org of customer, check if org is shown in sidebar
|
||||||
click(browser: browser1, css: '.content.active .sidebar[data-tab="customer"] .js-actions .dropdown-toggle')
|
click(browser: browser1, css: '.content.active .sidebar[data-tab="customer"] .js-actions .dropdown-toggle')
|
||||||
click(browser: browser1, css: '.content.active .sidebar[data-tab="customer"] .js-actions [data-type="customer-edit"]')
|
click(browser: browser1, css: '.content.active .sidebar[data-tab="customer"] .js-actions [data-type="customer-edit"]')
|
||||||
sleep 2
|
modal_ready(browser: browser1)
|
||||||
set(browser: browser1, css: '.modal .js-input', value: 'zammad')
|
set(browser: browser1, css: '.modal .js-input', value: 'zammad')
|
||||||
click(browser: browser1, css: '.modal .js-input')
|
click(browser: browser1, css: '.modal .js-input')
|
||||||
click(browser: browser1, css: '.modal .js-option')
|
click(browser: browser1, css: '.modal .js-option')
|
||||||
|
|
|
@ -177,9 +177,7 @@ class AgentTicketCreateResetCustomerSelectionTest < TestCase
|
||||||
click(css: '.content.active .tabsSidebar .sidebar[data-tab="customer"] .js-actions')
|
click(css: '.content.active .tabsSidebar .sidebar[data-tab="customer"] .js-actions')
|
||||||
click(css: '.content.active .tabsSidebar .sidebar[data-tab="customer"] .js-actions li[data-type="customer-change"]')
|
click(css: '.content.active .tabsSidebar .sidebar[data-tab="customer"] .js-actions li[data-type="customer-change"]')
|
||||||
|
|
||||||
watch_for(
|
modal_ready()
|
||||||
css: '.content.active .modal',
|
|
||||||
)
|
|
||||||
|
|
||||||
exists_not(
|
exists_not(
|
||||||
css: '.content.active .modal .user_autocompletion.form-group.has-error',
|
css: '.content.active .modal .user_autocompletion.form-group.has-error',
|
||||||
|
|
|
@ -46,7 +46,8 @@ class AgentTicketLinkTest < TestCase
|
||||||
click(
|
click(
|
||||||
css: '.content.active .links .js-add',
|
css: '.content.active .links .js-add',
|
||||||
)
|
)
|
||||||
sleep 2
|
|
||||||
|
modal_ready()
|
||||||
|
|
||||||
set(
|
set(
|
||||||
css: '.content.active .modal-body [name="ticket_number"]',
|
css: '.content.active .modal-body [name="ticket_number"]',
|
||||||
|
|
|
@ -58,11 +58,8 @@ class AgentTicketMergeTest < TestCase
|
||||||
# merge tickets
|
# merge tickets
|
||||||
click( css: '.active div[data-tab="ticket"] .js-actions .icon-arrow-down' )
|
click( css: '.active div[data-tab="ticket"] .js-actions .icon-arrow-down' )
|
||||||
click( css: '.active div[data-tab="ticket"] .js-actions [data-type="ticket-merge"]' )
|
click( css: '.active div[data-tab="ticket"] .js-actions [data-type="ticket-merge"]' )
|
||||||
watch_for(
|
|
||||||
css: '.modal',
|
|
||||||
value: 'merge',
|
|
||||||
)
|
|
||||||
|
|
||||||
|
modal_ready()
|
||||||
set(
|
set(
|
||||||
css: '.modal input[name="master_ticket_number"]',
|
css: '.modal input[name="master_ticket_number"]',
|
||||||
value: ticket1[:number],
|
value: ticket1[:number],
|
||||||
|
@ -115,11 +112,8 @@ class AgentTicketMergeTest < TestCase
|
||||||
# merge tickets
|
# merge tickets
|
||||||
click( css: '.active div[data-tab="ticket"] .js-actions .icon-arrow-down' )
|
click( css: '.active div[data-tab="ticket"] .js-actions .icon-arrow-down' )
|
||||||
click( css: '.active div[data-tab="ticket"] .js-actions [data-type="ticket-merge"]' )
|
click( css: '.active div[data-tab="ticket"] .js-actions [data-type="ticket-merge"]' )
|
||||||
watch_for(
|
|
||||||
css: '.modal',
|
|
||||||
value: 'merge',
|
|
||||||
)
|
|
||||||
|
|
||||||
|
modal_ready()
|
||||||
set(
|
set(
|
||||||
css: '.modal input[name="master_ticket_number"]',
|
css: '.modal input[name="master_ticket_number"]',
|
||||||
value: ticket3[:number],
|
value: ticket3[:number],
|
||||||
|
|
|
@ -96,10 +96,8 @@ class AgentTicketOverviewLevel0Test < TestCase
|
||||||
# click options and enable number and article count
|
# click options and enable number and article count
|
||||||
click(css: '.content.active [data-type="settings"]')
|
click(css: '.content.active [data-type="settings"]')
|
||||||
|
|
||||||
watch_for(
|
modal_ready()
|
||||||
css: '.modal h1',
|
|
||||||
value: 'Edit',
|
|
||||||
)
|
|
||||||
check(
|
check(
|
||||||
css: '.modal input[value="number"]',
|
css: '.modal input[value="number"]',
|
||||||
)
|
)
|
||||||
|
@ -156,10 +154,8 @@ class AgentTicketOverviewLevel0Test < TestCase
|
||||||
# disable number and article count
|
# disable number and article count
|
||||||
click(css: '.content.active [data-type="settings"]')
|
click(css: '.content.active [data-type="settings"]')
|
||||||
|
|
||||||
watch_for(
|
modal_ready()
|
||||||
css: '.modal h1',
|
|
||||||
value: 'Edit',
|
|
||||||
)
|
|
||||||
uncheck(
|
uncheck(
|
||||||
css: '.modal input[value="number"]',
|
css: '.modal input[value="number"]',
|
||||||
)
|
)
|
||||||
|
|
|
@ -254,7 +254,11 @@ class AgentTicketTagTest < TestCase
|
||||||
browser: browser2,
|
browser: browser2,
|
||||||
js: "$('.content.active .js-name:contains(\"tag3\")').click()",
|
js: "$('.content.active .js-name:contains(\"tag3\")').click()",
|
||||||
)
|
)
|
||||||
sleep 2
|
|
||||||
|
modal_ready(
|
||||||
|
browser: browser2,
|
||||||
|
)
|
||||||
|
|
||||||
set(
|
set(
|
||||||
browser: browser2,
|
browser: browser2,
|
||||||
css: '.modal [name="name"]',
|
css: '.modal [name="name"]',
|
||||||
|
@ -308,7 +312,11 @@ class AgentTicketTagTest < TestCase
|
||||||
browser: browser2,
|
browser: browser2,
|
||||||
js: "$('.content.active .js-name:contains(\"tag5\")').closest('tr').find('.js-delete').click()",
|
js: "$('.content.active .js-name:contains(\"tag5\")').closest('tr').find('.js-delete').click()",
|
||||||
)
|
)
|
||||||
sleep 2
|
|
||||||
|
modal_ready(
|
||||||
|
browser: browser2,
|
||||||
|
)
|
||||||
|
|
||||||
click(
|
click(
|
||||||
browser: browser2,
|
browser: browser2,
|
||||||
css: '.modal .js-submit',
|
css: '.modal .js-submit',
|
||||||
|
|
|
@ -227,7 +227,8 @@ class AgentTicketTextModuleTest < TestCase
|
||||||
browser: browser2,
|
browser: browser2,
|
||||||
css: '.active div[data-tab="ticket"] .js-actions [data-type="customer-change"]',
|
css: '.active div[data-tab="ticket"] .js-actions [data-type="customer-change"]',
|
||||||
)
|
)
|
||||||
sleep 1
|
|
||||||
|
modal_ready(browser: browser2)
|
||||||
|
|
||||||
ticket_customer_select(
|
ticket_customer_select(
|
||||||
browser: browser2,
|
browser: browser2,
|
||||||
|
@ -240,10 +241,7 @@ class AgentTicketTextModuleTest < TestCase
|
||||||
css: '.modal-content .js-submit',
|
css: '.modal-content .js-submit',
|
||||||
)
|
)
|
||||||
|
|
||||||
watch_for_disappear(
|
modal_disappear(browser: browser2)
|
||||||
browser: browser2,
|
|
||||||
css: '.modal',
|
|
||||||
)
|
|
||||||
|
|
||||||
set(
|
set(
|
||||||
browser: browser2,
|
browser: browser2,
|
||||||
|
|
|
@ -41,11 +41,7 @@ class AgentTicketTimeAccountingTest < TestCase
|
||||||
click(
|
click(
|
||||||
css: '.active .js-submit',
|
css: '.active .js-submit',
|
||||||
)
|
)
|
||||||
|
modal_ready()
|
||||||
watch_for(
|
|
||||||
css: '.content.active .modal',
|
|
||||||
value: 'Time Accounting',
|
|
||||||
)
|
|
||||||
set(
|
set(
|
||||||
css: '.content.active .modal [name=time_unit]',
|
css: '.content.active .modal [name=time_unit]',
|
||||||
value: '4',
|
value: '4',
|
||||||
|
@ -53,10 +49,8 @@ class AgentTicketTimeAccountingTest < TestCase
|
||||||
click(
|
click(
|
||||||
css: '.content.active .modal .js-submit',
|
css: '.content.active .modal .js-submit',
|
||||||
)
|
)
|
||||||
watch_for_disappear(
|
modal_disappear()
|
||||||
css: '.content.active .modal',
|
|
||||||
value: 'Time Accounting',
|
|
||||||
)
|
|
||||||
watch_for(
|
watch_for(
|
||||||
css: '.content.active .js-timeUnit',
|
css: '.content.active .js-timeUnit',
|
||||||
value: '4',
|
value: '4',
|
||||||
|
@ -80,11 +74,7 @@ class AgentTicketTimeAccountingTest < TestCase
|
||||||
click(
|
click(
|
||||||
css: '.active .js-submit',
|
css: '.active .js-submit',
|
||||||
)
|
)
|
||||||
|
modal_ready()
|
||||||
watch_for(
|
|
||||||
css: '.content.active .modal',
|
|
||||||
value: 'Time Accounting',
|
|
||||||
)
|
|
||||||
set(
|
set(
|
||||||
css: '.content.active .modal [name=time_unit]',
|
css: '.content.active .modal [name=time_unit]',
|
||||||
value: '4,6',
|
value: '4,6',
|
||||||
|
@ -92,10 +82,8 @@ class AgentTicketTimeAccountingTest < TestCase
|
||||||
click(
|
click(
|
||||||
css: '.content.active .modal .js-submit',
|
css: '.content.active .modal .js-submit',
|
||||||
)
|
)
|
||||||
watch_for_disappear(
|
modal_disappear()
|
||||||
css: '.content.active .modal',
|
|
||||||
value: 'Time Accounting',
|
|
||||||
)
|
|
||||||
watch_for(
|
watch_for(
|
||||||
css: '.content.active .js-timeUnit',
|
css: '.content.active .js-timeUnit',
|
||||||
value: '4.6',
|
value: '4.6',
|
||||||
|
@ -111,10 +99,7 @@ class AgentTicketTimeAccountingTest < TestCase
|
||||||
css: '.active .js-submit',
|
css: '.active .js-submit',
|
||||||
)
|
)
|
||||||
|
|
||||||
watch_for(
|
modal_ready()
|
||||||
css: '.content.active .modal',
|
|
||||||
value: 'Time Accounting',
|
|
||||||
)
|
|
||||||
set(
|
set(
|
||||||
css: '.content.active .modal [name=time_unit]',
|
css: '.content.active .modal [name=time_unit]',
|
||||||
value: '4abc',
|
value: '4abc',
|
||||||
|
@ -132,10 +117,7 @@ class AgentTicketTimeAccountingTest < TestCase
|
||||||
click(
|
click(
|
||||||
css: '.content.active .modal .js-submit',
|
css: '.content.active .modal .js-submit',
|
||||||
)
|
)
|
||||||
watch_for_disappear(
|
modal_disappear()
|
||||||
css: '.content.active .modal',
|
|
||||||
value: 'Time Accounting',
|
|
||||||
)
|
|
||||||
watch_for(
|
watch_for(
|
||||||
css: '.content.active .js-timeUnit',
|
css: '.content.active .js-timeUnit',
|
||||||
value: '8.6',
|
value: '8.6',
|
||||||
|
@ -198,29 +180,18 @@ class AgentTicketTimeAccountingTest < TestCase
|
||||||
click(
|
click(
|
||||||
css: '.active .js-submit',
|
css: '.active .js-submit',
|
||||||
)
|
)
|
||||||
|
modal_ready()
|
||||||
watch_for(
|
|
||||||
css: '.content.active .modal',
|
|
||||||
value: 'Time Accounting',
|
|
||||||
)
|
|
||||||
|
|
||||||
# Click outside the modal to make it disappear
|
# Click outside the modal to make it disappear
|
||||||
execute(
|
execute(
|
||||||
js: 'document.elementFromPoint(300, 100).click();',
|
js: 'document.elementFromPoint(300, 100).click();',
|
||||||
)
|
)
|
||||||
watch_for_disappear(
|
modal_disappear()
|
||||||
css: '.content.active .modal',
|
|
||||||
value: 'Time Accounting',
|
|
||||||
)
|
|
||||||
|
|
||||||
click(
|
click(
|
||||||
css: '.active .js-submit',
|
css: '.active .js-submit',
|
||||||
)
|
)
|
||||||
watch_for(
|
modal_ready()
|
||||||
css: '.content.active .modal',
|
|
||||||
value: 'Time Accounting',
|
|
||||||
)
|
|
||||||
|
|
||||||
set(
|
set(
|
||||||
css: '.content.active .modal [name=time_unit]',
|
css: '.content.active .modal [name=time_unit]',
|
||||||
value: '4',
|
value: '4',
|
||||||
|
@ -228,10 +199,7 @@ class AgentTicketTimeAccountingTest < TestCase
|
||||||
click(
|
click(
|
||||||
css: '.content.active .modal .js-submit',
|
css: '.content.active .modal .js-submit',
|
||||||
)
|
)
|
||||||
watch_for_disappear(
|
modal_disappear()
|
||||||
css: '.content.active .modal',
|
|
||||||
value: 'Time Accounting',
|
|
||||||
)
|
|
||||||
|
|
||||||
# disable time accounting
|
# disable time accounting
|
||||||
click(
|
click(
|
||||||
|
|
|
@ -52,18 +52,14 @@ class AgentTicketZoomHideTest < TestCase
|
||||||
css: '.attachment-icon img',
|
css: '.attachment-icon img',
|
||||||
)
|
)
|
||||||
|
|
||||||
watch_for(
|
modal_ready()
|
||||||
css: 'body > .modal',
|
|
||||||
)
|
|
||||||
|
|
||||||
# Now go to a previous ticket and confirm that the modal disappears
|
# Now go to a previous ticket and confirm that the modal disappears
|
||||||
location(
|
location(
|
||||||
url: browser_url + '/#ticket/zoom/1',
|
url: browser_url + '/#ticket/zoom/1',
|
||||||
)
|
)
|
||||||
sleep 2
|
sleep 2
|
||||||
exists_not(
|
modal_disappear()
|
||||||
css: 'body > .modal',
|
|
||||||
)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def teardown
|
def teardown
|
||||||
|
|
|
@ -35,11 +35,7 @@ class AgentUserManageTest < TestCase
|
||||||
sleep 0.5
|
sleep 0.5
|
||||||
click(css: '.content.active .newTicket .recipientList-entry.js-objectNew')
|
click(css: '.content.active .newTicket .recipientList-entry.js-objectNew')
|
||||||
|
|
||||||
watch_for(
|
modal_ready()
|
||||||
css: '.content.active .modal',
|
|
||||||
timeout: 1,
|
|
||||||
)
|
|
||||||
|
|
||||||
set(
|
set(
|
||||||
css: '.content.active .modal input[name="firstname"]',
|
css: '.content.active .modal input[name="firstname"]',
|
||||||
value: firstname,
|
value: firstname,
|
||||||
|
@ -54,6 +50,8 @@ class AgentUserManageTest < TestCase
|
||||||
)
|
)
|
||||||
|
|
||||||
click(css: '.content.active .modal button.js-submit')
|
click(css: '.content.active .modal button.js-submit')
|
||||||
|
modal_disappear()
|
||||||
|
|
||||||
sleep 4
|
sleep 4
|
||||||
|
|
||||||
# check is used to check selected
|
# check is used to check selected
|
||||||
|
@ -170,10 +168,7 @@ class AgentUserManageTest < TestCase
|
||||||
click(css: '.content.active .tabsSidebar .sidebar[data-tab="customer"] .js-actions')
|
click(css: '.content.active .tabsSidebar .sidebar[data-tab="customer"] .js-actions')
|
||||||
click(css: '.content.active .tabsSidebar .sidebar[data-tab="customer"] .js-actions li[data-type="customer-change"]')
|
click(css: '.content.active .tabsSidebar .sidebar[data-tab="customer"] .js-actions li[data-type="customer-change"]')
|
||||||
|
|
||||||
watch_for(
|
modal_ready()
|
||||||
css: '.content.active .modal',
|
|
||||||
)
|
|
||||||
|
|
||||||
click(css: '.content.active .modal [name="customer_id_completion"]')
|
click(css: '.content.active .modal [name="customer_id_completion"]')
|
||||||
|
|
||||||
# check if pulldown is open, it's not working stable via selenium
|
# check if pulldown is open, it's not working stable via selenium
|
||||||
|
@ -230,10 +225,7 @@ class AgentUserManageTest < TestCase
|
||||||
)
|
)
|
||||||
|
|
||||||
click(css: '.content.active .modal button.js-submit')
|
click(css: '.content.active .modal button.js-submit')
|
||||||
|
modal_disappear()
|
||||||
watch_for_disappear(
|
|
||||||
css: '.content.active .modal',
|
|
||||||
)
|
|
||||||
|
|
||||||
watch_for(
|
watch_for(
|
||||||
css: '.content.active .tabsSidebar .sidebar[data-tab="customer"]',
|
css: '.content.active .tabsSidebar .sidebar[data-tab="customer"]',
|
||||||
|
|
|
@ -43,10 +43,7 @@ class AgentUserProfileTest < TestCase
|
||||||
click(css: '.active .js-action .icon-arrow-down', fast: true)
|
click(css: '.active .js-action .icon-arrow-down', fast: true)
|
||||||
click(css: '.active .js-action [data-type="edit"]')
|
click(css: '.active .js-action [data-type="edit"]')
|
||||||
|
|
||||||
watch_for(
|
modal_ready()
|
||||||
css: '.active .modal',
|
|
||||||
value: 'note',
|
|
||||||
)
|
|
||||||
watch_for(
|
watch_for(
|
||||||
css: '.active .modal',
|
css: '.active .modal',
|
||||||
value: 'some note 123',
|
value: 'some note 123',
|
||||||
|
@ -61,6 +58,7 @@ class AgentUserProfileTest < TestCase
|
||||||
value: 'some note abc',
|
value: 'some note abc',
|
||||||
)
|
)
|
||||||
click(css: '.active .modal button.js-submit')
|
click(css: '.active .modal button.js-submit')
|
||||||
|
modal_disappear()
|
||||||
|
|
||||||
watch_for(
|
watch_for(
|
||||||
css: '.active .profile-window',
|
css: '.active .profile-window',
|
||||||
|
@ -76,15 +74,14 @@ class AgentUserProfileTest < TestCase
|
||||||
# change lastname back
|
# change lastname back
|
||||||
click(css: '.active .js-action .icon-arrow-down', fast: true)
|
click(css: '.active .js-action .icon-arrow-down', fast: true)
|
||||||
click(css: '.active .js-action [data-type="edit"]')
|
click(css: '.active .js-action [data-type="edit"]')
|
||||||
watch_for(
|
|
||||||
css: '.active .modal',
|
modal_ready()
|
||||||
value: 'note',
|
|
||||||
)
|
|
||||||
set(
|
set(
|
||||||
css: '.modal [name="lastname"]',
|
css: '.modal [name="lastname"]',
|
||||||
value: 'Braun',
|
value: 'Braun',
|
||||||
)
|
)
|
||||||
click(css: '.active .modal button.js-submit')
|
click(css: '.active .modal button.js-submit')
|
||||||
|
modal_disappear()
|
||||||
|
|
||||||
verify_task(
|
verify_task(
|
||||||
data: {
|
data: {
|
||||||
|
|
|
@ -462,6 +462,8 @@ class ChatTest < TestCase
|
||||||
browser: agent,
|
browser: agent,
|
||||||
css: '.active .js-settings',
|
css: '.active .js-settings',
|
||||||
)
|
)
|
||||||
|
|
||||||
|
modal_ready(browser: agent)
|
||||||
set(
|
set(
|
||||||
browser: agent,
|
browser: agent,
|
||||||
css: '.modal [name="chat::phrase::1"]',
|
css: '.modal [name="chat::phrase::1"]',
|
||||||
|
|
|
@ -23,7 +23,9 @@ class FirstStepsTest < TestCase
|
||||||
|
|
||||||
# invite agent (with more then one group)
|
# invite agent (with more then one group)
|
||||||
click(css: '.active.content .js-inviteAgent')
|
click(css: '.active.content .js-inviteAgent')
|
||||||
sleep 4
|
|
||||||
|
modal_ready()
|
||||||
|
|
||||||
set(
|
set(
|
||||||
css: '.modal [name="firstname"]',
|
css: '.modal [name="firstname"]',
|
||||||
value: 'Bob',
|
value: 'Bob',
|
||||||
|
@ -49,10 +51,11 @@ class FirstStepsTest < TestCase
|
||||||
css: 'body div.modal',
|
css: 'body div.modal',
|
||||||
value: 'Sending',
|
value: 'Sending',
|
||||||
)
|
)
|
||||||
|
modal_disappear()
|
||||||
|
|
||||||
# invite customer
|
# invite customer
|
||||||
click(css: '.active.content .js-inviteCustomer')
|
click(css: '.active.content .js-inviteCustomer')
|
||||||
sleep 4
|
modal_ready()
|
||||||
set(
|
set(
|
||||||
css: '.modal [name="firstname"]',
|
css: '.modal [name="firstname"]',
|
||||||
value: 'Client',
|
value: 'Client',
|
||||||
|
@ -81,12 +84,14 @@ class FirstStepsTest < TestCase
|
||||||
css: 'body div.modal',
|
css: 'body div.modal',
|
||||||
value: 'Sending',
|
value: 'Sending',
|
||||||
)
|
)
|
||||||
|
modal_disappear()
|
||||||
|
|
||||||
# test ticket
|
# test ticket
|
||||||
click(
|
click(
|
||||||
css: '.active.content .js-testTicket',
|
css: '.active.content .js-testTicket',
|
||||||
fast: true,
|
fast: true,
|
||||||
)
|
)
|
||||||
|
modal_ready()
|
||||||
watch_for(
|
watch_for(
|
||||||
css: 'body div.modal',
|
css: 'body div.modal',
|
||||||
value: 'A Test Ticket has been created',
|
value: 'A Test Ticket has been created',
|
||||||
|
@ -99,6 +104,8 @@ class FirstStepsTest < TestCase
|
||||||
css: 'body div.modal',
|
css: 'body div.modal',
|
||||||
value: 'Test Ticket',
|
value: 'Test Ticket',
|
||||||
)
|
)
|
||||||
|
modal_disappear()
|
||||||
|
|
||||||
execute(
|
execute(
|
||||||
js: '$(".active.content .sidebar").show()',
|
js: '$(".active.content .sidebar").show()',
|
||||||
)
|
)
|
||||||
|
|
|
@ -37,27 +37,15 @@ class KeyboardShortcutsTest < TestCase
|
||||||
shortcut(key: 'h')
|
shortcut(key: 'h')
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
watch_for(
|
|
||||||
css: '.modal',
|
|
||||||
value: 'Keyboard Shortcuts',
|
|
||||||
timeout: 6,
|
|
||||||
)
|
|
||||||
|
|
||||||
|
modal_ready()
|
||||||
# hide shortkeys
|
# hide shortkeys
|
||||||
shortcut(key: 'h')
|
shortcut(key: 'h')
|
||||||
watch_for_disappear(
|
modal_disappear()
|
||||||
css: '.modal',
|
|
||||||
value: 'Keyboard Shortcuts',
|
|
||||||
timeout: 2,
|
|
||||||
)
|
|
||||||
|
|
||||||
# show shortkeys
|
# show shortkeys
|
||||||
shortcut(key: 'h')
|
shortcut(key: 'h')
|
||||||
watch_for(
|
modal_ready()
|
||||||
css: '.modal',
|
|
||||||
value: 'Keyboard Shortcuts',
|
|
||||||
timeout: 2,
|
|
||||||
)
|
|
||||||
|
|
||||||
# show notifications
|
# show notifications
|
||||||
shortcut(key: 'a')
|
shortcut(key: 'a')
|
||||||
|
|
|
@ -39,15 +39,12 @@ class MaintenanceModeTest < TestCase
|
||||||
)
|
)
|
||||||
|
|
||||||
# check warning
|
# check warning
|
||||||
watch_for(
|
modal_ready(browser: browser1)
|
||||||
browser: browser1,
|
|
||||||
css: '.content.active .modal .modal-header',
|
|
||||||
value: 'confirm',
|
|
||||||
)
|
|
||||||
click(
|
click(
|
||||||
browser: browser1,
|
browser: browser1,
|
||||||
css: '.content.active .modal .js-submit',
|
css: '.content.active .modal .js-submit',
|
||||||
)
|
)
|
||||||
|
modal_disappear(browser: browser1)
|
||||||
|
|
||||||
watch_for(
|
watch_for(
|
||||||
browser: browser2,
|
browser: browser2,
|
||||||
|
@ -127,15 +124,12 @@ class MaintenanceModeTest < TestCase
|
||||||
)
|
)
|
||||||
|
|
||||||
# check warning
|
# check warning
|
||||||
watch_for(
|
modal_ready(browser: browser1)
|
||||||
browser: browser1,
|
|
||||||
css: '.content.active .modal .modal-header',
|
|
||||||
value: 'confirm',
|
|
||||||
)
|
|
||||||
click(
|
click(
|
||||||
browser: browser1,
|
browser: browser1,
|
||||||
css: '.content.active .modal .js-submit',
|
css: '.content.active .modal .js-submit',
|
||||||
)
|
)
|
||||||
|
modal_disappear(browser: browser1)
|
||||||
|
|
||||||
watch_for(
|
watch_for(
|
||||||
browser: browser2,
|
browser: browser2,
|
||||||
|
|
|
@ -50,6 +50,7 @@ class MaintenanceSessionMessageTest < TestCase
|
||||||
css: '.content.active .js-Message button.js-submit',
|
css: '.content.active .js-Message button.js-submit',
|
||||||
)
|
)
|
||||||
|
|
||||||
|
modal_ready(browser: browser2)
|
||||||
watch_for(
|
watch_for(
|
||||||
browser: browser2,
|
browser: browser2,
|
||||||
css: '.modal',
|
css: '.modal',
|
||||||
|
@ -71,6 +72,7 @@ class MaintenanceSessionMessageTest < TestCase
|
||||||
browser: browser2,
|
browser: browser2,
|
||||||
css: 'div.modal-header .js-close',
|
css: 'div.modal-header .js-close',
|
||||||
)
|
)
|
||||||
|
modal_disappear(browser: browser2)
|
||||||
|
|
||||||
# check #2
|
# check #2
|
||||||
click(
|
click(
|
||||||
|
@ -98,6 +100,7 @@ class MaintenanceSessionMessageTest < TestCase
|
||||||
css: '.content.active .js-Message button.js-submit',
|
css: '.content.active .js-Message button.js-submit',
|
||||||
)
|
)
|
||||||
|
|
||||||
|
modal_ready(browser: browser2)
|
||||||
watch_for(
|
watch_for(
|
||||||
browser: browser2,
|
browser: browser2,
|
||||||
css: '.modal',
|
css: '.modal',
|
||||||
|
@ -119,6 +122,7 @@ class MaintenanceSessionMessageTest < TestCase
|
||||||
browser: browser2,
|
browser: browser2,
|
||||||
css: 'div.modal-header .js-close',
|
css: 'div.modal-header .js-close',
|
||||||
)
|
)
|
||||||
|
modal_disappear(browser: browser2)
|
||||||
|
|
||||||
# check #3
|
# check #3
|
||||||
click(
|
click(
|
||||||
|
@ -149,6 +153,7 @@ class MaintenanceSessionMessageTest < TestCase
|
||||||
css: '.content.active .js-Message button.js-submit',
|
css: '.content.active .js-Message button.js-submit',
|
||||||
)
|
)
|
||||||
|
|
||||||
|
modal_ready(browser: browser2)
|
||||||
watch_for(
|
watch_for(
|
||||||
browser: browser2,
|
browser: browser2,
|
||||||
css: '.modal',
|
css: '.modal',
|
||||||
|
|
|
@ -28,13 +28,14 @@ class ManageTest < TestCase
|
||||||
)
|
)
|
||||||
|
|
||||||
click(css: '.table-overview tr:last-child td')
|
click(css: '.table-overview tr:last-child td')
|
||||||
sleep 2
|
|
||||||
|
|
||||||
|
modal_ready()
|
||||||
set(
|
set(
|
||||||
css: '.modal input[name="lastname"]',
|
css: '.modal input[name="lastname"]',
|
||||||
value: "2Manage Lastname#{random}",
|
value: "2Manage Lastname#{random}",
|
||||||
)
|
)
|
||||||
click(css: '.modal button.js-submit')
|
click(css: '.modal button.js-submit')
|
||||||
|
modal_disappear()
|
||||||
|
|
||||||
watch_for(
|
watch_for(
|
||||||
css: 'body',
|
css: 'body',
|
||||||
|
@ -55,8 +56,8 @@ class ManageTest < TestCase
|
||||||
sleep 1
|
sleep 1
|
||||||
|
|
||||||
click(css: '.content:not(.hide) .action:last-child .js-edit')
|
click(css: '.content:not(.hide) .action:last-child .js-edit')
|
||||||
sleep 1
|
|
||||||
|
|
||||||
|
modal_ready()
|
||||||
set(
|
set(
|
||||||
css: '.modal input[name=name]',
|
css: '.modal input[name=name]',
|
||||||
value: "some sla update #{random}",
|
value: "some sla update #{random}",
|
||||||
|
@ -66,6 +67,7 @@ class ManageTest < TestCase
|
||||||
value: '2:01',
|
value: '2:01',
|
||||||
)
|
)
|
||||||
click(css: '.modal button.js-submit')
|
click(css: '.modal button.js-submit')
|
||||||
|
modal_disappear()
|
||||||
|
|
||||||
watch_for(
|
watch_for(
|
||||||
css: 'body',
|
css: 'body',
|
||||||
|
|
|
@ -16,11 +16,8 @@ class PreferencesTokenAccessTest < TestCase
|
||||||
click(css: 'a[href="#profile/token_access"]')
|
click(css: 'a[href="#profile/token_access"]')
|
||||||
|
|
||||||
click(css: '.content.active .js-create')
|
click(css: '.content.active .js-create')
|
||||||
watch_for(
|
|
||||||
css: '.modal .modal-title',
|
|
||||||
value: 'Add a Personal Access Token'
|
|
||||||
)
|
|
||||||
|
|
||||||
|
modal_ready()
|
||||||
set(
|
set(
|
||||||
css: '.content.active .modal .js-input',
|
css: '.content.active .modal .js-input',
|
||||||
value: 'Some App#1',
|
value: 'Some App#1',
|
||||||
|
@ -37,6 +34,8 @@ class PreferencesTokenAccessTest < TestCase
|
||||||
value: 'Your New Personal Access Token'
|
value: 'Your New Personal Access Token'
|
||||||
)
|
)
|
||||||
click(css: '.modal .js-submit')
|
click(css: '.modal .js-submit')
|
||||||
|
modal_disappear()
|
||||||
|
|
||||||
watch_for(
|
watch_for(
|
||||||
css: '.content.active .js-tokenList',
|
css: '.content.active .js-tokenList',
|
||||||
value: 'Some App#1'
|
value: 'Some App#1'
|
||||||
|
@ -47,10 +46,8 @@ class PreferencesTokenAccessTest < TestCase
|
||||||
)
|
)
|
||||||
|
|
||||||
click(css: '.content.active .js-create')
|
click(css: '.content.active .js-create')
|
||||||
watch_for(
|
|
||||||
css: '.modal .modal-title',
|
modal_ready()
|
||||||
value: 'Add a Personal Access Token'
|
|
||||||
)
|
|
||||||
set(
|
set(
|
||||||
css: '.content.active .modal .js-input',
|
css: '.content.active .modal .js-input',
|
||||||
value: 'Some App#2',
|
value: 'Some App#2',
|
||||||
|
@ -63,12 +60,16 @@ class PreferencesTokenAccessTest < TestCase
|
||||||
value: 'Your New Personal Access Token'
|
value: 'Your New Personal Access Token'
|
||||||
)
|
)
|
||||||
click(css: '.modal .js-submit')
|
click(css: '.modal .js-submit')
|
||||||
|
modal_disappear()
|
||||||
|
|
||||||
watch_for(
|
watch_for(
|
||||||
css: '.content.active .js-tokenList',
|
css: '.content.active .js-tokenList',
|
||||||
value: 'Some App#2'
|
value: 'Some App#2'
|
||||||
)
|
)
|
||||||
|
|
||||||
click(css: '.content.active .js-tokenList a')
|
click(css: '.content.active .js-tokenList a')
|
||||||
|
|
||||||
|
modal_ready()
|
||||||
watch_for(
|
watch_for(
|
||||||
css: '.content.active .modal .modal-header',
|
css: '.content.active .modal .modal-header',
|
||||||
value: 'confirm',
|
value: 'confirm',
|
||||||
|
@ -76,6 +77,7 @@ class PreferencesTokenAccessTest < TestCase
|
||||||
click(
|
click(
|
||||||
css: '.content.active .modal .js-submit',
|
css: '.content.active .modal .js-submit',
|
||||||
)
|
)
|
||||||
|
modal_disappear()
|
||||||
watch_for_disappear(
|
watch_for_disappear(
|
||||||
css: '.content.active .js-tokenList',
|
css: '.content.active .js-tokenList',
|
||||||
value: 'Some App#2'
|
value: 'Some App#2'
|
||||||
|
|
|
@ -63,11 +63,9 @@ class SignupPasswordChangeAndResetTest < TestCase
|
||||||
execute(
|
execute(
|
||||||
js: 'App.Event.trigger("user_signup_verify", App.Session.get())',
|
js: 'App.Event.trigger("user_signup_verify", App.Session.get())',
|
||||||
)
|
)
|
||||||
watch_for(
|
modal_ready()
|
||||||
css: '.modal',
|
|
||||||
value: 'Account not verified',
|
|
||||||
)
|
|
||||||
click(css: '.modal .js-submit')
|
click(css: '.modal .js-submit')
|
||||||
|
|
||||||
execute(
|
execute(
|
||||||
js: 'App.Auth.logout()',
|
js: 'App.Auth.logout()',
|
||||||
)
|
)
|
||||||
|
@ -83,9 +81,7 @@ class SignupPasswordChangeAndResetTest < TestCase
|
||||||
css: '#content',
|
css: '#content',
|
||||||
value: 'Your email address has been verified',
|
value: 'Your email address has been verified',
|
||||||
)
|
)
|
||||||
exists_not(
|
modal_disappear()
|
||||||
css: '.modal',
|
|
||||||
)
|
|
||||||
sleep 2
|
sleep 2
|
||||||
|
|
||||||
# change password
|
# change password
|
||||||
|
|
|
@ -283,13 +283,14 @@ class TranslationTest < TestCase
|
||||||
)
|
)
|
||||||
|
|
||||||
click(css: '.content.active .js-syncChanges')
|
click(css: '.content.active .js-syncChanges')
|
||||||
|
|
||||||
|
modal_ready()
|
||||||
watch_for(
|
watch_for(
|
||||||
css: '.content.active .modal',
|
css: '.content.active .modal',
|
||||||
value: 'Letzte Übersetzung laden',
|
value: 'Letzte Übersetzung laden',
|
||||||
)
|
)
|
||||||
watch_for_disappear(
|
modal_disappear(
|
||||||
css: '.content.active .modal',
|
timeout: 6.minutes,
|
||||||
timeout: 6 * 60,
|
|
||||||
)
|
)
|
||||||
|
|
||||||
click(css: 'a[href="#current_user"]')
|
click(css: 'a[href="#current_user"]')
|
||||||
|
|
|
@ -39,7 +39,6 @@ class AgentProfilePermissionsTest < TestCase
|
||||||
click(css: '.content.active .js-action [data-type="edit"]')
|
click(css: '.content.active .js-action [data-type="edit"]')
|
||||||
|
|
||||||
modal_ready()
|
modal_ready()
|
||||||
|
|
||||||
watch_for(
|
watch_for(
|
||||||
css: '.content.active .modal',
|
css: '.content.active .modal',
|
||||||
value: 'some note 123',
|
value: 'some note 123',
|
||||||
|
@ -54,6 +53,7 @@ class AgentProfilePermissionsTest < TestCase
|
||||||
value: 'some note abc',
|
value: 'some note abc',
|
||||||
)
|
)
|
||||||
click(css: '.content.active .modal button.js-submit')
|
click(css: '.content.active .modal button.js-submit')
|
||||||
|
modal_disappear()
|
||||||
|
|
||||||
watch_for(
|
watch_for(
|
||||||
css: '.content.active .profile-window',
|
css: '.content.active .profile-window',
|
||||||
|
@ -71,12 +71,12 @@ class AgentProfilePermissionsTest < TestCase
|
||||||
click(css: '.content.active .js-action [data-type="edit"]')
|
click(css: '.content.active .js-action [data-type="edit"]')
|
||||||
|
|
||||||
modal_ready()
|
modal_ready()
|
||||||
|
|
||||||
set(
|
set(
|
||||||
css: '.modal [name="lastname"]',
|
css: '.modal [name="lastname"]',
|
||||||
value: 'Braun',
|
value: 'Braun',
|
||||||
)
|
)
|
||||||
click(css: '.content.active .modal button.js-submit')
|
click(css: '.content.active .modal button.js-submit')
|
||||||
|
modal_disappear()
|
||||||
|
|
||||||
verify_task(
|
verify_task(
|
||||||
data: {
|
data: {
|
||||||
|
@ -188,18 +188,16 @@ class AgentProfilePermissionsTest < TestCase
|
||||||
click(css: '.content.active .sidebar[data-tab="customer"] .js-actions [data-type="customer-edit"]')
|
click(css: '.content.active .sidebar[data-tab="customer"] .js-actions [data-type="customer-edit"]')
|
||||||
|
|
||||||
modal_ready()
|
modal_ready()
|
||||||
|
|
||||||
set(
|
set(
|
||||||
css: '.modal [name="lastname"]',
|
css: '.modal [name="lastname"]',
|
||||||
value: 'B2',
|
value: 'B2',
|
||||||
)
|
)
|
||||||
|
|
||||||
set(
|
set(
|
||||||
css: '.modal [data-name="note"]',
|
css: '.modal [data-name="note"]',
|
||||||
value: 'some note abc',
|
value: 'some note abc',
|
||||||
)
|
)
|
||||||
|
|
||||||
click(css: '.content.active .modal button.js-submit')
|
click(css: '.content.active .modal button.js-submit')
|
||||||
|
modal_disappear()
|
||||||
|
|
||||||
watch_for(
|
watch_for(
|
||||||
css: '.content.active .sidebar[data-tab="customer"] .sidebar-block [data-name="note"]',
|
css: '.content.active .sidebar[data-tab="customer"] .sidebar-block [data-name="note"]',
|
||||||
|
@ -216,7 +214,6 @@ class AgentProfilePermissionsTest < TestCase
|
||||||
click(css: 'li[data-type="customer-edit"]')
|
click(css: 'li[data-type="customer-edit"]')
|
||||||
|
|
||||||
modal_ready()
|
modal_ready()
|
||||||
|
|
||||||
set(
|
set(
|
||||||
css: '.modal [name="lastname"]',
|
css: '.modal [name="lastname"]',
|
||||||
value: 'Braun',
|
value: 'Braun',
|
||||||
|
@ -226,6 +223,7 @@ class AgentProfilePermissionsTest < TestCase
|
||||||
value: 'some note abc',
|
value: 'some note abc',
|
||||||
)
|
)
|
||||||
click(css: '.content.active .modal button.js-submit')
|
click(css: '.content.active .modal button.js-submit')
|
||||||
|
modal_disappear()
|
||||||
|
|
||||||
watch_for(
|
watch_for(
|
||||||
css: '.content.active .sidebar[data-tab="customer"] .sidebar-block [data-name="note"]',
|
css: '.content.active .sidebar[data-tab="customer"] .sidebar-block [data-name="note"]',
|
||||||
|
@ -279,7 +277,6 @@ class AgentProfilePermissionsTest < TestCase
|
||||||
click(css: '.content.active .js-action [data-type="edit"]')
|
click(css: '.content.active .js-action [data-type="edit"]')
|
||||||
|
|
||||||
modal_ready()
|
modal_ready()
|
||||||
|
|
||||||
set(
|
set(
|
||||||
css: '.modal [name="lastname"]',
|
css: '.modal [name="lastname"]',
|
||||||
value: 'B2',
|
value: 'B2',
|
||||||
|
@ -289,6 +286,7 @@ class AgentProfilePermissionsTest < TestCase
|
||||||
value: 'some note abc',
|
value: 'some note abc',
|
||||||
)
|
)
|
||||||
click(css: '.content.active .modal button.js-submit')
|
click(css: '.content.active .modal button.js-submit')
|
||||||
|
modal_disappear()
|
||||||
|
|
||||||
watch_for(
|
watch_for(
|
||||||
css: '.content.active .profile-window',
|
css: '.content.active .profile-window',
|
||||||
|
@ -306,7 +304,6 @@ class AgentProfilePermissionsTest < TestCase
|
||||||
click(css: '.content.active .js-action [data-type="edit"]')
|
click(css: '.content.active .js-action [data-type="edit"]')
|
||||||
|
|
||||||
modal_ready()
|
modal_ready()
|
||||||
|
|
||||||
set(
|
set(
|
||||||
css: '.modal [name="lastname"]',
|
css: '.modal [name="lastname"]',
|
||||||
value: 'Braun',
|
value: 'Braun',
|
||||||
|
@ -316,6 +313,7 @@ class AgentProfilePermissionsTest < TestCase
|
||||||
value: 'note',
|
value: 'note',
|
||||||
)
|
)
|
||||||
click(css: '.content.active .modal button.js-submit')
|
click(css: '.content.active .modal button.js-submit')
|
||||||
|
modal_disappear()
|
||||||
|
|
||||||
verify_task(
|
verify_task(
|
||||||
data: {
|
data: {
|
||||||
|
|
Loading…
Reference in a new issue