12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- # Copyright (C) 2012-2024 Zammad Foundation, https://zammad-foundation.org/
- require 'rails_helper'
- RSpec.describe 'Profile > Overviews', type: :system do
- def overview_names
- page.all('.overview-header .js-tabsHolder span.tab-name', visible: :all).map { |e| e.text(:all) }
- end
- def move_assigned_tickets_overview
- visit 'profile/overviews'
- overview_from = page.find('tr.item', text: 'My Assigned Tickets')
- overview_to = page.find('tr.item', text: 'Escalated Tickets')
- overview_from.drag_to overview_to
- await_empty_ajax_queue
- wait.until { User::OverviewSorting.where(user: current_user)&.last&.overview_id == Overview.find_by(name: 'My Assigned Tickets').id }
- end
- def expect_user_ticket_overview
- visit 'ticket/view'
- wait.until { overview_names.index('My Assigned Tickets') > overview_names.index('Escalated Tickets') }
- end
- def expect_default_ticket_overview
- visit 'ticket/view'
- wait.until { overview_names.index('My Assigned Tickets') < overview_names.index('Escalated Tickets') }
- end
- def reset_overview_order
- visit 'profile/overviews'
- page.find('a[data-type=reset]').click
- wait.until { User::OverviewSorting.where(user: current_user).count.zero? }
- end
- it 'does provide drag and drop and reorder functionality' do
- # move "My Assigned Tickets" after "Escalated Tickets"
- move_assigned_tickets_overview
- # go to ticket overviews and verify
- expect_user_ticket_overview
- # go back and reset order
- reset_overview_order
- # go to ticket overviews and verify
- expect_default_ticket_overview
- end
- end
|