class Capybara::Apparition::DevToolsProtocol::Session

Attributes

browser[R]
connection[R]
session_id[R]

Public Class Methods

new(browser, connection, session_id) click to toggle source
# File lib/capybara/apparition/dev_tools_protocol/session.rb, line 8
def initialize(browser, connection, session_id)
  @browser = browser
  @connection = connection
  @session_id = session_id
  @handlers = []
end

Public Instance Methods

async_command(name, **params) click to toggle source
# File lib/capybara/apparition/dev_tools_protocol/session.rb, line 24
def async_command(name, **params)
  send_cmd(name, **params).discard_result
end
async_commands(*names) click to toggle source
# File lib/capybara/apparition/dev_tools_protocol/session.rb, line 28
def async_commands(*names)
  names.map { |name| async_command(name) }
end
command(name, **params) click to toggle source
# File lib/capybara/apparition/dev_tools_protocol/session.rb, line 15
def command(name, **params)
  send_cmd(name, params).result
end
commands(*names) click to toggle source
# File lib/capybara/apparition/dev_tools_protocol/session.rb, line 19
def commands(*names)
  responses = names.map { |name| send_cmd(name) }
  responses.map(&:result)
end
on(event_name, &block) click to toggle source
# File lib/capybara/apparition/dev_tools_protocol/session.rb, line 32
def on(event_name, &block)
  connection.on(event_name, @session_id, &block)
end

Private Instance Methods

send_cmd(name, **params) click to toggle source
# File lib/capybara/apparition/dev_tools_protocol/session.rb, line 38
def send_cmd(name, **params)
  @browser.command_for_session(@session_id, name, params)
end