trabajo-afectivo/test/browser/agent_ticket_actions_level5_test.rb

576 lines
15 KiB
Ruby
Raw Normal View History

# encoding: utf-8
require 'browser_test_helper'
2014-08-18 07:00:23 +00:00
class AgentTicketActionLevel5Test < TestCase
def test_I
2014-09-09 23:42:20 +00:00
random = 'text_module_test_' + rand(99999999).to_s
random2 = 'text_module_test_' + rand(99999999).to_s
# user
tests = [
{
:name => 'add #1',
:action => [
{
:execute => 'close_all_tasks',
},
{
:execute => 'click',
2013-08-06 20:08:32 +00:00
:css => 'a[href="#manage"]',
},
{
:execute => 'click',
2013-08-06 20:08:32 +00:00
:css => 'a[href="#manage/text_modules"]',
},
{
:execute => 'click',
:css => 'a[data-type="new"]',
},
2014-12-02 07:41:22 +00:00
{
:execute => 'wait',
:value => 1,
},
{
:execute => 'set',
2013-08-06 20:08:32 +00:00
:css => '.modal input[name=name]',
:value => 'some name' + random,
},
{
:execute => 'set',
2013-08-06 20:08:32 +00:00
:css => '.modal input[name="keywords"]',
:value => random,
},
{
:execute => 'set',
2013-08-06 20:08:32 +00:00
:css => '.modal textarea[name="content"]',
:value => 'some content' + random,
},
{
:execute => 'click',
2014-09-16 18:57:55 +00:00
:css => '.modal button.js-submit',
},
{
2014-12-03 10:01:04 +00:00
:execute => 'watch_for',
:area => '#content table',
:value => 'some name' + random,
},
{
2014-12-03 10:01:04 +00:00
:execute => 'watch_for_disappear',
:area => '.modal',
},
],
},
{
:name => 'add #2',
:action => [
{
:execute => 'click',
2013-08-06 20:08:32 +00:00
:css => 'a[href="#manage"]',
},
{
:execute => 'click',
2013-08-06 20:08:32 +00:00
:css => 'a[href="#manage/text_modules"]',
},
{
:execute => 'click',
:css => 'a[data-type="new"]',
},
2014-12-02 07:41:22 +00:00
{
:execute => 'wait',
:value => 1,
},
{
:execute => 'set',
2013-08-06 20:08:32 +00:00
:css => '.modal input[name=name]',
:value => 'some name' + random2,
},
{
:execute => 'set',
2013-08-06 20:08:32 +00:00
:css => '.modal input[name="keywords"]',
:value => random2,
},
{
:execute => 'set',
2013-08-06 20:08:32 +00:00
:css => '.modal textarea[name="content"]',
:value => 'some content' + random2,
},
{
:execute => 'click',
2014-09-16 18:57:55 +00:00
:css => '.modal button.js-submit',
},
{
2014-12-03 10:01:04 +00:00
:execute => 'watch_for',
:area => '#content table',
:value => 'some name' + random2,
},
{
2014-12-03 10:01:04 +00:00
:execute => 'watch_for_disappear',
:area => '.modal',
},
],
},
{
:name => 'verify usage',
:action => [
{
:execute => 'click',
:css => 'a[href="#new"]',
},
{
:execute => 'click',
2014-09-15 09:06:13 +00:00
:css => 'a[href="#ticket/create"]',
},
{
:execute => 'wait',
:value => 2,
},
{
:execute => 'set',
2014-10-03 22:39:54 +00:00
:css => '.active [data-name="body"]',
2014-10-14 00:13:19 +00:00
:value => 'test ::' + random,
},
{
2014-12-03 10:01:04 +00:00
:execute => 'watch_for',
:area => '.active .shortcut',
:value => random,
},
{
2014-10-11 23:35:53 +00:00
:execute => 'sendkey',
2014-12-02 23:55:51 +00:00
:value => [:arrow_down]
},
{
:execute => 'click',
:css => '.active .shortcut > ul> li > a',
},
{
:execute => 'wait',
:value => 1,
},
{
:execute => 'match',
2014-10-03 22:39:54 +00:00
:css => '.active [data-name="body"]',
:value => 'some content' + random,
:match_result => true,
},
],
},
]
browser_signle_test_with_login(tests, { :username => 'master@example.com' })
end
def test_II
2014-09-09 23:42:20 +00:00
random = 'text_II_module_test_' + rand(99999999).to_s
2014-09-09 23:42:20 +00:00
user_rand = rand(99999999).to_s
2014-08-15 08:59:40 +00:00
login = 'agent-text-module-' + user_rand
firstname = 'Text' + user_rand
lastname = 'Module' + user_rand
email = 'agent-text-module-' + user_rand + '@example.com'
password = 'agentpw'
# user
tests = [
{
:name => 'start',
:instance1 => browser_instance,
:instance2 => browser_instance,
:instance1_username => 'master@example.com',
:instance1_password => 'test',
:instance2_username => 'agent1@example.com',
:instance2_password => 'test',
:action => [
# create ticket
{
:where => :instance2,
:execute => 'close_all_tasks',
},
{
2014-10-14 00:13:19 +00:00
:where => :instance2,
:execute => 'create_ticket',
:subject => 'A',
:customer => '',
:do_not_submit => true,
2013-07-17 21:23:31 +00:00
},
{
2014-10-14 00:13:19 +00:00
:where => :instance2,
:execute => 'create_ticket',
:customer => '',
:subject => 'B',
:do_not_submit => true,
},
# create new text module
{
:where => :instance1,
:execute => 'click',
2013-08-06 20:08:32 +00:00
:css => 'a[href="#manage"]',
},
{
:where => :instance1,
:execute => 'click',
2013-08-06 20:08:32 +00:00
:css => 'a[href="#manage/text_modules"]',
},
{
:where => :instance1,
:execute => 'click',
:css => 'a[data-type="new"]',
},
2014-12-02 07:41:22 +00:00
{
:execute => 'wait',
:value => 1,
},
{
:where => :instance1,
:execute => 'set',
2013-08-06 20:08:32 +00:00
:css => '.modal input[name=name]',
:value => 'some name' + random,
},
{
:where => :instance1,
:execute => 'set',
2013-08-06 20:08:32 +00:00
:css => '.modal input[name="keywords"]',
:value => random,
},
{
:where => :instance1,
:execute => 'set',
2013-08-06 20:08:32 +00:00
:css => '.modal textarea[name="content"]',
:value => 'some content <%= @ticket.customer.lastname %>' + random,
},
{
:where => :instance1,
:execute => 'click',
2014-09-16 18:57:55 +00:00
:css => '.modal button.js-submit',
},
{
2014-12-03 10:01:04 +00:00
:where => :instance1,
:execute => 'watch_for',
:area => '#content table',
:value => random,
},
{
:where => :instance1,
2014-12-03 10:01:04 +00:00
:execute => 'watch_for_disappear',
:area => '.modal',
},
],
},
2014-08-15 08:59:40 +00:00
# create user
{
:name => 'create user',
:action => [
{
2014-12-03 10:01:04 +00:00
:where => :instance1,
:execute => 'create_user',
:login => login,
:firstname => firstname,
:lastname => lastname,
:email => email,
:password => password,
2014-08-15 08:59:40 +00:00
},
],
},
{
:name => 'check if text module exists in instance2, for ready to use',
:action => [
{
:execute => 'wait',
2013-08-19 15:26:44 +00:00
:value => 4,
},
{
:where => :instance2,
:execute => 'set',
2014-10-03 22:39:54 +00:00
:css => '.active [data-name="body"]',
:value => '::' + random,
},
{
:where => :instance2,
:execute => 'wait',
2014-10-14 00:13:19 +00:00
:value => 2,
},
{
:where => :instance2,
:execute => 'match',
:css => 'body',
:value => random,
:match_result => true,
},
{
:where => :instance2,
2014-10-11 23:35:53 +00:00
:execute => 'sendkey',
2014-12-02 23:55:51 +00:00
:value => [:arrow_down]
},
{
:where => :instance2,
:execute => 'click',
:css => '.active .shortcut > ul> li > a',
},
{
:where => :instance2,
:execute => 'wait',
:value => 1,
},
{
:where => :instance2,
:execute => 'match',
2014-10-03 22:39:54 +00:00
:css => '.active [data-name="body"]',
:value => 'some content ' + random,
:match_result => true,
},
{
:execute => 'wait',
:value => 3,
},
{
:where => :instance2,
:execute => 'set',
2014-10-11 23:35:53 +00:00
:css => '.active .newTicket input[name="customer_id_completion"]',
:value => 'nicole',
},
{
:execute => 'wait',
:value => 4,
},
{
:where => :instance2,
:execute => 'sendkey',
2014-12-02 21:34:46 +00:00
:value => [:arrow_down]
},
{
:where => :instance2,
:execute => 'click',
:css => '.active .newTicket .recipientList-entry.js-user.is-active',
},
{
:where => :instance2,
:execute => 'wait',
:value => 1,
},
{
:where => :instance2,
:execute => 'set',
2014-10-03 22:39:54 +00:00
:css => '.active [data-name="body"]',
:value => '::' + random,
},
{
:where => :instance2,
:execute => 'wait',
:value => 1,
},
{
:where => :instance2,
2014-10-11 23:35:53 +00:00
:execute => 'sendkey',
2014-12-02 23:55:51 +00:00
:value => [:arrow_down]
},
{
:where => :instance2,
:execute => 'click',
:css => '.active .shortcut > ul> li > a',
},
{
:where => :instance2,
:execute => 'wait',
:value => 1,
},
{
:where => :instance2,
:execute => 'match',
2014-10-03 22:39:54 +00:00
:css => '.active [data-name="body"]',
:value => 'some content Braun' + random,
:match_result => true,
},
],
},
{
:name => 'verify zoom',
:action => [
{
:where => :instance1,
:execute => 'click',
:css => 'a[href="#manage"]',
},
# create ticket
{
:where => :instance2,
:execute => 'create_ticket',
:group => 'Users',
:subject => 'some subject 123äöü',
:body => 'some body 123äöü',
},
# check ticket
{
:where => :instance2,
:execute => 'match',
2013-10-01 22:41:56 +00:00
:css => '.active div.ticket-article',
:value => 'some body 123äöü',
:match_result => true,
},
# check ticket zoom
{
:execute => 'wait',
:value => 4,
},
2013-08-19 15:26:44 +00:00
{
:where => :instance2,
:execute => 'set',
2014-10-03 22:39:54 +00:00
:css => '.active [data-name="body"]',
2013-08-19 15:26:44 +00:00
:value => 'test',
},
{
:execute => 'wait',
2014-09-09 23:42:20 +00:00
:value => 2,
2013-08-19 15:26:44 +00:00
},
{
:where => :instance2,
:execute => 'set',
2014-10-03 22:39:54 +00:00
:css => '.active [data-name="body"]',
:value => '::' + random,
},
{
:execute => 'wait',
2014-10-14 00:13:19 +00:00
:value => 2,
},
{
:where => :instance2,
:execute => 'match',
:css => 'body',
:value => random,
:match_result => true,
},
{
:where => :instance2,
2014-10-11 23:35:53 +00:00
:execute => 'sendkey',
2014-12-02 23:55:51 +00:00
:value => [:arrow_down]
},
{
:where => :instance2,
:execute => 'click',
:css => '.active .shortcut > ul> li > a',
},
{
:execute => 'wait',
:value => 1,
},
{
:where => :instance2,
:execute => 'match',
2014-10-03 22:39:54 +00:00
:css => '.active [data-name="body"]',
2013-08-19 15:26:44 +00:00
:value => 'some content Braun' + random,
:match_result => true,
},
],
},
2014-08-14 09:04:02 +00:00
{
:name => 'change customer',
:action => [
{
:where => :instance1,
:execute => 'click',
:css => 'a[href="#manage"]',
},
2014-08-14 09:04:02 +00:00
{
:where => :instance2,
:execute => 'click',
2014-12-01 20:04:37 +00:00
:css => '.active div[data-tab="ticket"] .js-actions .select-arrow',
2014-08-14 09:04:02 +00:00
},
{
:where => :instance2,
:execute => 'click',
2014-12-01 20:04:37 +00:00
:css => '.active div[data-tab="ticket"] .js-actions a[data-type="customer-change"]',
2014-08-14 09:04:02 +00:00
},
{
:execute => 'wait',
:value => 1,
},
{
:where => :instance2,
:execute => 'set',
2014-10-14 00:13:19 +00:00
:css => '.modal [name="customer_id_completion"]',
2014-08-15 12:33:03 +00:00
:value => firstname,
2014-08-14 09:04:02 +00:00
},
{
:execute => 'wait',
:value => 4,
},
{
:where => :instance2,
:execute => 'sendkey',
2014-12-02 21:34:46 +00:00
:value => [:arrow_down]
},
{
:where => :instance2,
:execute => 'click',
:css => '.modal .recipientList-entry.js-user.is-active',
2014-08-14 09:04:02 +00:00
},
{
:where => :instance2,
:execute => 'wait',
:value => 1,
},
{
:where => :instance2,
:execute => 'click',
2014-10-14 00:13:19 +00:00
:css => '.modal-content .js-submit',
2014-08-14 09:04:02 +00:00
},
{
:where => :instance2,
:execute => 'wait',
:value => 4,
},
{
:where => :instance2,
:execute => 'set',
2014-10-03 22:39:54 +00:00
:css => '.active [data-name="body"]',
2014-08-14 09:04:02 +00:00
:value => '::' + random,
},
{
:execute => 'wait',
2014-10-14 00:13:19 +00:00
:value => 2,
2014-08-18 07:00:23 +00:00
},
# {
# :where => :instance2,
# :execute => 'match',
# :css => 'body',
# :value => random,
# :match_result => true,
# },
2014-08-14 09:04:02 +00:00
{
:where => :instance2,
2014-10-11 23:35:53 +00:00
:execute => 'sendkey',
2014-12-02 23:55:51 +00:00
:value => [:arrow_down]
},
{
:where => :instance2,
:execute => 'click',
:css => '.active .shortcut > ul> li > a',
2014-08-14 09:04:02 +00:00
},
{
:execute => 'wait',
:value => 1,
},
{
:where => :instance2,
:execute => 'match',
2014-10-03 22:39:54 +00:00
:css => '.active [data-name="body"]',
2014-08-15 08:59:40 +00:00
:value => 'some content ' + lastname,
2014-08-14 09:04:02 +00:00
:match_result => true,
},
2014-08-15 12:33:03 +00:00
{
:execute => 'wait',
:value => 2,
},
2014-08-14 09:04:02 +00:00
],
},
]
browser_double_test(tests)
end
end