Module: Capybara::Searchable
Instance Method Summary collapse
- #all(*args) ⇒ Object
- #find(*args) ⇒ Object
- #find_button(locator) ⇒ Object
- #find_by_id(id) ⇒ Object
- #find_field(locator) ⇒ Object (also: #field_labeled)
- #find_link(locator) ⇒ Object
Instance Method Details
#all(*args) ⇒ Object
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/capybara/searchable.rb', line 24 def all(*args) = if args.last.is_a?(Hash) then args.pop else {} end if args[1].nil? kind, locator = Capybara.default_selector, args.first else kind, locator = args end locator = XPath.from_css(locator) if kind == :css results = all_unfiltered(locator) if [:text] [:text] = Regexp.escape([:text]) unless [:text].kind_of?(Regexp) results = results.select { |n| n.text.match([:text]) } end if [:visible] or Capybara.ignore_hidden_elements results = results.select { |n| n.visible? } end results end |
#find(*args) ⇒ Object
3 4 5 |
# File 'lib/capybara/searchable.rb', line 3 def find(*args) all(*args).first end |
#find_button(locator) ⇒ Object
16 17 18 |
# File 'lib/capybara/searchable.rb', line 16 def (locator) find(:xpath, XPath.(locator)) end |
#find_by_id(id) ⇒ Object
20 21 22 |
# File 'lib/capybara/searchable.rb', line 20 def find_by_id(id) find(:css, "##{id}") end |