|
21 | 21 |
|
22 | 22 | it 'supports filtering' do |
23 | 23 | find('input.ra-filtering-select-input').set('ge') |
24 | | - page.execute_script("$('input.ra-filtering-select-input').trigger('focus').trigger('keydown')") |
| 24 | + page.execute_script("document.querySelector('input.ra-filtering-select-input').dispatchEvent(new KeyboardEvent('keydown'))") |
25 | 25 | is_expected.to have_selector('ul.ui-autocomplete li.ui-menu-item a') |
26 | 26 | expect(all(:css, 'ul.ui-autocomplete li.ui-menu-item a').map(&:text)).to match_array ['Los Angeles Dodgers', 'Texas Rangers'] |
27 | 27 | find('input.ra-filtering-select-input').set('Los') |
28 | | - page.execute_script("$('input.ra-filtering-select-input').trigger('focus').trigger('keydown')") |
| 28 | + page.execute_script("document.querySelector('input.ra-filtering-select-input').dispatchEvent(new KeyboardEvent('keydown'))") |
29 | 29 | is_expected.to have_selector('ul.ui-autocomplete li.ui-menu-item a') |
30 | 30 | expect(all(:css, 'ul.ui-autocomplete li.ui-menu-item a').map(&:text)).to eq ['Los Angeles Dodgers'] |
31 | 31 | find('input.ra-filtering-select-input').set('Mets') |
32 | | - page.execute_script("$('input.ra-filtering-select-input').trigger('focus').trigger('keydown')") |
| 32 | + page.execute_script("document.querySelector('input.ra-filtering-select-input').dispatchEvent(new KeyboardEvent('keydown'))") |
33 | 33 | is_expected.to have_selector('ul.ui-autocomplete li.ui-menu-item a') |
34 | 34 | expect(all(:css, 'ul.ui-autocomplete li.ui-menu-item a').map(&:text)).to match_array ['No objects found'] |
35 | 35 | end |
36 | 36 |
|
37 | 37 | it 'sets id of the selected item' do |
38 | 38 | find('input.ra-filtering-select-input').set('Tex') |
39 | | - page.execute_script("$('input.ra-filtering-select-input').trigger('focus').trigger('keydown')") |
| 39 | + page.execute_script("document.querySelector('input.ra-filtering-select-input').dispatchEvent(new KeyboardEvent('keydown'))") |
40 | 40 | is_expected.to have_selector('ul.ui-autocomplete li.ui-menu-item a') |
41 | 41 | expect(page).to have_selector('ul.ui-autocomplete li.ui-menu-item a') |
42 | | - page.execute_script %{$('ul.ui-autocomplete li.ui-menu-item a:contains("Texas Rangers")').trigger('mouseenter').click()} |
| 42 | + page.execute_script %{[...document.querySelectorAll('ul.ui-autocomplete li.ui-menu-item')].find(e => e.innerText.includes("Texas Rangers")).click()} |
43 | 43 | expect(find('#player_team_id', visible: false).value).to eq teams[1].id.to_s |
44 | 44 | end |
45 | 45 | end |
|
49 | 49 | visit edit_path(model_name: 'player', id: player.id) |
50 | 50 | expect(find('#player_team_id', visible: false).value).to eq teams[0].id.to_s |
51 | 51 | find('input.ra-filtering-select-input').set('Tex') |
52 | | - page.execute_script("$('input.ra-filtering-select-input').trigger('focus').trigger('keydown')") |
| 52 | + page.execute_script("document.querySelector('input.ra-filtering-select-input').dispatchEvent(new KeyboardEvent('keydown'))") |
53 | 53 | is_expected.to have_selector('ul.ui-autocomplete li.ui-menu-item a') |
54 | 54 | expect(page).to have_selector('ul.ui-autocomplete li.ui-menu-item a') |
55 | | - page.execute_script %{$('ul.ui-autocomplete li.ui-menu-item a:contains("Texas Rangers")').trigger('mouseenter').click()} |
| 55 | + page.execute_script %{[...document.querySelectorAll('ul.ui-autocomplete li.ui-menu-item')].find(e => e.innerText.includes("Texas Rangers")).click()} |
56 | 56 | expect(find('#player_team_id', visible: false).value).to eq teams[1].id.to_s |
57 | 57 | end |
58 | 58 |
|
59 | 59 | it 'clears the current selection with making the search box empty' do |
60 | 60 | visit edit_path(model_name: 'player', id: player.id) |
61 | 61 | find('input.ra-filtering-select-input').set('') |
62 | | - page.execute_script("$('input.ra-filtering-select-input').trigger('keyup')") |
| 62 | + page.execute_script("document.querySelector('input.ra-filtering-select-input').dispatchEvent(new KeyboardEvent('keyup'))") |
63 | 63 | expect(find('#player_team_id', visible: false).value).to be_empty |
64 | 64 | end |
65 | 65 |
|
|
109 | 109 |
|
110 | 110 | it 'supports filtering' do |
111 | 111 | find('input.ra-filtering-select-input').set('ge') |
112 | | - page.execute_script("$('input.ra-filtering-select-input').trigger('focus').trigger('keydown')") |
| 112 | + page.execute_script("document.querySelector('input.ra-filtering-select-input').dispatchEvent(new KeyboardEvent('keydown'))") |
113 | 113 | is_expected.to have_selector('ul.ui-autocomplete li.ui-menu-item a') |
114 | 114 | expect(all(:css, 'ul.ui-autocomplete li.ui-menu-item a').map(&:text)).to match_array ['Los Angeles Dodgers', 'Texas Rangers'] |
115 | 115 | teams[0].update name: 'Cincinnati Reds' |
116 | 116 | find('input.ra-filtering-select-input').set('Red') |
117 | | - page.execute_script("$('input.ra-filtering-select-input').trigger('focus').trigger('keydown')") |
| 117 | + page.execute_script("document.querySelector('input.ra-filtering-select-input').dispatchEvent(new KeyboardEvent('keydown'))") |
118 | 118 | is_expected.to have_selector('ul.ui-autocomplete li.ui-menu-item a') |
119 | 119 | expect(all(:css, 'ul.ui-autocomplete li.ui-menu-item a').map(&:text)).to eq ['Cincinnati Reds'] |
120 | 120 | end |
|
0 commit comments