class Selenium::WebDriver::Firefox::Driver

Driver implementation for Firefox using GeckoDriver. @api private

Constants

EXTENSIONS

Public Class Methods

new(options: nil, service: nil, url: nil, **opts) click to toggle source
Calls superclass method Selenium::WebDriver::Driver::new
# File lib/selenium/webdriver/firefox/driver.rb, line 41
def initialize(options: nil, service: nil, url: nil, **opts)
  caps, url = initialize_local_driver(options, service, url)
  super(caps: caps, url: url, **opts)
end

Public Instance Methods

browser() click to toggle source
# File lib/selenium/webdriver/firefox/driver.rb, line 46
def browser
  :firefox
end

Private Instance Methods

devtools_url() click to toggle source
# File lib/selenium/webdriver/firefox/driver.rb, line 52
def devtools_url
  if capabilities['moz:debuggerAddress'].nil?
    raise(Error::WebDriverError, 'DevTools is not supported by this version of Firefox; use v85 or higher')
  end

  uri = URI("http://#{capabilities['moz:debuggerAddress']}")
  response = Net::HTTP.get(uri.hostname, '/json/version', uri.port)

  JSON.parse(response)['webSocketDebuggerUrl']
end
devtools_version() click to toggle source
# File lib/selenium/webdriver/firefox/driver.rb, line 63
def devtools_version
  Firefox::DEVTOOLS_VERSION
end