Module: CapybaraSelect2::Helpers
- Defined in:
- lib/capybara_select2/helpers.rb
Class Method Summary collapse
- .select2_clear(options) ⇒ Object
- .select2_close(options = {}) ⇒ Object
- .select2_open(options) ⇒ Object
- .select2_search(text, options) ⇒ Object
- .select2_select(value, options) ⇒ Object
Class Method Details
.select2_clear(options) ⇒ Object
53 54 55 56 57 58 59 60 61 62 63 |
# File 'lib/capybara_select2/helpers.rb', line 53 def select2_clear() = .dup [:from] ||= [:label] Utils.() container = Utils.find_select2_container(, page) version = Utils.detect_select2_version(container) remove_option_selector = Selectors.remove_option_selector(version) container.all(remove_option_selector).map(&:click) end |
.select2_close(options = {}) ⇒ Object
21 22 23 |
# File 'lib/capybara_select2/helpers.rb', line 21 def select2_close( = {}) page.find(:css, 'body').click end |
.select2_open(options) ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 19 |
# File 'lib/capybara_select2/helpers.rb', line 8 def select2_open() = .dup [:from] ||= [:label] Utils.() _page = [:page] || page container = [:container] || Utils.find_select2_container(, _page) version = [:version] || Utils.detect_select2_version(container) opener_selector = Selectors.opener_selector(version) container.find(:css, opener_selector).click end |
.select2_search(text, options) ⇒ Object
25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/capybara_select2/helpers.rb', line 25 def select2_search(text, ) = .dup [:from] ||= [:label] Utils.() _page = [:page] || page container = [:container] || Utils.find_select2_container(, _page) version = [:version] || Utils.detect_select2_version(container) search_input_selector = Selectors.search_input_selector(version) _page.find(:xpath, '//body').find(:css, search_input_selector).set text end |
.select2_select(value, options) ⇒ Object
38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
# File 'lib/capybara_select2/helpers.rb', line 38 def select2_select(value, ) Utils.() _page = [:page] || page container = [:container] || Utils.find_select2_container(, _page) version = [:version] || Utils.detect_select2_version(container) option_selector = Selectors.option_selector(version) = { text: value } [:match] = [:match] if [:match] [:exact_text] = [:exact_text] if [:exact_text] _page.find(:xpath, '//body').find(:css, option_selector, ).click end |