Class: Appium::Core::Base::Driver

Inherits:
Selenium::WebDriver::Driver
  • Object
show all
Includes:
SearchContext, Selenium::WebDriver::DriverExtensions::HasRemoteStatus, Selenium::WebDriver::DriverExtensions::HasSessionId, Selenium::WebDriver::DriverExtensions::HasWebStorage, Selenium::WebDriver::DriverExtensions::Rotatable, Selenium::WebDriver::DriverExtensions::TakesScreenshot, Selenium::WebDriver::DriverExtensions::UploadsFiles
Defined in:
lib/appium_lib_core/common/base/driver.rb

Constant Summary

Constants included from SearchContext

SearchContext::FINDERS

Instance Method Summary collapse

Methods included from SearchContext

add_finders, #find_element, #find_elements

Constructor Details

#initialize(opts = {}) ⇒ Driver

Returns a new instance of Driver.



16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/appium_lib_core/common/base/driver.rb', line 16

def initialize(opts = {})
  listener = opts.delete(:listener)
  @bridge = ::Appium::Core::Base::Bridge.handshake(opts)
  if @bridge.dialect == :oss # MJSONWP
    extend ::Selenium::WebDriver::DriverExtensions::HasTouchScreen
    extend ::Selenium::WebDriver::DriverExtensions::HasLocation
    extend ::Selenium::WebDriver::DriverExtensions::HasNetworkConnection
  elsif @bridge.dialect == :w3c
    # TODO: Only for Appium. Ideally, we'd like to remove the below like selenium-webdriver
    extend ::Selenium::WebDriver::DriverExtensions::HasTouchScreen
    extend ::Selenium::WebDriver::DriverExtensions::HasLocation
    extend ::Selenium::WebDriver::DriverExtensions::HasNetworkConnection
  end
  super(@bridge, listener: listener)
end

Instance Method Details

#backString

Get the device window’s size.

Examples:

@driver.back # back to the previous view

Returns:

  • (String)


56
57
58
# File 'lib/appium_lib_core/common/base/driver.rb', line 56

def back
  navigate.back
end

#dialect:oss|:w3c

Get the dialect value

Returns:

  • (:oss|:w3c)


34
35
36
# File 'lib/appium_lib_core/common/base/driver.rb', line 34

def dialect
  @bridge.dialect
end

#window_sizeSelenium::WebDriver::Dimension

Get the device window’s size.

Examples:

size = @driver.window_size
size.width #=> Integer
size.height #=> Integer

Returns:

  • (Selenium::WebDriver::Dimension)


46
47
48
# File 'lib/appium_lib_core/common/base/driver.rb', line 46

def window_size
  manage.window.size
end