agent_navigation_and_title_test.rb 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. # encoding: utf-8
  2. require 'browser_test_helper'
  3. class AgentNavigationAndTitleTest < TestCase
  4. def test_highlight_and_title
  5. @browser = browser_instance
  6. login(
  7. username: 'master@example.com',
  8. password: 'test',
  9. url: browser_url,
  10. )
  11. tasks_close_all()
  12. # dashboard after login
  13. verify_title(value: 'dashboard')
  14. exists(css: '#navigation .js-menu .js-dashboardMenuItem.is-active')
  15. exists_not(css: '#navigation .tasks .js-item.is-active')
  16. execute(js: 'App.Event.trigger("ui:rerender")')
  17. sleep 1
  18. verify_title(value: 'dashboard')
  19. exists(css: '#navigation .js-menu .js-dashboardMenuItem.is-active')
  20. exists_not(css: '#navigation .tasks .js-item.is-active')
  21. reload()
  22. sleep 2
  23. verify_title(value: 'dashboard')
  24. exists(css: '#navigation .js-menu .js-dashboardMenuItem.is-active')
  25. exists_not(css: '#navigation .tasks .js-item.is-active')
  26. # ticket create screen
  27. ticket_create(
  28. data: {
  29. customer: 'nico',
  30. group: 'Users',
  31. title: 'ticket create #1',
  32. body: 'ticket create #1',
  33. },
  34. do_not_submit: true,
  35. )
  36. sleep 4
  37. verify_title(value: 'Call Inbound')
  38. verify_task(
  39. data: {
  40. title: 'Call Inbound: ticket create #1',
  41. }
  42. )
  43. exists_not(css: '#navigation .js-menu .is-active')
  44. execute(js: 'App.Event.trigger("ui:rerender")')
  45. sleep 1
  46. verify_title(value: 'Call Inbound')
  47. verify_task(
  48. data: {
  49. title: 'Call Inbound: ticket create #1',
  50. }
  51. )
  52. exists_not(css: '#navigation .js-menu .is-active')
  53. reload()
  54. sleep 2
  55. verify_title(value: 'Call Inbound')
  56. verify_task(
  57. data: {
  58. title: 'Call Inbound: ticket create #1',
  59. }
  60. )
  61. exists_not(css: '#navigation .js-menu .is-active')
  62. # ticket zoom screen
  63. ticket1 = ticket_create(
  64. data: {
  65. customer: 'nico',
  66. group: 'Users',
  67. state: 'closed',
  68. title: 'ticket create #2',
  69. body: 'ticket create #2',
  70. },
  71. )
  72. verify_title(value: 'ticket create #2')
  73. verify_task(
  74. data: {
  75. title: 'ticket create #2',
  76. }
  77. )
  78. exists_not(css: '#navigation .js-menu .is-active')
  79. execute(js: 'App.Event.trigger("ui:rerender")')
  80. sleep 1
  81. verify_title(value: 'ticket create #2')
  82. verify_task(
  83. data: {
  84. title: 'ticket create #2',
  85. }
  86. )
  87. exists_not(css: '#navigation .js-menu .is-active')
  88. reload()
  89. sleep 2
  90. verify_title(value: 'ticket create #2')
  91. verify_task(
  92. data: {
  93. title: 'ticket create #2',
  94. }
  95. )
  96. exists_not(css: '#navigation .js-menu .is-active')
  97. # dashboard again
  98. click(css: '#navigation a[href="#dashboard"]')
  99. verify_title(value: 'dashboard')
  100. exists(css: '#navigation .js-menu .js-dashboardMenuItem.is-active')
  101. exists_not(css: '#navigation .tasks .js-item.is-active')
  102. execute(js: 'App.Event.trigger("ui:rerender")')
  103. sleep 1
  104. verify_title(value: 'dashboard')
  105. exists(css: '#navigation .js-menu .js-dashboardMenuItem.is-active')
  106. exists_not(css: '#navigation .tasks .js-item.is-active')
  107. reload()
  108. sleep 2
  109. verify_title(value: 'dashboard')
  110. exists(css: '#navigation .js-menu .js-dashboardMenuItem.is-active')
  111. exists_not(css: '#navigation .tasks .js-item.is-active')
  112. execute(js: 'App.Event.trigger("ui:rerender")')
  113. sleep 1
  114. verify_title(value: 'dashboard')
  115. exists(css: '#navigation .js-menu .js-dashboardMenuItem.is-active')
  116. exists_not(css: '#navigation .tasks .js-item.is-active')
  117. # click on admin
  118. click(css: 'a[href = "#manage"]')
  119. verify_title(value: 'Users')
  120. exists_not(css: '#navigation .js-menu .is-active')
  121. exists_not(css: '#navigation .tasks .js-item.is-active')
  122. execute(js: 'App.Event.trigger("ui:rerender")')
  123. sleep 1
  124. verify_title(value: 'Users')
  125. exists_not(css: '#navigation .js-menu .is-active')
  126. exists_not(css: '#navigation .tasks .js-item.is-active')
  127. reload()
  128. sleep 2
  129. verify_title(value: 'Users')
  130. exists_not(css: '#navigation .js-menu .is-active')
  131. exists_not(css: '#navigation .tasks .js-item.is-active')
  132. execute(js: 'App.Event.trigger("ui:rerender")')
  133. sleep 1
  134. verify_title(value: 'Users')
  135. exists_not(css: '#navigation .js-menu .is-active')
  136. exists_not(css: '#navigation .tasks .js-item.is-active')
  137. end
  138. end