Sha256: 3e140fb171d1cef3bc92ac9bc561030fbe76ba409aec920650e1df9cdfd9c98f
Contents?: true
Size: 917 Bytes
Versions: 1
Compression:
Stored size: 917 Bytes
Contents
RSpec.describe 'ActiveAdmin::SortableTable', type: :feature do let!(:bottom) { Category.create!(name: 'bottom', position: 0) } let!(:top) { Category.create!(name: 'top', position: 1) } let!(:middle) { Category.create!(name: 'middle', position: 2) } before do visit admin_categories_path end it 'reorder elements by dragging vertically', js: true do expect(displayed_names).to eq(%w(top middle bottom)) drag_element(middle, dy: -200) expect(displayed_names).to eq(%w(middle top bottom)) expect(Category.order(:position).map(&:name)).to eq(%w(middle top bottom)) end private def displayed_names all('.ui-sortable-handle .col-name').map(&:text) end def drag_element(element, options) wait_for_ajax do options.reverse_merge! moves: 20 page.execute_script(%($("#category_#{element.id} .handle").simulate("drag", #{options.to_json} ))) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
activeadmin_sortable_table-1.0.0 | spec/features/activeadmin_sortable_table_spec.rb |