Module: Capybara::Pagemap::Button

Included in:
Capybara::Pagemap
Defined in:
lib/capybara/pagemap/button.rb

Overview

Button build methods for clickable DOM elements

Defined Under Namespace

Modules: ClassMethods

Instance Method Summary collapse

Instance Method Details

#button_method_missing(method_name, *_, &_block) ⇒ Object



18
19
20
21
22
# File 'lib/capybara/pagemap/button.rb', line 18

def button_method_missing(method_name, *_, &_block)
  return unless /(?<key>.*)_button$/ =~ method_name && self.class.node_definitions[key.to_sym] && self.class.node_definitions[key.to_sym][:type] == :button
  build_button(key.to_sym)
  send(method_name)
end

#button_respond_to_missing?(method_name, _include_private = false) ⇒ Boolean

Returns:

  • (Boolean)


24
25
26
# File 'lib/capybara/pagemap/button.rb', line 24

def button_respond_to_missing?(method_name, _include_private = false)
  /(?<key>.*)_button$/ =~ method_name && self.class.node_definitions[key.to_sym]
end

#button_validator_for(node) ⇒ Object



14
15
16
# File 'lib/capybara/pagemap/button.rb', line 14

def button_validator_for(node)
  !send("#{node}_button").nil?
end