Class: ProxyRb::Drivers::SeleniumDriver

Inherits:
BasicDriver show all
Defined in:
lib/proxy_rb/drivers/selenium_driver.rb

Overview

Driver for Selenium

Instance Method Summary collapse

Methods inherited from BasicDriver

#configure_driver

Instance Method Details

#failure_errorsObject



40
41
42
# File 'lib/proxy_rb/drivers/selenium_driver.rb', line 40

def failure_errors
  []
end

#register(proxy) ⇒ Object

Register proxy

Parameters:

  • proxy (HttpProxy)

    The HTTP proxy which should be used for fetching content



17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/proxy_rb/drivers/selenium_driver.rb', line 17

def register(proxy)
  if proxy.empty?
    ::Capybara.current_driver = :selenium
    return
  end

  profile = Selenium::WebDriver::Firefox::Profile.new
  # profile.proxy = Selenium::WebDriver::Proxy.new(http: proxy.full_url)
  profile.proxy = Selenium::WebDriver::Proxy.new(http: format('%s:%s', proxy.host, proxy.port))

  unless ::Capybara.drivers.key? proxy.to_ref
    ::Capybara.register_driver proxy.to_ref do |app|
      ::Capybara::Selenium::Driver.new(app, profile: profile)
    end
  end

  ::Capybara.current_driver = proxy.to_ref
end

#timeout_errorsObject



36
37
38
# File 'lib/proxy_rb/drivers/selenium_driver.rb', line 36

def timeout_errors
  []
end