docs/ios_docs.md in appium_lib-9.6.1 vs docs/ios_docs.md in appium_lib-9.7.0
- old
+ new
@@ -1,8 +1,8 @@
-##### [load_settings](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L85)
+##### [load_settings](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/appium.rb#L44)
-> def self.load_settings(opts = {})
+> def load_settings(opts = {})
Load arbitrary text ([toml format](https://github.com/toml-lang/toml))
The toml is parsed by https://github.com/fbernier/tomlrb .
```
@@ -25,13 +25,13 @@
[hash] the symbolized hash with updated :app and :require keys
--
-##### [load_appium_txt](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L121)
+##### [load_appium_txt](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/appium.rb#L77)
-> def self.load_settings(opts = {})
+> def load_settings(opts = {})
Load arbitrary text ([toml format](https://github.com/toml-lang/toml))
The toml is parsed by https://github.com/fbernier/tomlrb .
```
@@ -43,11 +43,10 @@
```
:app is expanded
:require is expanded
all keys are converted to symbols
-rubocop:disable Style/Alias
__Parameters:__
[Hash] opts - file: '/path/to/appium.txt', verbose: true
@@ -55,13 +54,13 @@
[hash] the symbolized hash with updated :app and :require keys
--
-##### [expand_required_files](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L127)
+##### [expand_required_files](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/appium.rb#L82)
-> def self.expand_required_files(base_dir, file_paths)
+> def expand_required_files(base_dir, file_paths)
__Parameters:__
@@ -73,25 +72,14 @@
[Array] list of require files as an array, nil if require doesn't exist
--
-##### [symbolize_keys](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L159)
+##### [promote_singleton_appium_methods](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/appium.rb#L121)
-> def self.symbolize_keys(hash)
+> def promote_singleton_appium_methods(modules, driver = $driver)
-convert all keys (including nested) to symbols
-
-based on deep_symbolize_keys & deep_transform_keys from rails
-https://github.com/rails/docrails/blob/a3b1105ada3da64acfa3843b164b14b734456a50/activesupport/lib/active_support/core_ext/hash/keys.rb#L84
-
---
-
-##### [promote_singleton_appium_methods](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L180)
-
-> def self.promote_singleton_appium_methods(modules, driver = $driver)
-
This method is intended to work with page objects that share
a common module. For example, Page::HomePage, Page::SignIn
those could be promoted on with Appium.promote_singleton_appium_methods Page
If you are promoting on an individual class then you should use
@@ -102,13 +90,13 @@
that module are promoted on.
otherwise, the array of modules will be used as the promotion target.
--
-##### [promote_appium_methods](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L233)
+##### [promote_appium_methods](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/appium.rb#L174)
-> def self.promote_appium_methods(class_array, driver = $driver)
+> def promote_appium_methods(class_array, driver = $driver)
Promote appium methods to class instance methods
To promote methods to all classes:
@@ -132,202 +120,186 @@
[Array<Class>] class_array - An array of classes
--
-##### [selenium_webdriver_version_more?](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L260)
+##### [global_webdriver_http_sleep](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L24)
-> def self.selenium_webdriver_version_more?(version)
-
-
-
-__Returns:__
-
- [Boolean]
-
---
-
-##### [global_webdriver_http_sleep](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L272)
-
> def global_webdriver_http_sleep
The amount to sleep in seconds before every webdriver http call.
--
-##### [global_webdriver_http_sleep=](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L272)
+##### [global_webdriver_http_sleep=](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L24)
> def global_webdriver_http_sleep=(value)
The amount to sleep in seconds before every webdriver http call.
--
-##### [caps](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L274)
+##### [sauce](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L27)
-> def caps
+> def sauce
-Selenium webdriver capabilities
+SauceLab's settings
--
-##### [custom_url](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L276)
+##### [sauce_username](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L30)
-> def custom_url
+> def sauce_username
-Custom URL for the selenium server
+Username for use on Sauce Labs. Set `false` to disable Sauce, even when SAUCE_USERNAME is in ENV.
+same as @sauce.username
--
-##### [export_session](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L278)
+##### [sauce_access_key](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L33)
-> def export_session
+> def sauce_access_key
-Export session id to textfile in /tmp for 3rd party tools
+Access Key for use on Sauce Labs. Set `false` to disable Sauce, even when SAUCE_ACCESS_KEY is in ENV.
+same as @sauce.access_key
--
-##### [default_wait](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L283)
+##### [sauce_endpoint](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L36)
-> def default_wait
+> def sauce_endpoint
-Default wait time for elements to appear
-Returns the default client side wait.
-This value is independent of what the server is using
+Override the Sauce Appium endpoint to allow e.g. TestObject tests
+same as @sauce.endpoint
-__Returns:__
+--
- [Integer]
+##### [caps](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L39)
+> def caps
+
+from Core
+
--
-##### [sauce_username](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L285)
+##### [custom_url](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L40)
-> def sauce_username
+> def custom_url
-Username for use on Sauce Labs. Set `false` to disable Sauce, even when SAUCE_USERNAME is in ENV.
+Returns the value of attribute custom_url
--
-##### [sauce_access_key](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L287)
+##### [export_session](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L41)
-> def sauce_access_key
+> def export_session
-Access Key for use on Sauce Labs. Set `false` to disable Sauce, even when SAUCE_ACCESS_KEY is in ENV.
+Returns the value of attribute export_session
--
-##### [sauce_endpoint](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L289)
+##### [default_wait](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L42)
-> def sauce_endpoint
+> def default_wait
-Override the Sauce Appium endpoint to allow e.g. TestObject tests
+Returns the value of attribute default_wait
--
-##### [appium_port](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L291)
+##### [appium_port](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L43)
> def appium_port
-Appium's server port
+Returns the value of attribute appium_port
--
-##### [appium_device](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L293)
+##### [appium_device](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L44)
> def appium_device
-Device type to request from the appium server
+Returns the value of attribute appium_device
--
-##### [automation_name](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L296)
+##### [automation_name](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L45)
> def automation_name
-Automation name sent to appium server or received from server
-If automation_name is nil, it is not set both client side and server side.
+Returns the value of attribute automation_name
--
-##### [appium_server_status](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L298)
+##### [listener](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L46)
-> def appium_server_status
+> def listener
-Appium's server version
+Returns the value of attribute listener
--
-##### [appium_debug](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L300)
+##### [http_client](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L47)
-> def appium_debug
+> def http_client
-Boolean debug mode for the Appium Ruby bindings
+Returns the value of attribute http_client
--
-##### [listener](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L302)
+##### [appium_wait_timeout](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L48)
-> def listener
+> def appium_wait_timeout
-instance of AbstractEventListener for logging support
+Returns the value of attribute appium_wait_timeout
--
-##### [driver](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L305)
+##### [appium_wait_interval](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L49)
-> def driver
+> def appium_wait_interval
-Returns the driver
+Returns the value of attribute appium_wait_interval
-__Returns:__
+--
- [Driver] the driver
+##### [appium_server_status](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L52)
---
+> def appium_server_status
-##### [http_client](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L308)
+Appium's server version
-> def http_client
+--
-Return http client called in start_driver()
+##### [appium_debug](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L54)
-__Returns:__
+> def appium_debug
- [Selenium::WebDriver::Remote::Http::Default] the http client
+Boolean debug mode for the Appium Ruby bindings
--
-##### [appium_wait_timeout](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L313)
+##### [driver](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L57)
-> def appium_wait_timeout
+> def driver
-Return a time wait timeout
-Wait time for ::Appium::Common.wait or ::Appium::Common.wait_true.
-Provide Appium::Drive like { appium_lib: { wait_timeout: 20 } }
+Returns the driver
__Returns:__
- [Integer]
+ [Driver] the driver
--
-##### [appium_wait_interval](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L318)
+##### [core](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L59)
-> def appium_wait_interval
+> def core
-Return a time wait timeout
-Wait interval time for ::Appium::Common.wait or ::Appium::Common.wait_true.
-Provide Appium::Drive like { appium_lib: { wait_interval: 20 } }
+Instance of Appium::Core::Driver
-__Returns:__
-
- [Integer]
-
--
-##### [initialize](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L372)
+##### [initialize](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L113)
> def initialize(opts = {}, global_driver = nil)
Creates a new driver. The driver is defined as global scope by default.
We can avoid defining global driver.
@@ -342,51 +314,55 @@
[Driver]
--
-##### [set_appium_lib_specific_values](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L457)
+##### [driver_attributes](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L218)
-> def set_appium_lib_specific_values(appium_lib_opts)
+> def driver_attributes
+Returns a hash of the driver attributes
-
--
-##### [driver_attributes](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L483)
+##### [device_is_android?](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L237)
-> def driver_attributes
+> def device_is_android?
-Returns a hash of the driver attributes
+
+__Returns:__
+
+ [Boolean]
+
--
-##### [device_is_android?](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L502)
+##### [device_is_ios?](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L241)
-> def device_is_android?
+> def device_is_ios?
__Returns:__
[Boolean]
--
-##### [automation_name_is_xcuitest?](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L508)
+##### [device_is_windows?](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L245)
-> def automation_name_is_xcuitest?
+> def device_is_windows?
-Return true if automationName is 'XCUITest'
+
__Returns:__
[Boolean]
--
-##### [automation_name_is_uiautomator2?](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L514)
+##### [automation_name_is_uiautomator2?](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L251)
> def automation_name_is_uiautomator2?
Return true if automationName is 'uiautomator2'
@@ -394,11 +370,11 @@
[Boolean]
--
-##### [automation_name_is_espresso?](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L520)
+##### [automation_name_is_espresso?](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L257)
> def automation_name_is_espresso?
Return true if automationName is 'Espresso'
@@ -406,12 +382,24 @@
[Boolean]
--
-##### [check_server_version_xcuitest](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L527)
+##### [automation_name_is_xcuitest?](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L263)
+> def automation_name_is_xcuitest?
+
+Return true if automationName is 'XCUITest'
+
+__Returns:__
+
+ [Boolean]
+
+--
+
+##### [check_server_version_xcuitest](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L270)
+
> def check_server_version_xcuitest
Return true if the target Appium server is over REQUIRED_VERSION_XCUITEST.
If the Appium server is under REQUIRED_VERSION_XCUITEST, then error is raised.
@@ -419,11 +407,11 @@
[Boolean]
--
-##### [appium_server_version](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L554)
+##### [appium_server_version](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L292)
> def appium_server_version
Returns the server's version info
@@ -434,23 +422,29 @@
"revision" => "d242ebcfd92046a974347ccc3a28f0e898595198"
}
}
```
-Returns blank hash for Selenium Grid since `remote_status` gets 500 error
+__Returns:__
-```ruby
-{}
-```
+ [Hash]
+--
+
+##### [platform_version](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L302)
+
+> def platform_version
+
+Return the platform version as an array of integers
+
__Returns:__
- [Hash]
+ [Array<Integer>]
--
-##### [appium_client_version](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L575)
+##### [appium_client_version](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L321)
> def appium_client_version
Returns the client's version info
@@ -464,11 +458,11 @@
[Hash]
--
-##### [absolute_app_path](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L587)
+##### [absolute_app_path](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L333)
> def self.absolute_app_path(opts)
Converts app_path to an absolute path.
@@ -481,11 +475,11 @@
[String] APP_PATH as an absolute path
--
-##### [server_url](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L620)
+##### [server_url](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L366)
> def server_url
Get the server url
@@ -493,11 +487,11 @@
[String] the server url
--
-##### [restart](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L631)
+##### [restart](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L374)
> def restart
Restarts the driver
@@ -505,11 +499,11 @@
[Driver] the driver
--
-##### [screenshot](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L642)
+##### [screenshot](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L385)
> def screenshot(png_save_path)
Takes a png screenshot and saves to the target path.
@@ -523,11 +517,11 @@
[nil]
--
-##### [driver_quit](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L649)
+##### [driver_quit](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L391)
> def driver_quit
Quits the driver
@@ -535,25 +529,36 @@
[void]
--
-##### [quit_driver](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L657)
+##### [quit_driver](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L394)
> def driver_quit
Quits the driver
-Alias for driver_quit
__Returns:__
[void]
--
-##### [start_driver](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L685)
+##### [window_size](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L403)
+> def window_size
+
+Get the device window's size.
+
+__Returns:__
+
+ [Selenium::WebDriver::Dimension]
+
+--
+
+##### [start_driver](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L433)
+
> def start_driver(http_client_ops = { http_client: nil, open_timeout: 999_999, read_timeout: 999_999 })
Creates a new global driver and quits the old one if it exists.
You can customise http_client as the following
@@ -565,35 +570,35 @@
[Selenium::WebDriver] the new global driver
--
-##### [set_implicit_wait](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L725)
+##### [set_implicit_wait](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L456)
> def set_implicit_wait(wait)
To ignore error for Espresso Driver
--
-##### [no_wait](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L735)
+##### [no_wait](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L466)
> def no_wait
Set implicit wait to zero.
--
-##### [set_wait](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L749)
+##### [set_wait](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L480)
> def set_wait(timeout = nil)
-Set implicit wait. Default to @default_wait.
+Set implicit wait. Default to @core.default_wait.
```ruby
set_wait 2
-set_wait # @default_wait
+set_wait # @core.default_wait
```
__Parameters:__
@@ -603,13 +608,13 @@
[void]
--
-##### [exists](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L766)
+##### [exists](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L497)
-> def exists(pre_check = 0, post_check = @default_wait)
+> def exists(pre_check = 0, post_check = @core.default_wait)
Returns existence of element.
Example:
@@ -627,11 +632,11 @@
[Boolean]
--
-##### [execute_script](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L790)
+##### [execute_script](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L521)
> def execute_script(script, *args)
The same as @driver.execute_script
@@ -645,24 +650,18 @@
[Object]
--
-##### [find_elements](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L812)
+##### [find_elements](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L545)
> def find_elements(*args)
Calls @driver.find_elements_with_appium
-```
-```
-
If you call `Appium.promote_appium_methods`, you can call `find_elements` directly.
-```
-```
-
If you call `Appium.promote_appium_methods`, you can call `find_elements` directly.
__Parameters:__
[*args] args - The args to use
@@ -671,19 +670,16 @@
[Array<Element>] Array is empty when no elements are found.
--
-##### [find_element](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L827)
+##### [find_element](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L561)
> def find_element(*args)
Calls @driver.find_element
-```
-```
-
If you call `Appium.promote_appium_methods`, you can call `find_element` directly.
__Parameters:__
[*args] args - The args to use
@@ -692,11 +688,11 @@
[Element]
--
-##### [set_location](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L840)
+##### [set_location](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L574)
> def set_location(opts = {})
Calls @driver.set_location
@@ -708,11 +704,11 @@
[Selenium::WebDriver::Location] the location constructed by the selenium webdriver
--
-##### [x](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L850)
+##### [x](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/driver.rb#L584)
> def x
Quit the driver and Pry.
quit and exit are reserved by Pry.
@@ -721,531 +717,394 @@
[void]
--
-##### [write_session_id](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L857)
+##### [username](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/sauce_labs.rb#L4)
-> def write_session_id(session_id)
+> def username
+Username for use on Sauce Labs. Set `false` to disable Sauce, even when SAUCE_USERNAME is in ENV.
-
--
-##### [set_automation_name_if_nil](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/driver.rb#L866)
+##### [access_key](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/sauce_labs.rb#L6)
-> def set_automation_name_if_nil
+> def access_key
-If "automationName" is set only server side, this method set "automationName" attribute into @automation_name.
-Since @automation_name is set only client side before start_driver is called.
+Access Key for use on Sauce Labs. Set `false` to disable Sauce, even when SAUCE_ACCESS_KEY is in ENV.
--
-##### [logger=](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/logger.rb#L18)
+##### [endpoint](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/sauce_labs.rb#L8)
-> def logger=(value)
+> def endpoint
-Sets the attribute logger
+Override the Sauce Appium endpoint to allow e.g. TestObject tests
-__Parameters:__
-
- value - the value to set the attribute logger to.
-
--
-##### [logger](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/logger.rb#L22)
+##### [initialize](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/sauce_labs.rb#L10)
-> def logger
+> def initialize(appium_lib_opts)
---
-
-##### [init_caps_for_appium](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/capabilities.rb#L8)
-
-> def self.init_caps_for_appium(opts_caps = {})
-
-
-
-__Parameters:__
-
- [Hash] opts_caps - Capabilities for Appium server. All capability keys are converted to lowerCamelCase when
-this client sends capabilities to Appium server as JSON format.
-
__Returns:__
- [::Selenium::WebDriver::Remote::W3C::Capabilities] Return instance of Appium::Driver::Capabilities
-inherited ::Selenium::WebDriver::Remote::W3C::Capabilities
+ [SauceLabs] a new instance of SauceLabs
--
-##### [app_strings](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L7)
+##### [sauce_server_url?](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/sauce_labs.rb#L21)
-> def app_strings
+> def sauce_server_url?
-Return the hash of all localization strings.
-```ruby
-app_strings #=> "TransitionsTitle"=>"Transitions", "WebTitle"=>"Web"
-```
---
-##### [background_app](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L13)
+__Returns:__
-> def background_app
+ [Boolean]
-Backgrounds the app for a set number of seconds.
-This is a blocking application
-
--
-##### [current_activity](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L24)
+##### [server_url](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/sauce_labs.rb#L25)
-> def current_activity
+> def server_url
-Get current activity name
-```ruby
-current_activity # '.ApiDemos'
-```
-__Returns:__
- [String] An activity name
-
--
-##### [current_package](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L32)
+##### [get_log](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/log.rb#L10)
-> def current_package
+> def get_log(type)
-Get current package name
-```ruby
-current_package # 'com.example.android.apis'
-```
-__Returns:__
- [String] A package name
+__Parameters:__
---
+ [String|Hash] type - You can get particular type's logs.
-##### [get_system_bars](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L40)
-
-> def get_system_bars
-
-Get system bar's information
-```ruby
-get_system_bars
-```
-
__Returns:__
- [String] System bar
+ [[Selenium::WebDriver::LogEntry]] A list of logs data.
--
-##### [get_display_density](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L48)
+##### [get_available_log_types](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/log.rb#L20)
-> def get_display_density
+> def get_available_log_types
-Get connected device's density.
-```ruby
-get_display_density # 320
-```
+Get a list of available log types
__Returns:__
- [Integer] The size of density
+ [[String]] A list of available log types.
--
-##### [is_keyboard_shown](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L56)
+##### [initialize](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/wait.rb#L6)
-> def is_keyboard_shown
+> def initialize(opts = {})
-Get whether keyboard is displayed or not.
-```ruby
-is_keyboard_shown # false
-```
+
__Returns:__
- [Bool] Return true if keyboard is shown. Return false if keyboard is hidden.
+ [Wait] a new instance of Wait
--
-##### [launch_app](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L64)
+##### [wait_true](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/wait.rb#L34)
-> def launch_app
+> def wait_true(opts = {})
-Start the simulator and application configured with desired capabilities
+Check every interval seconds to see if yield returns a truthy value.
+Note this isn't a strict boolean true, any truthy value is accepted.
+false and nil are considered failures.
+Give up after timeout seconds.
---
+Wait code from the selenium Ruby gem
+https://github.com/SeleniumHQ/selenium/blob/cf501dda3f0ed12233de51ce8170c0e8090f0c20/rb/lib/selenium/webdriver/common/wait.rb
-##### [reset](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L67)
+If only a number is provided then it's treated as the timeout value.
-> def reset
+__Parameters:__
-Reset the device, relaunching the application.
+ [Hash] opts - Options
--
-##### [shake](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L70)
+##### [wait](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/wait.rb#L57)
-> def shake
+> def wait(opts = {})
-Cause the device to shake
+Check every interval seconds to see if yield doesn't raise an exception.
+Give up after timeout seconds.
---
+Wait code from the selenium Ruby gem
+https://github.com/SeleniumHQ/selenium/blob/cf501dda3f0ed12233de51ce8170c0e8090f0c20/rb/lib/selenium/webdriver/common/wait.rb
-##### [toggle_flight_mode](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L73)
+If only a number is provided then it's treated as the timeout value.
-> def toggle_flight_mode
+__Parameters:__
-Toggle flight mode on or off
+ [Hash] opts - Options
--
-##### [device_locked?](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L76)
+##### [ignore](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/helper.rb#L17)
-> def device_locked?
+> def ignore
+Return yield and ignore any exceptions.
-
--
-##### [hide_keyboard](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L78)
+##### [back](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/helper.rb#L24)
-> def hide_keyboard
+> def back
-Hide the onscreen keyboard
+Navigate back.
-__Parameters:__
+__Returns:__
- [String] close_key - The name of the key which closes the keyboard.
-Defaults to 'Done' for iOS(except for XCUITest).
+ [void]
- [Symbol] strategy - The symbol of the strategy which closes the keyboard.
-XCUITest ignore this argument.
-Default for iOS is `:pressKey`. Default for Android is `:tapOutside`.
-
--
-##### [press_keycode](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L91)
+##### [session_id](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/helper.rb#L29)
-> def press_keycode
+> def session_id
-Press keycode on the device.
-http://developer.android.com/reference/android/view/KeyEvent.html
+For Sauce Labs reporting. Returns the current session id.
-__Parameters:__
-
- [integer] key - The key to press.
-
- [String] metastate - The state the metakeys should be in when pressing the key.
-
--
-##### [long_press_keycode](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L97)
+##### [xpath](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/helper.rb#L37)
-> def long_press_keycode
+> def xpath(xpath_str)
-Long press keycode on the device.
-http://developer.android.com/reference/android/view/KeyEvent.html
+Returns the first element that matches the provided xpath.
__Parameters:__
- [integer] key - The key to long press.
+ [String] xpath_str - the XPath string
- [String] metastate - The state the metakeys should be in when long pressing the key.
+__Returns:__
+ [Element]
+
--
-##### [push_file](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L103)
+##### [xpaths](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/helper.rb#L45)
-> def push_file
+> def xpaths(xpath_str)
-Place a file in a specific location on the device.
+Returns all elements that match the provided xpath.
__Parameters:__
- [String] path - The absolute path on the device to store data at.
+ [String] xpath_str - the XPath string
- [String] data - Raw file data to be sent to the device.
+__Returns:__
+ [Array<Element>]
+
--
-##### [pull_file](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L108)
+##### [result](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/helper.rb#L56)
-> def pull_file
+> def result
-Retrieve a file from the device. This can retrieve an absolute path or
-a path relative to the installed app (iOS only).
-```ruby
-pull_file '/local/data/some/path' #=> Get the file at that path
-pull_file 'Shenanigans.app/some/file' #=> Get 'some/file' from the install location of Shenanigans.app
-```
+Returns the value of attribute result
-__Parameters:__
-
- [String] path - Either an absolute path OR, for iOS devices, a path relative to the app, as described.
-
--
-##### [pull_folder](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L118)
+##### [initialize](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/helper.rb#L58)
-> def pull_folder
+> def initialize
-Retrieve a folder from the device.
-```ruby
-pull_folder '/data/local/tmp' #=> Get the folder at that path
-```
-__Parameters:__
- [String] path - absolute path to the folder
+__Returns:__
+ [CountElements] a new instance of CountElements
+
--
-##### [touch_id](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L126)
+##### [reset](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/helper.rb#L62)
-> def touch_id
+> def reset
-iOS only; Simulate Touch ID with either valid (match == true) or invalid (match == false) fingerprint.
-```ruby
-touch_id true #=> Simulate valid fingerprint
-touch_id false #=> Simulate invalid fingerprint
-```
-__Parameters:__
- [Boolean] match - fingerprint validity
-Defaults to true.
-
--
-##### [toggle_touch_id_enrollment](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L135)
+##### [start_element](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/helper.rb#L67)
-> def toggle_touch_id_enrollment
+> def start_element(name, attrs = [], driver = $driver)
-iOS Simulator only: Toggle touch id enrollment on an iOS Simulator.
+http://nokogiri.org/Nokogiri/XML/SAX/Document.html
--
-##### [end_coverage](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L138)
+##### [formatted_result](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/helper.rb#L73)
-> def end_coverage
+> def formatted_result
-Android only; Ends the test coverage and writes the results to the given path on device.
-__Parameters:__
- [String] path - Path on the device to write too.
-
- [String] intent - Intent to broadcast when ending coverage.
-
--
-##### [get_settings](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L143)
+##### [get_page_class](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/helper.rb#L84)
-> def get_settings
+> def get_page_class
-Get appium Settings for current test session
+Returns a string of class counts of visible elements.
--
-##### [update_settings](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L146)
+##### [page_class](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/helper.rb#L95)
-> def update_settings
+> def page_class
-Update appium Settings for current test session
+Count all classes on screen and print to stdout.
+Useful for appium_console.
-__Parameters:__
-
- [Hash] settings - Settings to update, keys are settings, values to value to set each setting to
-
--
-##### [start_activity](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L150)
+##### [px_to_window_rel](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/helper.rb#L105)
-> def start_activity
+> def px_to_window_rel(opts = {}, driver = $driver)
-Start a new activity within the current app or launch a new app and start the target activity.
+Converts pixel values to window relative values
-Android only.
```ruby
-start_activity app_package: 'io.appium.android.apis',
- app_activity: '.accessibility.AccessibilityNodeProviderActivity'
+px_to_window_rel x: 50, y: 150
```
--
-##### [get_network_connection](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L164)
+##### [xml_keys](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/helper.rb#L124)
-> def get_network_connection
+> def xml_keys(target)
-Get the device network connection current status
-See set_network_connection method for return value
+Search strings.xml's values for target.
---
+__Parameters:__
-##### [set_network_connection](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L168)
+ [String] target - the target to search for in strings.xml values
-> def set_network_connection
+__Returns:__
-Set the device network connection mode
-Value (Alias) | Data | Wifi | Airplane Mode
--------------------------------------------------
-1 (Airplane Mode) | 0 | 0 | 1
-6 (All network on) | 1 | 1 | 0
-4 (Data only) | 1 | 0 | 0
-2 (Wifi only) | 0 | 1 | 0
-0 (None) | 0 | 0 | 0
+ [Array]
-__Parameters:__
-
- [String] path - Bit mask that represent the network mode
-
--
-##### [set_immediate_value](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L181)
+##### [xml_values](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/helper.rb#L132)
-> def set_immediate_value
+> def xml_values(target)
-Set the value to element directly
-for iOS; setValue is called in XCUITest instead because XCUITest doesn't provide set value directly.
-https://github.com/appium/appium-xcuitest-driver/blob/793cdc7d5e84bd553e375076e1c6dc7e242c9cde/lib/commands/element.js#L123
+Search strings.xml's keys for target.
-```ruby
-set_immediate_value element, 'hello'
-```
+__Parameters:__
---
+ [String] target - the target to search for in strings.xml keys
-##### [get_performance_data_types](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L190)
+__Returns:__
-> def get_performance_data_types
+ [Array]
-Get the information type of the system state which is supported to read such as
-cpu, memory, network, battery via adb commands.
-https://github.com/appium/appium-base-driver/blob/be29aec2318316d12b5c3295e924a5ba8f09b0fb/lib/mjsonwp/routes.js#L300
-
-```ruby
-get_performance_data_types #=> ["cpuinfo", "batteryinfo", "networkinfo", "memoryinfo"]
-```
-
--
-##### [extend_search_contexts](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L443)
+##### [resolve_id](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/helper.rb#L140)
-> def extend_search_contexts
+> def resolve_id(id)
+Resolve id in strings.xml and return the value.
+__Parameters:__
---
+ [String] id - the id to resolve
-##### [find_element_with_appium](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L443)
+__Returns:__
-> def find_element_with_appium
+ [String]
-
-
--
-##### [find_elements_with_appium](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L443)
+##### [filter](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/helper.rb#L146)
-> def find_elements_with_appium
+> def filter
-find_element/s_with_appium with their accessibility_id
+Returns the value of attribute filter
-```ruby
- find_elements :accessibility_id, 'Animation'
-```
-
--
-##### [add_touch_actions](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L474)
+##### [filter=](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/helper.rb#L149)
-> def add_touch_actions
+> def filter=(value)
+convert to string to support symbols
-
--
-##### [add_ime_actions](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L497)
+##### [initialize](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/helper.rb#L155)
-> def add_ime_actions
+> def initialize
---
+__Returns:__
-##### [set_context](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L572)
+ [HTMLElements] a new instance of HTMLElements
-> def set_context
+--
-Change the context to the given context.
-```ruby
-set_context "NATIVE_APP"
-```
+##### [reset](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/helper.rb#L160)
-__Parameters:__
+> def reset
- [String] The - context to change to
+
--
-##### [current_context](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L580)
+##### [result](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/helper.rb#L166)
-> def current_context
+> def result
-__Returns:__
-
- [String] The context currently being used.
-
--
-##### [available_contexts](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L583)
+##### [start_element](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/helper.rb#L182)
-> def available_contexts
+> def start_element(name, attrs = [])
-__Returns:__
-
- [Array<String>] All usable contexts, as an array of strings.
-
--
-##### [within_context](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L594)
+##### [end_element](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/helper.rb#L191)
-> def within_context(context)
+> def end_element(name)
-Perform a block within the given context, then switch back to the starting context.
-```ruby
-result = within_context('NATIVE_APP') do
- find_element :tag, "button"
-end # The result of `find_element :tag, "button"`
-```
-__Parameters:__
- [String] context - The context to switch to for the duration of the block.
-
--
-##### [switch_to_default_context](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/device.rb#L607)
+##### [characters](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/helper.rb#L197)
-> def switch_to_default_context
+> def characters(chars)
-Change to the default context. This is equivalent to `set_context nil`.
+
--
-##### [pinch](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/multi_touch.rb#L53)
+##### [pinch](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/multi_touch.rb#L53)
> def pinch(percentage = 25, auto_perform = true, driver = $driver)
Convenience method for pinching the screen.
Places two fingers at the edges of the screen and brings them together.
@@ -1275,11 +1134,11 @@
[Driver] driver - Set a driver to conduct the action. DEfault is global driver($driver)
--
-##### [zoom](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/multi_touch.rb#L96)
+##### [zoom](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/multi_touch.rb#L80)
> def zoom(percentage = 200, auto_perform = true, driver = $driver)
Convenience method for zooming the screen.
Places two fingers at the edges of the screen and brings them together.
@@ -1309,714 +1168,198 @@
[Driver] driver - Set a driver to conduct the action. DEfault is global driver($driver)
--
-##### [pinch_for_xcuitest](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/multi_touch.rb#L118)
+##### [initialize](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/multi_touch.rb#L85)
-> def pinch_for_xcuitest(rate, driver)
+> def initialize(driver = $driver)
-
-
---
-
-##### [pinch_android](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/multi_touch.rb#L133)
-
-> def pinch_android(rate)
-
-
-
---
-
-##### [pinch_ios](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/multi_touch.rb#L147)
-
-> def pinch_ios(rate)
-
-
-
---
-
-##### [zoom_for_xcuitest](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/multi_touch.rb#L161)
-
-> def zoom_for_xcuitest(rate, driver)
-
-
-
---
-
-##### [zoom_android](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/multi_touch.rb#L176)
-
-> def zoom_android(rate)
-
-
-
---
-
-##### [zoom_ios](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/multi_touch.rb#L190)
-
-> def zoom_ios(rate)
-
-
-
---
-
-##### [actions](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/multi_touch.rb#L205)
-
-> def actions
-
self
---
-
-##### [driver](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/multi_touch.rb#L205)
-
-> def driver
-
-self
-
---
-
-##### [initialize](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/multi_touch.rb#L208)
-
-> def initialize(driver = $driver)
-
-Create a new multi-action with Driver
-
__Returns:__
[MultiTouch] a new instance of MultiTouch
--
-##### [add](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/multi_touch.rb#L215)
+##### [COMPLEX_ACTIONS](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/touch_actions.rb#L30)
-> def add(chain)
+> COMPLEX_ACTIONS = ::Appium::Core::TouchAction::COMPLEX_ACTIONS
-Add a touch_action to be performed
-__Parameters:__
- [TouchAction] chain - The action to add to the chain
-
--
-##### [perform](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/multi_touch.rb#L220)
+##### [initialize](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/common/touch_actions.rb#L44)
-> def perform
+> def initialize(driver = $driver)
-Ask Appium to perform the actions
---
-##### [ACTIONS](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/touch_actions.rb#L30)
-
-> ACTIONS = [:move_to, :long_press, :double_tap, :two_finger_tap, :press, :release, :tap, :wait, :perform].freeze
-
-
-
---
-
-##### [COMPLEX_ACTIONS](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/touch_actions.rb#L31)
-
-> COMPLEX_ACTIONS = [:swipe].freeze
-
-
-
---
-
-##### [actions](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/touch_actions.rb#L45)
-
-> def actions
-
-Returns the value of attribute actions
-
---
-
-##### [initialize](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/touch_actions.rb#L47)
-
-> def initialize
-
-
-
__Returns:__
[TouchAction] a new instance of TouchAction
--
-##### [move_to](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/touch_actions.rb#L58)
+##### [for](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/ios.rb#L15) ios
-> def move_to(opts)
+> def self.for(target)
-Move to the given co-ordinates.
-`move_to`'s `x` and `y` have two case. One is working as coordinate, the other is working as offset.
-__Parameters:__
-
- [Hash] opts - a customizable set of options
-
--
-##### [long_press](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/touch_actions.rb#L72)
+##### [UIAStaticText](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/text.rb#L4) ios
-> def long_press(opts)
+> UIAStaticText = 'UIAStaticText'.freeze
-Press down for a specific duration.
-Alternatively, you can use `press(...).wait(...).release()` instead of `long_press` if duration doesn't work well.
-https://github.com/appium/ruby_lib/issues/231#issuecomment-269895512
-e.g. Appium::TouchAction.new.press(x: 280, y: 530).wait(2000).release.perform
-__Parameters:__
- [Hash] element - a customizable set of options
-
- [Hash] x - a customizable set of options
-
- [Hash] y - a customizable set of options
-
- [Hash] duration - a customizable set of options
-
--
-##### [press](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/touch_actions.rb#L84)
+##### [XCUIElementTypeStaticText](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/text.rb#L5) ios
-> def press(opts)
+> XCUIElementTypeStaticText = 'XCUIElementTypeStaticText'.freeze
-Press a finger onto the screen. Finger will stay down until you call
-`release`.
-__Parameters:__
- [Hash] opts - a customizable set of options
-
--
-##### [release](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/touch_actions.rb#L95)
+##### [static_text_class](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/text.rb#L8) ios
-> def release(opts = nil)
+> def static_text_class
-Remove a finger from the screen.
-__Parameters:__
- [Hash] opts - a customizable set of options
-
---
-
-##### [tap](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/touch_actions.rb#L107)
-
-> def tap(opts)
-
-Touch a point on the screen.
-Alternatively, you can use `press(...).release.perform` instead of `tap(...).perform`.
-
-__Parameters:__
-
- [Hash] opts - a customizable set of options
-
---
-
-##### [double_tap](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/touch_actions.rb#L120)
-
-> def double_tap(opts)
-
-Double tap an element on the screen
-
-__Parameters:__
-
- [Hash] opts - a customizable set of options
-
---
-
-##### [two_finger_tap](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/touch_actions.rb#L131)
-
-> def two_finger_tap(opts)
-
-Two finger tap an element on the screen
-
-__Parameters:__
-
- [Hash] opts - a customizable set of options
-
---
-
-##### [wait](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/touch_actions.rb#L139)
-
-> def wait(milliseconds)
-
-Pause for a number of milliseconds before the next action
-
-__Parameters:__
-
- [integer] milliseconds - Number of milliseconds to pause for
-
---
-
-##### [swipe](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/touch_actions.rb#L162)
-
-> def swipe(opts, ele = nil)
-
-Convenience method to peform a swipe.
-
-Note that iOS 7 simulators have broken swipe.
-
-For iOS: Use `offset_x` and `offset_y` to define the end point.
-
-For Android: Use `end_x` and `end_y` to define the end point.
-
-If you'd like more details, please read tests and its log samples in
-`ios_tests/lib/ios/specs/device/touch_actions.rb` and `ios_tests/lib/ios/specs/device/touch_actions.rb`
-
-__Parameters:__
-
- [Hash] opts - a customizable set of options
-
---
-
-##### [perform](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/touch_actions.rb#L187)
-
-> def perform(driver = $driver)
-
-Ask the driver to perform all actions in this action chain.
-
---
-
-##### [cancel](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/touch_actions.rb#L194)
-
-> def cancel(driver = $driver)
-
-Does nothing, currently.
-
---
-
-##### [swipe_coordinates](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/touch_actions.rb#L201)
-
-> def swipe_coordinates(end_x: nil, end_y: nil, offset_x: nil, offset_y: nil, driver: $driver)
-
-Visible for testing
-
---
-
-##### [chain_method](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/touch_actions.rb#L219)
-
-> def chain_method(method, args = nil)
-
-
-
---
-
-##### [args_with_ele_ref](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/device/touch_actions.rb#L225)
-
-> def args_with_ele_ref(args)
-
-
-
---
-
-##### [initialize](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/wait.rb#L4)
-
-> def initialize(opts = {})
-
-
-
__Returns:__
- [Wait] a new instance of Wait
+ [String] Class name for text
--
-##### [until](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/wait.rb#L23)
+##### [text](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/text.rb#L16) ios
-> def until
+> def text(value)
-Wait code from the selenium Ruby gem
-https://github.com/SeleniumHQ/selenium/blob/cf501dda3f0ed12233de51ce8170c0e8090f0c20/rb/lib/selenium/webdriver/common/wait.rb
+Find the first UIAStaticText|XCUIElementTypeStaticText that contains value or by index.
+If int then the UIAStaticText|XCUIElementTypeStaticText at that index is returned.
---
-
-##### [wait_true](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/wait.rb#L73)
-
-> def wait_true(opts = {})
-
-Check every interval seconds to see if yield returns a truthy value.
-Note this isn't a strict boolean true, any truthy value is accepted.
-false and nil are considered failures.
-Give up after timeout seconds.
-
-Wait code from the selenium Ruby gem
-https://github.com/SeleniumHQ/selenium/blob/cf501dda3f0ed12233de51ce8170c0e8090f0c20/rb/lib/selenium/webdriver/common/wait.rb
-
-If only a number is provided then it's treated as the timeout value.
-
__Parameters:__
- [Hash] opts - Options
+ [String, Integer] value - the value to find.
---
-
-##### [wait](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/wait.rb#L96)
-
-> def wait(opts = {})
-
-Check every interval seconds to see if yield doesn't raise an exception.
-Give up after timeout seconds.
-
-Wait code from the selenium Ruby gem
-https://github.com/SeleniumHQ/selenium/blob/cf501dda3f0ed12233de51ce8170c0e8090f0c20/rb/lib/selenium/webdriver/common/wait.rb
-
-If only a number is provided then it's treated as the timeout value.
-
-__Parameters:__
-
- [Hash] opts - Options
-
---
-
-##### [ignore](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/helper.rb#L24)
-
-> def ignore
-
-Return yield and ignore any exceptions.
-
---
-
-##### [back](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/helper.rb#L31)
-
-> def back
-
-Navigate back.
-
__Returns:__
- [void]
+ [UIAStaticText|XCUIElementTypeStaticText]
--
-##### [session_id](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/helper.rb#L36)
+##### [texts](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/text.rb#L25) ios
-> def session_id
+> def texts(value = false)
-For Sauce Labs reporting. Returns the current session id.
+Find all UIAStaticTexts|XCUIElementTypeStaticTexts containing value.
+If value is omitted, all UIAStaticTexts|XCUIElementTypeStaticTexts are returned
---
-
-##### [xpath](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/helper.rb#L44)
-
-> def xpath(xpath_str)
-
-Returns the first element that matches the provided xpath.
-
__Parameters:__
- [String] xpath_str - the XPath string
+ [String] value - the value to search for
__Returns:__
- [Element]
+ [Array<UIAStaticText|XCUIElementTypeStaticText>]
--
-##### [xpaths](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/helper.rb#L52)
+##### [first_text](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/text.rb#L32) ios
-> def xpaths(xpath_str)
+> def first_text
-Returns all elements that match the provided xpath.
+Find the first UIAStaticText|XCUIElementTypeStaticText.
-__Parameters:__
-
- [String] xpath_str - the XPath string
-
__Returns:__
- [Array<Element>]
+ [UIAStaticText|XCUIElementTypeStaticText]
--
-##### [_print_source](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/helper.rb#L56)
+##### [last_text](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/text.rb#L38) ios
-> def _print_source(source)
+> def last_text
+Find the last UIAStaticText|XCUIElementTypeStaticText.
-
---
-
-##### [result](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/helper.rb#L69)
-
-> def result
-
-Returns the value of attribute result
-
---
-
-##### [initialize](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/helper.rb#L71)
-
-> def initialize
-
-
-
__Returns:__
- [CountElements] a new instance of CountElements
+ [UIAStaticText|XCUIElementTypeStaticText]
--
-##### [reset](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/helper.rb#L75)
+##### [text_exact](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/text.rb#L45) ios
-> def reset
+> def text_exact(value)
+Find the first UIAStaticText|XCUIElementTypeStaticText that exactly matches value.
-
---
-
-##### [start_element](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/helper.rb#L80)
-
-> def start_element(name, attrs = [], driver = $driver)
-
-http://nokogiri.org/Nokogiri/XML/SAX/Document.html
-
---
-
-##### [formatted_result](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/helper.rb#L86)
-
-> def formatted_result
-
-
-
---
-
-##### [get_page_class](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/helper.rb#L97)
-
-> def get_page_class
-
-Returns a string of class counts of visible elements.
-
---
-
-##### [page_class](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/helper.rb#L108)
-
-> def page_class
-
-Count all classes on screen and print to stdout.
-Useful for appium_console.
-
---
-
-##### [px_to_window_rel](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/helper.rb#L118)
-
-> def px_to_window_rel(opts = {}, driver = $driver)
-
-Converts pixel values to window relative values
-
-```ruby
-px_to_window_rel x: 50, y: 150
-```
-
---
-
-##### [xml_keys](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/helper.rb#L137)
-
-> def xml_keys(target)
-
-Search strings.xml's values for target.
-
__Parameters:__
- [String] target - the target to search for in strings.xml values
+ [String] value - the value to match exactly
__Returns:__
- [Array]
+ [UIAStaticText|XCUIElementTypeStaticText]
--
-##### [xml_values](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/helper.rb#L145)
+##### [texts_exact](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/text.rb#L52) ios
-> def xml_values(target)
+> def texts_exact(value)
-Search strings.xml's keys for target.
+Find all UIAStaticTexts|XCUIElementTypeStaticTexts that exactly match value.
__Parameters:__
- [String] target - the target to search for in strings.xml keys
+ [String] value - the value to match exactly
__Returns:__
- [Array]
+ [Array<UIAStaticText|XCUIElementTypeStaticText>]
--
-##### [resolve_id](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/helper.rb#L153)
+##### [filter](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L4) ios
-> def resolve_id(id)
-
-Resolve id in strings.xml and return the value.
-
-__Parameters:__
-
- [String] id - the id to resolve
-
-__Returns:__
-
- [String]
-
---
-
-##### [filter](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/helper.rb#L159)
-
> def filter
Returns the value of attribute filter
--
-##### [filter=](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/helper.rb#L162)
+##### [filter=](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L4) ios
> def filter=(value)
-convert to string to support symbols
-
---
-
-##### [initialize](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/helper.rb#L168)
-
-> def initialize
-
-
-
-__Returns:__
-
- [HTMLElements] a new instance of HTMLElements
-
---
-
-##### [reset](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/helper.rb#L173)
-
-> def reset
-
-
-
---
-
-##### [result](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/helper.rb#L179)
-
-> def result
-
-
-
---
-
-##### [start_element](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/helper.rb#L195)
-
-> def start_element(name, attrs = [])
-
-
-
---
-
-##### [end_element](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/helper.rb#L204)
-
-> def end_element(name)
-
-
-
---
-
-##### [characters](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/helper.rb#L210)
-
-> def characters(chars)
-
-
-
---
-
-##### [COMMAND_NO_ARG](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/command.rb#L4)
-
-> COMMAND_NO_ARG = {
-
-
-
---
-
-##### [COMMAND](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/command.rb#L28)
-
-> COMMAND = {
-
-
-
---
-
-##### [COMMANDS_EXTEND_OSS](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/command.rb#L66)
-
-> COMMANDS_EXTEND_OSS = COMMAND.merge(::Selenium::WebDriver::Remote::OSS::Bridge::COMMANDS).freeze
-
-
-
---
-
-##### [COMMANDS_EXTEND_W3C](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/command.rb#L67)
-
-> COMMANDS_EXTEND_W3C = COMMAND.merge(::Selenium::WebDriver::Remote::W3C::Bridge::COMMANDS).freeze
-
-
-
---
-
-##### [window_size](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/element/window.rb#L5)
-
-> def window_size
-
-Get the window's size
-
---
-
-##### [FINDERS](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/search_context.rb#L5)
-
-> FINDERS = {
-
-rubocop:disable Style/MutableConstant
-
---
-
-##### [filter](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L4) ios
-
-> def filter
-
-Returns the value of attribute filter
-
---
-
-##### [filter=](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L4) ios
-
-> def filter=(value)
-
Sets the attribute filter
__Parameters:__
value - the value to set the attribute filter to.
--
-##### [start_element](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L6) ios
+##### [start_element](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L6) ios
> def start_element(type, attrs = [])
--
-##### [_print_attr](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L15) ios
+##### [ios_password](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L43) ios
-> def _print_attr(type, name, label, value, hint, visible) # rubocop:disable Metrics/ParameterLists
-
-rubocop:disable Metrics/ParameterLists
-
---
-
-##### [ios_password](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L42) ios
-
> def ios_password(length = 1)
iOS only. On Android uiautomator always returns an empty string for EditText password.
Password character returned from value of UIASecureTextField
@@ -2029,44 +1372,16 @@
[String] the returned string is of size length
--
-##### [get_page](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L55) ios
+##### [page](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L59) ios
-> def get_page(element = source_window(0), class_name = nil)
-
-Returns a string of interesting elements. iOS only.
-
-Defaults to inspecting the 1st windows source only.
-use get_page(get_source) for all window sources
-
-__Parameters:__
-
- [Hash] element - a customizable set of options
-
- [Hash] class_name - a customizable set of options
-
-__Returns:__
-
- [String]
-
---
-
-##### [page](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L142) ios
-
> def page(opts = {})
Prints a string of interesting elements to the console.
-Example
-
-```ruby
-page class: :UIAButton # filter on buttons
-page class: :UIAButton, window: 1
-```
-
__Parameters:__
[Hash] visible - a customizable set of options
[Hash] class - a customizable set of options
@@ -2075,42 +1390,24 @@
[void]
--
-##### [source_window](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L166) ios
+##### [source_window](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L83) ios
-> def source_window(window_number = nil)
+> def source_window(_window_number = nil)
Gets the JSON source of window number
__Returns:__
[JSON]
--
-##### [page_window](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L177) ios
+##### [id](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L91) ios
-> def page_window(window_number = 0)
-
-Prints parsed page source to console.
-
-example: page_window 0
-
-__Parameters:__
-
- [Integer] window_number - the int index of the target window
-
-__Returns:__
-
- [void]
-
---
-
-##### [id](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L185) ios
-
> def id(id)
Find by id
__Parameters:__
@@ -2121,24 +1418,12 @@
[Element]
--
-##### [ios_version](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L191) ios
+##### [ele_index](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L99) ios
-> def ios_version
-
-Return the iOS version as an array of integers
-
-__Returns:__
-
- [Array<Integer>]
-
---
-
-##### [ele_index](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L200) ios
-
> def ele_index(class_name, index)
Get the element of type class_name at matching index.
__Parameters:__
@@ -2151,11 +1436,11 @@
[Element]
--
-##### [find_ele_by_attr](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L228) ios
+##### [find_ele_by_attr](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L127) ios
> def find_ele_by_attr(class_name, attr, value)
Find the first element exactly matching class and attribute value.
Note: Uses XPath
@@ -2173,11 +1458,11 @@
[Element]
--
-##### [find_eles_by_attr](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L239) ios
+##### [find_eles_by_attr](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L138) ios
> def find_eles_by_attr(class_name, attr, value)
Find all elements exactly matching class and attribute value.
Note: Uses XPath
@@ -2195,11 +1480,11 @@
[Array<Element>]
--
-##### [find_ele_by_predicate](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L252) ios
+##### [find_ele_by_predicate](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L151) ios
> def find_ele_by_predicate(class_name: '*', value:)
Find the first element exactly matching attribute case insensitive value.
Note: Uses Predicate
@@ -2212,11 +1497,11 @@
[Element]
--
-##### [find_eles_by_predicate](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L263) ios
+##### [find_eles_by_predicate](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L162) ios
> def find_eles_by_predicate(class_name: '*', value:)
Find all elements exactly matching attribute case insensitive value.
Note: Uses Predicate
@@ -2231,11 +1516,11 @@
[Array<Element>]
--
-##### [find_ele_by_attr_include](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L279) ios
+##### [find_ele_by_attr_include](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L178) ios
> def find_ele_by_attr_include(class_name, attr, value)
Get the first tag by attribute that exactly matches value.
Note: Uses XPath
@@ -2252,11 +1537,11 @@
[Element] the element of type tag who's attribute includes value
--
-##### [find_eles_by_attr_include](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L289) ios
+##### [find_eles_by_attr_include](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L188) ios
> def find_eles_by_attr_include(class_name, attr, value)
Get tags by attribute that include value.
Note: Uses XPath
@@ -2273,11 +1558,11 @@
[Array<Element>] the elements of type tag who's attribute includes value
--
-##### [find_ele_by_predicate_include](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L297) ios
+##### [find_ele_by_predicate_include](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L196) ios
> def find_ele_by_predicate_include(class_name: '*', value:)
Get the first elements that include insensitive value.
Note: Uses Predicate
@@ -2290,11 +1575,11 @@
[Element] the element of type tag who's attribute includes value
--
-##### [find_eles_by_predicate_include](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L308) ios
+##### [find_eles_by_predicate_include](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L207) ios
> def find_eles_by_predicate_include(class_name: '*', value:)
Get elements that include case insensitive value.
Note: Uses Predicate
@@ -2309,11 +1594,11 @@
[Array<Element>] the elements of type tag who's attribute includes value
--
-##### [first_ele](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L321) ios
+##### [first_ele](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L220) ios
> def first_ele(class_name)
Get the first tag that matches class_name
@@ -2325,11 +1610,11 @@
[Element]
--
-##### [last_ele](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L328) ios
+##### [last_ele](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L227) ios
> def last_ele(class_name)
Get the last tag that matches class_name
@@ -2341,11 +1626,11 @@
[Element]
--
-##### [tag](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L336) ios
+##### [tag](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L235) ios
> def tag(class_name)
Returns the first **visible** element matching class_name
@@ -2357,11 +1642,11 @@
[Element]
--
-##### [tags](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L344) ios
+##### [tags](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L243) ios
> def tags(class_name)
Returns all visible elements matching class_name
@@ -2373,11 +1658,11 @@
[Element]
--
-##### [tags_include](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L355) ios
+##### [tags_include](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L254) ios
> def tags_include(class_names:, value: nil)
Returns all visible elements matching class_names and value
This method calls find_element/s and element.value/text many times.
@@ -2393,11 +1678,11 @@
[Array[Element]]
--
-##### [tags_exact](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L370) ios
+##### [tags_exact](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L269) ios
> def tags_exact(class_names:, value: nil)
Returns all visible elements matching class_names and value.
This method calls find_element/s and element.value/text many times.
@@ -2413,11 +1698,11 @@
[Array[Element]]
--
-##### [ele_by_json_visible_contains](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L407) ios
+##### [ele_by_json_visible_contains](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L306) ios
> def ele_by_json_visible_contains(element, value)
Find the first element that contains value.
For Appium(automation name), not XCUITest
@@ -2432,11 +1717,11 @@
[Element]
--
-##### [eles_by_json_visible_contains](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L416) ios
+##### [eles_by_json_visible_contains](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L315) ios
> def eles_by_json_visible_contains(element, value)
Find all elements containing value
For Appium(automation name), not XCUITest
@@ -2451,11 +1736,11 @@
[Array<Element>]
--
-##### [ele_by_json_visible_exact](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L446) ios
+##### [ele_by_json_visible_exact](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L345) ios
> def ele_by_json_visible_exact(element, value)
Find the first element exactly matching value
For Appium(automation name), not XCUITest
@@ -2470,11 +1755,11 @@
[Element]
--
-##### [eles_by_json_visible_exact](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L455) ios
+##### [eles_by_json_visible_exact](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L354) ios
> def eles_by_json_visible_exact(element, value)
Find all elements exactly matching value
For Appium(automation name), not XCUITest
@@ -2489,21 +1774,21 @@
[Element]
--
-##### [_all_pred](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L464) ios
+##### [_all_pred](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L363) ios
> def _all_pred(opts)
predicate - the predicate to evaluate on the main app
visible - if true, only visible elements are returned. default true
--
-##### [ele_with_pred](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L477) ios
+##### [ele_with_pred](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L376) ios
> def ele_with_pred(opts)
returns element matching predicate contained in the main app
@@ -2515,11 +1800,11 @@
[Element]
--
-##### [eles_with_pred](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L488) ios
+##### [eles_with_pred](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L387) ios
> def eles_with_pred(opts)
returns elements matching predicate contained in the main app
@@ -2531,11 +1816,11 @@
[Array<Element>]
--
-##### [source](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L494) ios
+##### [source](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L393) ios
> def source
Prints xml of the current page
@@ -2543,19 +1828,19 @@
[void]
--
-##### [_validate_object](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L498) ios
+##### [_validate_object](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L397) ios
> def _validate_object(*objects)
--
-##### [_by_json](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L547) ios
+##### [_by_json](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L446) ios
> def _by_json(opts)
For Appium(automation name), not XCUITest
typeArray - array of string types to search for. Example: ["UIAStaticText"]
@@ -2586,11 +1871,11 @@
}
}
--
-##### [eles_by_json](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L597) ios
+##### [eles_by_json](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L496) ios
> def eles_by_json(opts)
For Appium(automation name), not XCUITest
example usage:
@@ -2605,19 +1890,19 @@
},
})
--
-##### [ele_by_json](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L603) ios
+##### [ele_by_json](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L502) ios
> def ele_by_json(opts)
see eles_by_json
--
-##### [get_source](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/helper.rb#L613) ios
+##### [get_source](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/common/helper.rb#L512) ios
> def get_source
Returns XML string for the current page
Same as driver.page_source
@@ -2626,141 +1911,23 @@
[String]
--
-##### [UIAStaticText](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/text.rb#L4) ios
+##### [alert_accept](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/alert.rb#L5) ios
-> UIAStaticText = 'UIAStaticText'.freeze
-
-
-
---
-
-##### [XCUIElementTypeStaticText](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/text.rb#L5) ios
-
-> XCUIElementTypeStaticText = 'XCUIElementTypeStaticText'.freeze
-
-
-
---
-
-##### [static_text_class](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/text.rb#L8) ios
-
-> def static_text_class
-
-
-
-__Returns:__
-
- [String] Class name for text
-
---
-
-##### [text](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/text.rb#L16) ios
-
-> def text(value)
-
-Find the first UIAStaticText|XCUIElementTypeStaticText that contains value or by index.
-If int then the UIAStaticText|XCUIElementTypeStaticText at that index is returned.
-
-__Parameters:__
-
- [String, Integer] value - the value to find.
-
-__Returns:__
-
- [UIAStaticText|XCUIElementTypeStaticText]
-
---
-
-##### [texts](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/text.rb#L25) ios
-
-> def texts(value = false)
-
-Find all UIAStaticTexts|XCUIElementTypeStaticTexts containing value.
-If value is omitted, all UIAStaticTexts|XCUIElementTypeStaticTexts are returned
-
-__Parameters:__
-
- [String] value - the value to search for
-
-__Returns:__
-
- [Array<UIAStaticText|XCUIElementTypeStaticText>]
-
---
-
-##### [first_text](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/text.rb#L32) ios
-
-> def first_text
-
-Find the first UIAStaticText|XCUIElementTypeStaticText.
-
-__Returns:__
-
- [UIAStaticText|XCUIElementTypeStaticText]
-
---
-
-##### [last_text](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/text.rb#L38) ios
-
-> def last_text
-
-Find the last UIAStaticText|XCUIElementTypeStaticText.
-
-__Returns:__
-
- [UIAStaticText|XCUIElementTypeStaticText]
-
---
-
-##### [text_exact](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/text.rb#L45) ios
-
-> def text_exact(value)
-
-Find the first UIAStaticText|XCUIElementTypeStaticText that exactly matches value.
-
-__Parameters:__
-
- [String] value - the value to match exactly
-
-__Returns:__
-
- [UIAStaticText|XCUIElementTypeStaticText]
-
---
-
-##### [texts_exact](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/text.rb#L52) ios
-
-> def texts_exact(value)
-
-Find all UIAStaticTexts|XCUIElementTypeStaticTexts that exactly match value.
-
-__Parameters:__
-
- [String] value - the value to match exactly
-
-__Returns:__
-
- [Array<UIAStaticText|XCUIElementTypeStaticText>]
-
---
-
-##### [alert_accept](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/alert.rb#L5) ios
-
> def alert_accept
Accept the alert.
__Returns:__
[void]
--
-##### [alert_dismiss](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/alert.rb#L13) ios
+##### [alert_dismiss](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/alert.rb#L13) ios
> def alert_dismiss
Dismiss the alert.
@@ -2768,27 +1935,27 @@
[void]
--
-##### [UIAButton](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/button.rb#L4) ios
+##### [UIAButton](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/button.rb#L4) ios
> UIAButton = 'UIAButton'.freeze
--
-##### [XCUIElementTypeButton](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/button.rb#L5) ios
+##### [XCUIElementTypeButton](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/button.rb#L5) ios
> XCUIElementTypeButton = 'XCUIElementTypeButton'.freeze
--
-##### [button_class](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/button.rb#L8) ios
+##### [button_class](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/button.rb#L8) ios
> def button_class
@@ -2796,11 +1963,11 @@
[String] Class name for button
--
-##### [button](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/button.rb#L16) ios
+##### [button](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/button.rb#L16) ios
> def button(value)
Find the first UIAButton|XCUIElementTypeButton that contains value or by index.
If int then the UIAButton|XCUIElementTypeButton at that index is returned.
@@ -2813,11 +1980,11 @@
[UIAButton|XCUIElementTypeButton]
--
-##### [buttons](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/button.rb#L26) ios
+##### [buttons](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/button.rb#L26) ios
> def buttons(value = false)
Find all UIAButtons|XCUIElementTypeButtons containing value.
If value is omitted, all UIAButtons|XCUIElementTypeButtons are returned.
@@ -2830,11 +1997,11 @@
[Array<UIAButton|XCUIElementTypeButton>]
--
-##### [first_button](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/button.rb#L33) ios
+##### [first_button](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/button.rb#L33) ios
> def first_button
Find the first UIAButton|XCUIElementTypeButton.
@@ -2842,11 +2009,11 @@
[UIAButton|XCUIElementTypeButton]
--
-##### [last_button](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/button.rb#L41) ios
+##### [last_button](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/button.rb#L41) ios
> def last_button
TODO: add documentation regarding previous element.
Previous UIAElement is differ from UIAButton|XCUIElementTypeButton. So, the results are different.
@@ -2856,11 +2023,11 @@
[UIAButton|XCUIElementTypeButton]
--
-##### [button_exact](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/button.rb#L48) ios
+##### [button_exact](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/button.rb#L48) ios
> def button_exact(value)
Find the first UIAButton|XCUIElementTypeButton that exactly matches value.
@@ -2872,11 +2039,11 @@
[UIAButton|XCUIElementTypeButton]
--
-##### [buttons_exact](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/button.rb#L55) ios
+##### [buttons_exact](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/button.rb#L55) ios
> def buttons_exact(value)
Find all UIAButtons|XCUIElementTypeButtons that exactly match value.
@@ -2888,38 +2055,12 @@
[Array<UIAButton|XCUIElementTypeButton>]
--
-##### [uiautomation_find](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/mobile_methods.rb#L19) ios
+##### [find](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/generic.rb#L6) ios
-> def uiautomation_find
-
-find_element/s can be used with a [UIAutomation command](https://developer.apple.com/library/ios/documentation/ToolsLanguages/Reference/UIAWindowClassReference/UIAWindow/UIAWindow.html#//apple_ref/doc/uid/TP40009930).
-
-```ruby
- find_elements :uiautomation, 'elements()
-```
-
---
-
-##### [ios_predicate_string_find](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/mobile_methods.rb#L19) ios
-
-> def ios_predicate_string_find
-
-find_element/s can be used with a [Predicates](https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/Predicates/AdditionalChapters/Introduction.html)
-
-```ruby
- find_elements :predicate, "isWDVisible == 1"
- find_elements :predicate, 'wdName == "Buttons"'
- find_elements :predicate, 'wdValue == "SearchBar" AND isWDDivisible == 1'
-```
-
---
-
-##### [find](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/generic.rb#L6) ios
-
> def find(value)
Find the first element containing value
__Parameters:__
@@ -2930,11 +2071,11 @@
[Element]
--
-##### [finds](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/generic.rb#L13) ios
+##### [finds](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/generic.rb#L13) ios
> def finds(value)
Find all elements containing value
@@ -2946,11 +2087,11 @@
[Array<Element>]
--
-##### [find_exact](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/generic.rb#L20) ios
+##### [find_exact](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/generic.rb#L20) ios
> def find_exact(value)
Find the first element exactly matching value
@@ -2962,11 +2103,11 @@
[Element]
--
-##### [finds_exact](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/generic.rb#L27) ios
+##### [finds_exact](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/generic.rb#L27) ios
> def finds_exact(value)
Find all elements exactly matching value
@@ -2978,56 +2119,36 @@
[Array<Element>]
--
-##### [raise_error_if_no_element](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/generic.rb#L33) ios
+##### [raise_error_if_no_element](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/generic.rb#L33) ios
> def raise_error_if_no_element(element)
--
-##### [select_visible_elements](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/generic.rb#L40) ios
+##### [select_visible_elements](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/generic.rb#L40) ios
> def select_visible_elements(elements)
Return visible elements.
--
-##### [hide_keyboard](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/device.rb#L9) ios
+##### [for](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/bridge.rb#L7) ios
-> def hide_keyboard
+> def self.for(target)
-Hide the onscreen keyboard
-__Parameters:__
- [String] close_key - The name of the key which closes the keyboard.
-
- [Symbol] strategy - The symbol of the strategy which closes the keyboard.
-XCUITest ignore this argument.
-Default for iOS is `:pressKey`. Default for Android is `:tapOutside`.
-
--
-##### [ios_version](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/helper.rb#L7) ios
+##### [last_ele](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/helper.rb#L26) ios
-> def ios_version
-
-Return the iOS version as an array of integers
-
-__Returns:__
-
- [Array<Integer>]
-
---
-
-##### [last_ele](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/helper.rb#L32) ios
-
> def last_ele(class_name)
Get the last tag that matches class_name
__Parameters:__
@@ -3038,11 +2159,11 @@
[Element]
--
-##### [tag](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/helper.rb#L42) ios
+##### [tag](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/helper.rb#L36) ios
> def tag(class_name)
Returns the first **visible** element matching class_name
@@ -3054,11 +2175,11 @@
[Element]
--
-##### [tags](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/helper.rb#L50) ios
+##### [tags](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/helper.rb#L44) ios
> def tags(class_name)
Returns all visible elements matching class_name
@@ -3070,11 +2191,11 @@
[Element]
--
-##### [tags_include](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/helper.rb#L62) ios
+##### [tags_include](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/helper.rb#L56) ios
> def tags_include(class_names:, value: nil)
Returns all visible elements matching class_names and value
This method calls find_element/s and element.value/text many times.
@@ -3090,11 +2211,11 @@
[Array[Element]]
--
-##### [tags_exact](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/helper.rb#L85) ios
+##### [tags_exact](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/helper.rb#L79) ios
> def tags_exact(class_names:, value: nil)
Returns all visible elements matching class_names and value.
This method calls find_element/s and element.value/text many times.
@@ -3110,43 +2231,43 @@
[Array[Element]]
--
-##### [UIATextField](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/textfield.rb#L3) ios
+##### [UIATextField](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/textfield.rb#L3) ios
> UIATextField = 'UIATextField'.freeze
--
-##### [UIASecureTextField](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/textfield.rb#L4) ios
+##### [UIASecureTextField](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/textfield.rb#L4) ios
> UIASecureTextField = 'UIASecureTextField'.freeze
--
-##### [XCUIElementTypeTextField](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/textfield.rb#L6) ios
+##### [XCUIElementTypeTextField](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/textfield.rb#L6) ios
> XCUIElementTypeTextField = 'XCUIElementTypeTextField'.freeze
--
-##### [XCUIElementTypeSecureTextField](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/textfield.rb#L7) ios
+##### [XCUIElementTypeSecureTextField](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/textfield.rb#L7) ios
> XCUIElementTypeSecureTextField = 'XCUIElementTypeSecureTextField'.freeze
--
-##### [text_field_class](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/textfield.rb#L10) ios
+##### [text_field_class](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/textfield.rb#L10) ios
> def text_field_class
@@ -3154,11 +2275,11 @@
[String] Class name for text field
--
-##### [secure_text_field_class](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/textfield.rb#L15) ios
+##### [secure_text_field_class](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/textfield.rb#L15) ios
> def secure_text_field_class
@@ -3166,11 +2287,11 @@
[String] Class name for secure text field
--
-##### [textfield](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/textfield.rb#L24) ios
+##### [textfield](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/textfield.rb#L24) ios
> def textfield(value)
Find the first TextField that contains value or by index.
Note: Uses XPath
@@ -3184,11 +2305,11 @@
[TextField]
--
-##### [textfields](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/textfield.rb#L42) ios
+##### [textfields](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/textfield.rb#L42) ios
> def textfields(value = false)
Find all TextFields containing value.
If value is omitted, all TextFields are returned.
@@ -3201,11 +2322,11 @@
[Array<TextField>]
--
-##### [first_textfield](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/textfield.rb#L49) ios
+##### [first_textfield](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/textfield.rb#L49) ios
> def first_textfield
Find the first TextField.
@@ -3213,11 +2334,11 @@
[TextField]
--
-##### [last_textfield](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/textfield.rb#L55) ios
+##### [last_textfield](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/textfield.rb#L55) ios
> def last_textfield
Find the last TextField.
@@ -3225,11 +2346,11 @@
[TextField]
--
-##### [textfield_exact](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/textfield.rb#L64) ios
+##### [textfield_exact](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/textfield.rb#L64) ios
> def textfield_exact(value)
Find the first TextField that exactly matches value.
@@ -3241,11 +2362,11 @@
[TextField]
--
-##### [textfields_exact](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/textfield.rb#L71) ios
+##### [textfields_exact](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/textfield.rb#L71) ios
> def textfields_exact(value)
Find all TextFields that exactly match value.
@@ -3257,212 +2378,47 @@
[Array<TextField>]
--
-##### [_textfield_visible](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/textfield.rb#L78) ios
+##### [_textfield_visible](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/textfield.rb#L78) ios
> def _textfield_visible
Appium
--
-##### [_textfield_exact_string](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/textfield.rb#L83) ios
+##### [_textfield_exact_string](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/textfield.rb#L83) ios
> def _textfield_exact_string(value)
Appium
--
-##### [_textfield_contains_string](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/element/textfield.rb#L90) ios
+##### [_textfield_contains_string](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/element/textfield.rb#L90) ios
> def _textfield_contains_string(value)
Appium
--
-##### [swipe](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/gestures.rb#L11) ios
+##### [static_text_class](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/text.rb#L9) ios
-> def swipe(direction:, element: nil)
-
-
-
-__Parameters:__
-
- [string] direction - Either 'up', 'down', 'left' or 'right'.
-
- [Hash] opts - a customizable set of options
-
---
-
-##### [scroll](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/gestures.rb#L29) ios
-
-> def scroll(direction:, name: nil, element: nil, to_visible: nil, predicate_string: nil)
-
-
-
-__Parameters:__
-
- [string] direction - Either 'up', 'down', 'left' or 'right'.
-
- [Hash] opts - a customizable set of options
-
---
-
-##### [pinch](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/gestures.rb#L48) ios
-
-> def pinch(scale:, velocity: 1.0, element: nil)
-
-
-
-__Parameters:__
-
- [scale] scale - X tap coordinate of type float. Mandatory parameter
-
- [float] velocity - Y tap coordinate of type float. Mandatory parameter
-
- [Hash] opts - a customizable set of options
-
---
-
-##### [double_tap](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/gestures.rb#L63) ios
-
-> def double_tap(x: nil, y: nil, element: nil)
-
-
-
-__Parameters:__
-
- [float] x - X Screen x tap coordinate of type float. Mandatory parameter only if element is not set
-
- [float] y - Y Screen y tap coordinate of type float. Mandatory parameter only if element is not set
-
- [Hash] opts - a customizable set of options
-
---
-
-##### [touch_and_hold](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/gestures.rb#L80) ios
-
-> def touch_and_hold(x: nil, y: nil, element: nil, duration: 1.0)
-
-
-
-__Parameters:__
-
- [float] x - Screen x long tap coordinate of type float. Mandatory parameter only if element is not set
-
- [float] y - Screen y long tap coordinate of type float. Mandatory parameter only if element is not set
-
- [Float] duration - The float duration of press action in seconds. Mandatory parameter
-
- [Hash] opts - a customizable set of options
-
---
-
-##### [two_finger_tap](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/gestures.rb#L93) ios
-
-> def two_finger_tap(element:)
-
-
-
-__Parameters:__
-
- [Element] :element - Element to long tap on.
-
-```ruby
-two_finger_tap element: find_element(:accessibility_id, "some item")
-```
-
---
-
-##### [tap](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/gestures.rb#L108) ios
-
-> def tap(x:, y:, element: nil)
-
-
-
-__Parameters:__
-
- [float] x - X tap coordinate of type float. Mandatory parameter
-
- [float] y - Y tap coordinate of type float. Mandatory parameter
-
- [Hash] opts - a customizable set of options
-
---
-
-##### [drag_from_to_for_duration](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/gestures.rb#L128) ios
-
-> def drag_from_to_for_duration(from_x:, from_y:, to_x:, to_y:, duration: 1.0, element: nil)
-
-rubocop:disable Metrics/ParameterLists
-
-__Parameters:__
-
- [float] duration - Float number of seconds in range [0.5, 60]. How long the tap gesture at starting
-drag point should be before to start dragging. Mandatory parameter
-
- [float] from_x - The x coordinate of starting drag point (type float). Mandatory parameter
-
- [float] from_y - The y coordinate of starting drag point (type float). Mandatory parameter
-
- [float] to_x - The x coordinate of ending drag point (type float). Mandatory parameter
-
- [float] to_y - The y coordinate of ending drag point (type float). Mandatory parameter
-
- [Hash] opts - a customizable set of options
-
---
-
-##### [select_picker_wheel](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/gestures.rb#L145) ios
-
-> def select_picker_wheel(element:, order:, offset: nil)
-
-https://github.com/facebook/WebDriverAgent/pull/523
-https://github.com/appium/appium-xcuitest-driver/pull/420
-
-__Parameters:__
-
- [String] order - The order to move picker to. "next" or "previous".
-
- [Element] element - Element id to perform select picker wheel on.
-
- [Hash] opts - a customizable set of options
-
---
-
-##### [alert](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/gestures.rb#L163) ios
-
-> def alert(action:, button_label: nil)
-
-
-
-__Parameters:__
-
- [String] action - The following actions are supported: accept, dismiss and getButtons. Mandatory parameter
-
- [String] button_label - The label text of an existing alert button to click on.
-This is an optional parameter and is only valid in combination with accept and dismiss actions.
-
---
-
-##### [static_text_class](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/text.rb#L9) ios
-
> def static_text_class
__Returns:__
[String] Class name for text
--
-##### [text](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/text.rb#L17) ios
+##### [text](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/text.rb#L17) ios
> def text(value)
Find the first UIAStaticText|XCUIElementTypeStaticText that contains value or by index.
If int then the UIAStaticText|XCUIElementTypeStaticText at that index is returned.
@@ -3475,11 +2431,11 @@
[UIAStaticText|XCUIElementTypeStaticText]
--
-##### [texts](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/text.rb#L26) ios
+##### [texts](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/text.rb#L26) ios
> def texts(value = false)
Find all UIAStaticTexts|XCUIElementTypeStaticTexts containing value.
If value is omitted, all UIAStaticTexts|XCUIElementTypeStaticTexts are returned
@@ -3492,11 +2448,11 @@
[Array<UIAStaticText|XCUIElementTypeStaticText>]
--
-##### [first_text](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/text.rb#L34) ios
+##### [first_text](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/text.rb#L34) ios
> def first_text
Find the first UIAStaticText|XCUIElementTypeStaticText.
@@ -3504,11 +2460,11 @@
[UIAStaticText|XCUIElementTypeStaticText]
--
-##### [last_text](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/text.rb#L40) ios
+##### [last_text](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/text.rb#L40) ios
> def last_text
Find the last UIAStaticText|XCUIElementTypeStaticText.
@@ -3516,11 +2472,11 @@
[UIAStaticText|XCUIElementTypeStaticText]
--
-##### [text_exact](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/text.rb#L47) ios
+##### [text_exact](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/text.rb#L47) ios
> def text_exact(value)
Find the first UIAStaticText|XCUIElementTypeStaticText that exactly matches value.
@@ -3532,11 +2488,11 @@
[UIAStaticText|XCUIElementTypeStaticText]
--
-##### [texts_exact](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/text.rb#L54) ios
+##### [texts_exact](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/text.rb#L54) ios
> def texts_exact(value)
Find all UIAStaticTexts|XCUIElementTypeStaticTexts that exactly match value.
@@ -3548,11 +2504,11 @@
[Array<UIAStaticText|XCUIElementTypeStaticText>]
--
-##### [button_class](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/button.rb#L9) ios
+##### [button_class](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/button.rb#L9) ios
> def button_class
@@ -3560,11 +2516,11 @@
[String] Class name for button
--
-##### [button](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/button.rb#L17) ios
+##### [button](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/button.rb#L17) ios
> def button(value)
Find the first UIAButton|XCUIElementTypeButton that contains value or by index.
If int then the UIAButton|XCUIElementTypeButton at that index is returned.
@@ -3577,11 +2533,11 @@
[UIAButton|XCUIElementTypeButton]
--
-##### [buttons](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/button.rb#L27) ios
+##### [buttons](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/button.rb#L27) ios
> def buttons(value = false)
Find all UIAButtons|XCUIElementTypeButtons containing value.
If value is omitted, all UIAButtons|XCUIElementTypeButtons are returned.
@@ -3594,11 +2550,11 @@
[Array<UIAButton|XCUIElementTypeButton>]
--
-##### [first_button](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/button.rb#L35) ios
+##### [first_button](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/button.rb#L35) ios
> def first_button
Find the first UIAButton|XCUIElementTypeButton.
@@ -3606,11 +2562,11 @@
[UIAButton|XCUIElementTypeButton]
--
-##### [last_button](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/button.rb#L43) ios
+##### [last_button](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/button.rb#L43) ios
> def last_button
TODO: add documentation regarding previous element.
Previous UIAElement is differ from UIAButton|XCUIElementTypeButton. So, the results are different.
@@ -3620,11 +2576,11 @@
[UIAButton|XCUIElementTypeButton]
--
-##### [button_exact](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/button.rb#L50) ios
+##### [button_exact](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/button.rb#L50) ios
> def button_exact(value)
Find the first UIAButton|XCUIElementTypeButton that exactly matches value.
@@ -3636,11 +2592,11 @@
[UIAButton|XCUIElementTypeButton]
--
-##### [buttons_exact](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/button.rb#L57) ios
+##### [buttons_exact](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/button.rb#L57) ios
> def buttons_exact(value)
Find all UIAButtons|XCUIElementTypeButtons that exactly match value.
@@ -3652,30 +2608,12 @@
[Array<UIAButton|XCUIElementTypeButton>]
--
-##### [ios_class_chain_find](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/search_context.rb#L18) ios
+##### [find](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/generic.rb#L8) ios
-> def ios_class_chain_find
-
-Only for XCUITest(WebDriverAgent)
-find_element/s can be used with a [class chain]( https://github.com/facebook/WebDriverAgent/wiki/Queries)
-
-```ruby
- # select the third child button of the first child window element
- find_elements :class_chain, 'XCUIElementTypeWindow/XCUIElementTypeButton[3]'
- # select all the children windows
- find_elements :class_chain, 'XCUIElementTypeWindow'
- # select the second last child of the second child window
- find_elements :class_chain, 'XCUIElementTypeWindow[2]/XCUIElementTypeAny[-2]'
-```
-
---
-
-##### [find](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/generic.rb#L8) ios
-
> def find(value)
Find the first element containing value
__Parameters:__
@@ -3686,11 +2624,11 @@
[Element]
--
-##### [finds](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/generic.rb#L15) ios
+##### [finds](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/generic.rb#L15) ios
> def finds(value)
Find all elements containing value
@@ -3702,11 +2640,11 @@
[Array<Element>]
--
-##### [find_exact](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/generic.rb#L23) ios
+##### [find_exact](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/generic.rb#L23) ios
> def find_exact(value)
Find the first element exactly matching value
@@ -3718,11 +2656,11 @@
[Element]
--
-##### [finds_exact](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/generic.rb#L30) ios
+##### [finds_exact](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/generic.rb#L30) ios
> def finds_exact(value)
Find all elements exactly matching value
@@ -3734,39 +2672,204 @@
[Array<Element>]
--
-##### [raise_error_if_no_element](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/generic.rb#L37) ios
+##### [raise_error_if_no_element](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/generic.rb#L37) ios
> def raise_error_if_no_element(element)
--
-##### [select_visible_elements](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/generic.rb#L44) ios
+##### [select_visible_elements](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/generic.rb#L44) ios
> def select_visible_elements(elements)
Return visible elements.
--
-##### [text_field_class](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/textfield.rb#L9) ios
+##### [swipe](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/command/gestures.rb#L11) ios
+> def swipe(direction:, element: nil)
+
+
+
+__Parameters:__
+
+ [string] direction - Either 'up', 'down', 'left' or 'right'.
+
+ [Hash] opts - a customizable set of options
+
+--
+
+##### [scroll](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/command/gestures.rb#L29) ios
+
+> def scroll(direction:, name: nil, element: nil, to_visible: nil, predicate_string: nil)
+
+
+
+__Parameters:__
+
+ [string] direction - Either 'up', 'down', 'left' or 'right'.
+
+ [Hash] opts - a customizable set of options
+
+--
+
+##### [pinch](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/command/gestures.rb#L48) ios
+
+> def pinch(scale:, velocity: 1.0, element: nil)
+
+
+
+__Parameters:__
+
+ [scale] scale - X tap coordinate of type float. Mandatory parameter
+
+ [float] velocity - Y tap coordinate of type float. Mandatory parameter
+
+ [Hash] opts - a customizable set of options
+
+--
+
+##### [double_tap](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/command/gestures.rb#L63) ios
+
+> def double_tap(x: nil, y: nil, element: nil)
+
+
+
+__Parameters:__
+
+ [float] x - X Screen x tap coordinate of type float. Mandatory parameter only if element is not set
+
+ [float] y - Y Screen y tap coordinate of type float. Mandatory parameter only if element is not set
+
+ [Hash] opts - a customizable set of options
+
+--
+
+##### [touch_and_hold](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/command/gestures.rb#L80) ios
+
+> def touch_and_hold(x: nil, y: nil, element: nil, duration: 1.0)
+
+
+
+__Parameters:__
+
+ [float] x - Screen x long tap coordinate of type float. Mandatory parameter only if element is not set
+
+ [float] y - Screen y long tap coordinate of type float. Mandatory parameter only if element is not set
+
+ [Float] duration - The float duration of press action in seconds. Mandatory parameter
+
+ [Hash] opts - a customizable set of options
+
+--
+
+##### [two_finger_tap](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/command/gestures.rb#L93) ios
+
+> def two_finger_tap(element:)
+
+
+
+__Parameters:__
+
+ [Element] element - Element to long tap on.
+
+```ruby
+two_finger_tap element: find_element(:accessibility_id, "some item")
+```
+
+--
+
+##### [tap](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/command/gestures.rb#L108) ios
+
+> def tap(x:, y:, element: nil)
+
+
+
+__Parameters:__
+
+ [float] x - X tap coordinate of type float. Mandatory parameter
+
+ [float] y - Y tap coordinate of type float. Mandatory parameter
+
+ [Hash] opts - a customizable set of options
+
+--
+
+##### [drag_from_to_for_duration](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/command/gestures.rb#L128) ios
+
+> def drag_from_to_for_duration(from_x:, from_y:, to_x:, to_y:, duration: 1.0, element: nil)
+
+rubocop:disable Metrics/ParameterLists
+
+__Parameters:__
+
+ [float] duration - Float number of seconds in range [0.5, 60]. How long the tap gesture at starting
+drag point should be before to start dragging. Mandatory parameter
+
+ [float] from_x - The x coordinate of starting drag point (type float). Mandatory parameter
+
+ [float] from_y - The y coordinate of starting drag point (type float). Mandatory parameter
+
+ [float] to_x - The x coordinate of ending drag point (type float). Mandatory parameter
+
+ [float] to_y - The y coordinate of ending drag point (type float). Mandatory parameter
+
+ [Hash] opts - a customizable set of options
+
+--
+
+##### [select_picker_wheel](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/command/gestures.rb#L145) ios
+
+> def select_picker_wheel(element:, order:, offset: nil)
+
+https://github.com/facebook/WebDriverAgent/pull/523
+https://github.com/appium/appium-xcuitest-driver/pull/420
+
+__Parameters:__
+
+ [String] order - The order to move picker to. "next" or "previous".
+
+ [Element] element - Element id to perform select picker wheel on.
+
+ [Hash] opts - a customizable set of options
+
+--
+
+##### [alert](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/command/gestures.rb#L163) ios
+
+> def alert(action:, button_label: nil)
+
+
+
+__Parameters:__
+
+ [String] action - The following actions are supported: accept, dismiss and getButtons. Mandatory parameter
+
+ [String] button_label - The label text of an existing alert button to click on.
+This is an optional parameter and is only valid in combination with accept and dismiss actions.
+
+--
+
+##### [text_field_class](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/textfield.rb#L9) ios
+
> def text_field_class
__Returns:__
[String] Class name for text field
--
-##### [secure_text_field_class](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/textfield.rb#L14) ios
+##### [secure_text_field_class](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/textfield.rb#L14) ios
> def secure_text_field_class
@@ -3774,11 +2877,11 @@
[String] Class name for secure text field
--
-##### [textfield](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/textfield.rb#L23) ios
+##### [textfield](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/textfield.rb#L23) ios
> def textfield(value)
Find the first TextField that contains value or by index.
Note: Uses XPath
@@ -3792,11 +2895,11 @@
[TextField]
--
-##### [textfields](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/textfield.rb#L41) ios
+##### [textfields](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/textfield.rb#L41) ios
> def textfields(value = false)
Find all TextFields containing value.
If value is omitted, all TextFields are returned.
@@ -3809,11 +2912,11 @@
[Array<TextField>]
--
-##### [first_textfield](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/textfield.rb#L50) ios
+##### [first_textfield](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/textfield.rb#L50) ios
> def first_textfield
Find the first TextField.
@@ -3821,11 +2924,11 @@
[TextField]
--
-##### [last_textfield](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/textfield.rb#L56) ios
+##### [last_textfield](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/textfield.rb#L56) ios
> def last_textfield
Find the last TextField.
@@ -3833,11 +2936,11 @@
[TextField]
--
-##### [textfield_exact](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/textfield.rb#L65) ios
+##### [textfield_exact](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/textfield.rb#L65) ios
> def textfield_exact(value)
Find the first TextField that exactly matches value.
@@ -3849,11 +2952,11 @@
[TextField]
--
-##### [textfields_exact](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/element/textfield.rb#L72) ios
+##### [textfields_exact](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/element/textfield.rb#L72) ios
> def textfields_exact(value)
Find all TextFields that exactly match value.
@@ -3865,11 +2968,11 @@
[Array<TextField>]
--
-##### [set_pasteboard](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/command/pasteboard.rb#L12) ios
+##### [set_pasteboard](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/command/pasteboard.rb#L12) ios
> def set_pasteboard(content:, encoding: nil)
@@ -3880,69 +2983,17 @@
[Hash] opts - a customizable set of options
--
-##### [get_pasteboard](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/ios/xcuitest/command/pasteboard.rb#L24) ios
+##### [get_pasteboard](https://github.com/appium/ruby_lib/blob/01c8b6f15e8d01eb6b4e995eb265d1d1e8cf2332/lib/appium_lib/ios/xcuitest/command/pasteboard.rb#L24) ios
> def get_pasteboard(encoding: nil)
__Parameters:__
[Hash] opts - a customizable set of options
-
---
-
-##### [value](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/patch.rb#L12)
-
-> def value
-
-Returns the value attribute
-
-Fixes NoMethodError: undefined method `value' for Selenium::WebDriver::Element
-
---
-
-##### [name](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/patch.rb#L19)
-
-> def name
-
-Returns the name attribute
-
-Fixes NoMethodError: undefined method `name' for Selenium::WebDriver::Element
-
---
-
-##### [location_rel](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/patch.rb#L30)
-
-> def location_rel(driver = $driver)
-
-For use with mobile tap.
-
-```ruby
-execute_script 'mobile: tap', :x => 0.0, :y => 0.98
-```
-
-__Returns:__
-
- [OpenStruct] the relative x, y in a struct. ex: { x: 0.50, y: 0.20 }
-
---
-
-##### [DEFAULT_HEADERS](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/patch.rb#L170)
-
-> DEFAULT_HEADERS = { 'Accept' => CONTENT_TYPE, 'User-Agent' => "appium/ruby_lib/#{::Appium::VERSION}" }.freeze
-
-
-
---
-
-##### [patch_remote_driver_commands](https://github.com/appium/ruby_lib/blob/95118d4e0a6ec285e55862ea6b6fed528711ad84/lib/appium_lib/common/patch.rb#L173)
-
-> def patch_remote_driver_commands
-
-
--