class Selenium::WebDriver::IE::Driver
Driver implementation for Internet Explorer supporting both OSS and W3C dialects of JSON wire protocol. @api private
Public Class Methods
new(opts = {})
click to toggle source
Calls superclass method
Selenium::WebDriver::Driver::new
# File lib/selenium/webdriver/ie/driver.rb, line 32 def initialize(opts = {}) opts[:desired_capabilities] = create_capabilities(opts) unless opts.key?(:url) driver_path = opts.delete(:driver_path) || IE.driver_path driver_opts = opts.delete(:driver_opts) || {} port = opts.delete(:port) || Service::DEFAULT_PORT @service = Service.new(driver_path, port, driver_opts) @service.start opts[:url] = @service.uri end listener = opts.delete(:listener) @bridge = Remote::Bridge.handshake(opts) super(@bridge, listener: listener) end
Public Instance Methods
browser()
click to toggle source
# File lib/selenium/webdriver/ie/driver.rb, line 50 def browser :internet_explorer end
quit()
click to toggle source
Calls superclass method
Selenium::WebDriver::Driver#quit
# File lib/selenium/webdriver/ie/driver.rb, line 54 def quit super ensure @service.stop if @service end
Private Instance Methods
create_capabilities(opts)
click to toggle source
# File lib/selenium/webdriver/ie/driver.rb, line 62 def create_capabilities(opts) caps = opts.delete(:desired_capabilities) { Remote::Capabilities.internet_explorer } options = opts.delete(:options) { Options.new } if opts.delete(:introduce_flakiness_by_ignoring_security_domains) WebDriver.logger.deprecate ':introduce_flakiness_by_ignoring_security_domains', 'Selenium::WebDriver::IE::Options#ignore_protected_mode_settings=' options.ignore_protected_mode_settings = true end native_events = opts.delete(:native_events) unless native_events.nil? WebDriver.logger.deprecate ':native_events', 'Selenium::WebDriver::IE::Options#native_events=' options.native_events = native_events end # Backward compatibility with older IEDriverServer versions caps[:ignore_protected_mode_settings] = options.ignore_protected_mode_settings caps[:native_events] = options.native_events options = options.as_json caps.merge!(options) unless options.empty? caps end