class Capybara::Wheel::ElementFactory

Public Class Methods

create_element(selector, parent_element, block = nil) click to toggle source

TODO: Pass object not an instance

# File lib/capybara/wheel/element_factory.rb, line 24
def self.create_element(selector, parent_element, block = nil)
  subelement = Capybara::Wheel::Element.new(selector, parent_element)
  subelement.instance_eval(&block) if block

  subelement
end
create_element_klass(selector, options = {}, block = nil) click to toggle source
# File lib/capybara/wheel/element_factory.rb, line 7
def self.create_element_klass(selector, options = {}, block = nil)
  subclass = Class.new(Capybara::Wheel::Element)

  _selector = selector
  _options = options

  subclass.class_exec do
    define_method(:selector) { @selector = _selector }
    define_method(:options) { @options = _options }
  end

  subclass.class_eval(&block) if block

  subclass
end