class Selenium::WebDriver::Remote::Response

@api private

Attributes

code[R]
payload[RW]

Public Class Methods

new(code, payload = nil) click to toggle source
# File lib/selenium/webdriver/remote/response.rb, line 11
def initialize(code, payload = nil)
  @code    = code
  @payload = payload || {}

  assert_ok
end

Public Instance Methods

[](key) click to toggle source
# File lib/selenium/webdriver/remote/response.rb, line 44
def [](key)
  @payload[key]
end
error() click to toggle source
# File lib/selenium/webdriver/remote/response.rb, line 18
def error
  klass = Error.for_code(status) || return

  ex = klass.new(error_message)
  ex.set_backtrace(caller)
  add_backtrace ex

  ex
end
error_message() click to toggle source
# File lib/selenium/webdriver/remote/response.rb, line 28
def error_message
  val = value

  case val
  when Hash
    msg = val['message'] or return "unknown error"
    msg << " (#{ val['class'] })" if val['class']
  when String
    msg = val
  else
    msg = "unknown error, status=#{status}: #{val.inspect}"
  end

  msg
end