Class: CapybaraSelenium::SeleniumServer::RemoteConfigurator

Inherits:
BaseConfigurator show all
Defined in:
lib/capybara_selenium/selenium_server/configurator.rb

Instance Attribute Summary

Attributes inherited from CapybaraSelenium::Server::Configurator

#config

Instance Method Summary collapse

Methods inherited from CapybaraSelenium::Server::Configurator

#configure, #initialize, #method_missing

Constructor Details

This class inherits a constructor from CapybaraSelenium::Server::Configurator

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class CapybaraSelenium::Server::Configurator

Instance Method Details

#apply ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
# File 'lib/capybara_selenium/selenium_server/configurator.rb', line 7

def apply
  Capybara.current_driver = driver_name
  Capybara.javascript_driver = driver_name
  Capybara.register_driver(driver_name) do |app|
    Capybara::Selenium::Driver.new(
      app,
      browser: :remote,
      url: server_url,
      desired_capabilities: desired_capabilities)
  end
end

#desired_capabilities ⇒ Hash

Returns The desired capabilities for the browser.

Returns:

  • (Hash) —

    The desired capabilities for the browser



27
28
29
30
31
# File 'lib/capybara_selenium/selenium_server/configurator.rb', line 27

def desired_capabilities
  caps = Selenium::WebDriver::Remote::Capabilities.new
  capabilities.keys.each { |key| caps[key] = capabilities[key] }
  caps
end

#driver_name ⇒ Object



19
20
21
22
23
24
# File 'lib/capybara_selenium/selenium_server/configurator.rb', line 19

def driver_name
  browser_name = capabilities[:browser_name]
  version = capabilities[:version]
  platform = capabilities[:platform]
  "#{browser_name}_#{version}_#{platform}"
end