class Capybara::RackTest::Driver

Constants

DEFAULT_OPTIONS

Attributes

app[R]
options[R]

Public Class Methods

new(app, **options) click to toggle source
Calls superclass method
# File lib/capybara/rack_test/driver.rb, line 17
def initialize(app, **options)
  raise ArgumentError, 'rack-test requires a rack application, but none was given' unless app

  super()
  @app = app
  @options = DEFAULT_OPTIONS.merge(options)
end

Public Instance Methods

browser() click to toggle source
# File lib/capybara/rack_test/driver.rb, line 25
def browser
  @browser ||= Capybara::RackTest::Browser.new(self)
end
current_url() click to toggle source
# File lib/capybara/rack_test/driver.rb, line 61
def current_url
  browser.current_url
end
delete(*args, &block) click to toggle source
# File lib/capybara/rack_test/driver.rb, line 104
def delete(*args, &block); browser.delete(*args, &block); end
dom() click to toggle source
# File lib/capybara/rack_test/driver.rb, line 89
def dom
  browser.dom
end
find_css(selector) click to toggle source
# File lib/capybara/rack_test/driver.rb, line 77
def find_css(selector)
  browser.find(:css, selector)
rescue Nokogiri::CSS::SyntaxError
  raise unless selector.include?(' i]')

  raise ArgumentError, "This driver doesn't support case insensitive attribute matching when using CSS base selectors"
end
find_xpath(selector) click to toggle source
# File lib/capybara/rack_test/driver.rb, line 73
def find_xpath(selector)
  browser.find(:xpath, selector)
end
follow(method, path, **attributes) click to toggle source
# File lib/capybara/rack_test/driver.rb, line 57
def follow(method, path, **attributes)
  browser.follow(method, path, attributes)
end
follow_redirects?() click to toggle source
# File lib/capybara/rack_test/driver.rb, line 29
def follow_redirects?
  @options[:follow_redirects]
end
get(*args, &block) click to toggle source
# File lib/capybara/rack_test/driver.rb, line 101
def get(*args, &block); browser.get(*args, &block); end
header(key, value) click to toggle source
# File lib/capybara/rack_test/driver.rb, line 105
def header(key, value); browser.header(key, value); end
html() click to toggle source
# File lib/capybara/rack_test/driver.rb, line 85
def html
  browser.html
end
invalid_element_errors() click to toggle source
# File lib/capybara/rack_test/driver.rb, line 107
def invalid_element_errors
  [Capybara::RackTest::Errors::StaleElementReferenceError]
end
post(*args, &block) click to toggle source
# File lib/capybara/rack_test/driver.rb, line 102
def post(*args, &block); browser.post(*args, &block); end
put(*args, &block) click to toggle source
# File lib/capybara/rack_test/driver.rb, line 103
def put(*args, &block); browser.put(*args, &block); end
redirect_limit() click to toggle source
# File lib/capybara/rack_test/driver.rb, line 33
def redirect_limit
  @options[:redirect_limit]
end
refresh() click to toggle source
# File lib/capybara/rack_test/driver.rb, line 49
def refresh
  browser.refresh
end
request() click to toggle source
# File lib/capybara/rack_test/driver.rb, line 41
def request
  browser.last_request
end
reset!() click to toggle source
# File lib/capybara/rack_test/driver.rb, line 97
def reset!
  @browser = nil
end
response() click to toggle source
# File lib/capybara/rack_test/driver.rb, line 37
def response
  browser.last_response
end
response_headers() click to toggle source
# File lib/capybara/rack_test/driver.rb, line 65
def response_headers
  response.headers
end
status_code() click to toggle source
# File lib/capybara/rack_test/driver.rb, line 69
def status_code
  response.status
end
submit(method, path, attributes) click to toggle source
# File lib/capybara/rack_test/driver.rb, line 53
def submit(method, path, attributes)
  browser.submit(method, path, attributes)
end
title() click to toggle source
# File lib/capybara/rack_test/driver.rb, line 93
def title
  browser.title
end
visit(path, **attributes) click to toggle source
# File lib/capybara/rack_test/driver.rb, line 45
def visit(path, **attributes)
  browser.visit(path, **attributes)
end