Class: Selenium::WebDriver::PhantomJS::Driver Private
- Includes:
- DriverExtensions::TakesScreenshot
- Defined in:
- lib/selenium/webdriver/phantomjs/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 PhantomJS.
Constant Summary
Constants included from SearchContext
Instance Method Summary collapse
- #browser ⇒ Object private
-
#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, #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 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 54 55 |
# File 'lib/selenium/webdriver/phantomjs/driver.rb', line 32 def initialize(opts = {}) opts[:desired_capabilities] ||= Remote::Capabilities.phantomjs unless opts.key?(:url) driver_path = opts.delete(:driver_path) || PhantomJS.driver_path port = opts.delete(:port) || Service::DEFAULT_PORT opts[:driver_opts] ||= {} if opts.key? :args WebDriver.logger.deprecate ':args', "driver_opts: {args: #{opts[:args]}}" opts[:driver_opts][:args] = opts.delete(:args) elsif opts[:desired_capabilities]['phantomjs.cli.args'] opts[:driver_opts][:args] = opts[:desired_capabilities]['phantomjs.cli.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
#browser ⇒ 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.
57 58 59 |
# File 'lib/selenium/webdriver/phantomjs/driver.rb', line 57 def browser :phantomjs end |
#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.
61 62 63 64 65 |
# File 'lib/selenium/webdriver/phantomjs/driver.rb', line 61 def quit super ensure @service.stop if @service end |