Class: Selenium::WebDriver::Firefox::W3CBridge Private

Inherits:
Remote::W3CBridge show all
Defined in:
lib/selenium/webdriver/firefox/w3c_bridge.rb

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.

Constant Summary

Constants inherited from Remote::W3CBridge

Remote::W3CBridge::COMMANDS, Remote::W3CBridge::QUIT_ERRORS

Instance Attribute Summary

Attributes inherited from Remote::W3CBridge

#capabilities, #context, #file_detector, #http

Instance Method Summary collapse

Methods inherited from Remote::W3CBridge

#accept_alert, #action, #active_element, #add_cookie, #alert=, #alert_text, #clear_element, #clear_local_storage, #clear_session_storage, #click_element, #close, #commands, #cookie, #cookies, #create_session, #delete_all_cookies, #delete_cookie, #dismiss_alert, #drag_element, #element_attribute, #element_displayed?, #element_enabled?, #element_location, #element_location_once_scrolled_into_view, #element_property, #element_selected?, #element_size, #element_tag_name, #element_text, #element_value, #element_value_of_css_property, #execute_async_script, #execute_script, #find_element_by, #find_elements_by, #full_screen_window, #get, #go_back, #go_forward, #implicit_wait_timeout=, #keyboard, #local_storage_item, #local_storage_keys, #local_storage_size, #location, #maximize_window, #mouse, #network_connection, #network_connection=, #options, #page_source, #refresh, #release_actions, #remove_local_storage_item, #remove_session_storage_item, #reposition_window, #resize_window, #screen_orientation, #screen_orientation=, #screenshot, #script_timeout=, #send_actions, #send_keys_to_element, #session_id, #session_storage_item, #session_storage_keys, #session_storage_size, #set_location, #status, #submit_element, #switch_to_default_content, #switch_to_frame, #switch_to_parent_frame, #switch_to_window, #timeout, #title, #touch_double_tap, #touch_down, #touch_element_flick, #touch_flick, #touch_long_press, #touch_move, #touch_scroll, #touch_single_tap, #touch_up, #url, #window_handle, #window_handles, #window_position, #window_size

Methods included from BridgeHelper

#element_id_from, #parse_cookie_string, #unwrap_script_result

Constructor Details

#initialize(opts = {}) ⇒ W3CBridge

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 W3CBridge.



25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# File 'lib/selenium/webdriver/firefox/w3c_bridge.rb', line 25

def initialize(opts = {})
  opts[:desired_capabilities] = create_capabilities(opts)

  unless opts.key?(:url)
    driver_path = opts.delete(:driver_path) || Firefox.driver_path
    port = opts.delete(:port) || Service::DEFAULT_PORT

    opts[:driver_opts] ||= {}
    if opts.key? :service_args
      WebDriver.logger.warn "    [DEPRECATION] `:service_args` is deprecated. Pass switches using `driver_opts`\n      DEPRECATE\n      opts[:driver_opts][:args] = opts.delete(:service_args)\n    end\n\n    @service = Service.new(driver_path, port, opts.delete(:driver_opts))\n    @service.start\n    opts[:url] = @service.uri\n  end\n\n  super(opts)\nend\n".gsub(/\n +| {2,}/, ' ').freeze

Instance Method Details

#browserObject

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.



48
49
50
# File 'lib/selenium/webdriver/firefox/w3c_bridge.rb', line 48

def browser
  :firefox
end

#driver_extensionsObject

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.



52
53
54
55
# File 'lib/selenium/webdriver/firefox/w3c_bridge.rb', line 52

def driver_extensions
  [DriverExtensions::TakesScreenshot,
   DriverExtensions::HasWebStorage]
end

#quitObject

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
60
61
# File 'lib/selenium/webdriver/firefox/w3c_bridge.rb', line 57

def quit
  super
ensure
  @service.stop if @service
end