Class: Selenium::WebDriver::Safari::Driver Private
- Includes:
- DriverExtensions::TakesScreenshot
- Defined in:
- lib/selenium/webdriver/safari/driver.rb
Overview
This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.
Driver implementation for Safari.
Constant Summary
Constants included from Selenium::WebDriver::SearchContext
Selenium::WebDriver::SearchContext::FINDERS
Instance Method Summary collapse
-
#initialize(opts = {}) ⇒ Driver
constructor
private
A new instance of Driver.
- #quit ⇒ Object private
Methods included from DriverExtensions::TakesScreenshot
#save_screenshot, #screenshot_as
Methods inherited from Driver
#[], #action, #browser, #capabilities, #close, #current_url, #execute_async_script, #execute_script, for, #get, #inspect, #keyboard, #manage, #mouse, #navigate, #page_source, #ref, #switch_to, #title, #window_handle, #window_handles
Methods included from Selenium::WebDriver::SearchContext
Constructor Details
#initialize(opts = {}) ⇒ Driver
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Returns a new instance of Driver.
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/selenium/webdriver/safari/driver.rb', line 32 def initialize(opts = {}) opts[:desired_capabilities] ||= Remote::Capabilities.safari unless opts.key?(:url) driver_path = opts.delete(:driver_path) || Safari.driver_path port = opts.delete(:port) || Service::DEFAULT_PORT opts[:driver_opts] ||= {} if opts.key? :service_args WebDriver.logger.deprecate ':service_args', "driver_opts: {args: #{opts[:service_args]}}" opts[:driver_opts][:args] = opts.delete(:service_args) end @service = Service.new(driver_path, port, opts.delete(:driver_opts)) @service.start opts[:url] = @service.uri end listener = opts.delete(:listener) @bridge = Remote::Bridge.handshake(opts) super(@bridge, listener: listener) end |
Instance Method Details
#quit ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
55 56 57 58 59 |
# File 'lib/selenium/webdriver/safari/driver.rb', line 55 def quit super ensure @service.stop if @service end |