Class: Capybara::Node::Base

Inherits:
Object
  • Object
show all
Includes:
Actions, Finders, Matchers
Defined in:
lib/capybara/node/base.rb

Overview

A Base represents either an element on a page through the subclass Element or a document through Document.

Both types of Node share the same methods, used for interacting with the elements on the page. These methods are divided into three categories, finders, actions and matchers. These are found in the modules Finders, Actions and Matchers respectively.

A Session exposes all methods from Document directly:

session = Capybara::Session.new(:rack_test, my_app)
session.visit('/')
session.fill_in('Foo', :with => 'Bar')    # from Capybara::Node::Actions
bar = session.find('#bar')                # from Capybara::Node::Finders
bar.select('Baz', :from => 'Quox')        # from Capybara::Node::Actions
session.has_css?('#foobar')               # from Capybara::Node::Matchers

Direct Known Subclasses

Document, Element

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Matchers

#has_button?, #has_checked_field?, #has_content?, #has_css?, #has_field?, #has_link?, #has_no_button?, #has_no_checked_field?, #has_no_content?, #has_no_css?, #has_no_field?, #has_no_link?, #has_no_select?, #has_no_selector?, #has_no_table?, #has_no_unchecked_field?, #has_no_xpath?, #has_select?, #has_selector?, #has_table?, #has_unchecked_field?, #has_xpath?

Methods included from Actions

#attach_file, #check, #choose, #click_button, #click_link, #click_link_or_button, #fill_in, #select, #uncheck, #unselect

Methods included from Finders

#all, #find, #find_button, #find_by_id, #find_field, #find_link, #first

Constructor Details

#initialize(session, base) ⇒ Base

Returns a new instance of Base.



31
32
33
34
# File 'lib/capybara/node/base.rb', line 31

def initialize(session, base)
  @session = session
  @base = base
end

Instance Attribute Details

#baseObject (readonly)

Returns the value of attribute base.



25
26
27
# File 'lib/capybara/node/base.rb', line 25

def base
  @base
end

#parentObject (readonly)

Returns the value of attribute parent.



25
26
27
# File 'lib/capybara/node/base.rb', line 25

def parent
  @parent
end

#sessionObject (readonly)

Returns the value of attribute session.



25
26
27
# File 'lib/capybara/node/base.rb', line 25

def session
  @session
end

Instance Method Details

#reloadObject



36
37
38
# File 'lib/capybara/node/base.rb', line 36

def reload
  self
end