module Selenium::WebDriver::LocalDriver
Public Instance Methods
initialize_local_driver(options, service, url) { |caps, url| ... }
click to toggle source
# File lib/selenium/webdriver/common/local_driver.rb, line 23 def initialize_local_driver(options, service, url) raise ArgumentError, "Can't initialize #{self.class} with :url" if url service ||= Service.send(browser) caps = process_options(options, service) url = service_url(service) begin yield(caps, url) if block_given? rescue Selenium::WebDriver::Error::WebDriverError @service_manager&.stop raise end end
process_options(options, service)
click to toggle source
# File lib/selenium/webdriver/common/local_driver.rb, line 43 def process_options(options, service) default_options = Options.send(browser) options ||= default_options unless options.is_a?(default_options.class) raise ArgumentError, ":options must be an instance of #{default_options.class}" end service.executable_path ||= begin finder = WebDriver::DriverFinder.new(options, service) if options.respond_to?(:binary) && finder.browser_path? options.binary = finder.browser_path options.browser_version = nil end finder.driver_path end options.as_json end
service_url(service)
click to toggle source
# File lib/selenium/webdriver/common/local_driver.rb, line 38 def service_url(service) @service_manager = service.launch @service_manager.uri end