appium_lib 9.5.0 → 9.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (38) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +33 -0
  3. data/docs/android_docs.md +512 -287
  4. data/docs/ios_docs.md +906 -315
  5. data/docs/ios_xcuitest.md +4 -0
  6. data/lib/appium_lib/android/device.rb +39 -0
  7. data/lib/appium_lib/android/element/button.rb +36 -65
  8. data/lib/appium_lib/android/element/generic.rb +20 -12
  9. data/lib/appium_lib/android/helper.rb +4 -16
  10. data/lib/appium_lib/android/uiautomator2/element/button.rb +110 -0
  11. data/lib/appium_lib/android/uiautomator2/helper.rb +85 -0
  12. data/lib/appium_lib/common/command.rb +9 -1
  13. data/lib/appium_lib/common/helper.rb +5 -4
  14. data/lib/appium_lib/common/patch.rb +21 -5
  15. data/lib/appium_lib/common/version.rb +2 -2
  16. data/lib/appium_lib/common/wait.rb +1 -0
  17. data/lib/appium_lib/device/device.rb +13 -23
  18. data/lib/appium_lib/device/multi_touch.rb +60 -20
  19. data/lib/appium_lib/device/touch_actions.rb +17 -8
  20. data/lib/appium_lib/driver.rb +79 -19
  21. data/lib/appium_lib/ios/element/button.rb +5 -25
  22. data/lib/appium_lib/ios/element/generic.rb +4 -22
  23. data/lib/appium_lib/ios/element/text.rb +5 -25
  24. data/lib/appium_lib/ios/element/textfield.rb +31 -78
  25. data/lib/appium_lib/ios/helper.rb +11 -74
  26. data/lib/appium_lib/ios/mobile_methods.rb +0 -20
  27. data/lib/appium_lib/ios/patch.rb +2 -6
  28. data/lib/appium_lib/ios/xcuitest/device.rb +59 -0
  29. data/lib/appium_lib/ios/xcuitest/element.rb +24 -0
  30. data/lib/appium_lib/ios/xcuitest/element/button.rb +64 -0
  31. data/lib/appium_lib/ios/xcuitest/element/generic.rb +50 -0
  32. data/lib/appium_lib/ios/xcuitest/element/text.rb +61 -0
  33. data/lib/appium_lib/ios/xcuitest/element/textfield.rb +94 -0
  34. data/lib/appium_lib/ios/{xcuitest_gestures.rb → xcuitest/gestures.rb} +10 -23
  35. data/lib/appium_lib/ios/xcuitest/helper.rb +103 -0
  36. data/lib/appium_lib/ios/xcuitest/mobile_methods.rb +23 -0
  37. data/release_notes.md +6 -0
  38. metadata +14 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1020ee201f0e91a48c6255fb1429d3da21993d49
4
- data.tar.gz: b0756d8e52573056eeaa308c61743b4e142cb99a
3
+ metadata.gz: b7e0b5b8e3cabbfb7551a8f24dc704b42fec4175
4
+ data.tar.gz: 1cfe10f0305be2028992fea261e56c6b49de3ef3
5
5
  SHA512:
6
- metadata.gz: 352a21bfe1b0a09969b21ef326e215dd09da761ceef6ff45d0bfcc32ad365ffbd3b4b284f6029e7263cbfd19262c15988b603b4bb64a7e4d2a67519fc54b0d51
7
- data.tar.gz: ad9f9443b0008da3020a710120493367fe19b1fa3e2858b8b739d1df2c9ce4b82e2c3da5a6909163d59ba0f4089e5d4556e49df1d1f5761be4d4cc6e1504d5de
6
+ metadata.gz: 99b3b9c3ea4b6519228d742cba74bd1c0a4997837eb74e76f5ca8d2c6caf61268e15cbf0210857ef1f0ec84a3a658f8cb9bfdfb8bdd973ad486607536eff6823
7
+ data.tar.gz: 1257bd7710e73c55c0f13adddc3e877bff672186b3c481b6e29ae5eab2c8fa83456e34ddd6f8b758fa4d22eac31a3e44fc3a4a0a3b194c7fe4fced1a4dd290ec
data/CHANGELOG.md CHANGED
@@ -3,6 +3,39 @@ Commit based release not is [release_notes.md](./release_notes.md)
3
3
 
4
4
  Release tags are https://github.com/appium/ruby_lib/releases .
5
5
 
6
+ ## v9.5.0
7
+ ### 1. Enhancements
8
+ - Reduce Global Driver
9
+ - We need to provide `driver` to work `TouchAction` and `MultiAction` without global driver
10
+ - `TouchAction`
11
+ ```ruby
12
+ driver = Appium::Driver.new(opts, false).start_driver
13
+ action = TouchAction.new.press(x: 45, y: 100).wait(5).release
14
+ action.perform(driver)
15
+ action = TouchAction.new.swipe(....)
16
+ action.perform(driver)
17
+ ```
18
+
19
+ - `MultiAction`
20
+ ```ruby
21
+ driver = Appium::Driver.new(opts, false).start_driver
22
+ pinch 200, true, driver
23
+ ```
24
+ - Add example to run multiple iOS Simulators [doc](https://github.com/appium/ruby_lib/blob/master/docs/ios_xcuitest.md#run-tests-on-multiple-simulators-with-xcode-9)
25
+ - Require Xcode 9 and Appium 1.6.6
26
+
27
+ ### 2. Bug fixes
28
+ - `scroll_to` is failed on some Android 5.0 and 5.1 devices
29
+ - https://github.com/appium/ruby_lib/pull/638
30
+
31
+ ### 3. Deprecations
32
+
33
+ ### Special Thanks
34
+ - Fixing `acroll_to`
35
+ - [@emen](https://github.com/emen)
36
+ - Add alias `quit_driver`
37
+ - [@DylanLacey ](https://github.com/DylanLacey)
38
+
6
39
  ## v9.5.0
7
40
  ### 1. Enhancements
8
41
  - Support `selenium-webdriver3.4.1+`
data/docs/android_docs.md CHANGED
@@ -1,4 +1,4 @@
1
- ##### [load_settings](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L76)
1
+ ##### [load_settings](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L91)
2
2
 
3
3
  > def self.load_settings(opts = {})
4
4
 
@@ -27,7 +27,7 @@ __Returns:__
27
27
 
28
28
  --
29
29
 
30
- ##### [load_appium_txt](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L112)
30
+ ##### [load_appium_txt](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L127)
31
31
 
32
32
  > def self.load_settings(opts = {})
33
33
 
@@ -57,7 +57,7 @@ __Returns:__
57
57
 
58
58
  --
59
59
 
60
- ##### [expand_required_files](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L118)
60
+ ##### [expand_required_files](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L133)
61
61
 
62
62
  > def self.expand_required_files(base_dir, file_paths)
63
63
 
@@ -75,7 +75,7 @@ __Returns:__
75
75
 
76
76
  --
77
77
 
78
- ##### [symbolize_keys](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L150)
78
+ ##### [symbolize_keys](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L165)
79
79
 
80
80
  > def self.symbolize_keys(hash)
81
81
 
@@ -86,9 +86,9 @@ https://github.com/rails/docrails/blob/a3b1105ada3da64acfa3843b164b14b734456a50/
86
86
 
87
87
  --
88
88
 
89
- ##### [promote_singleton_appium_methods](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L171)
89
+ ##### [promote_singleton_appium_methods](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L186)
90
90
 
91
- > def self.promote_singleton_appium_methods(modules)
91
+ > def self.promote_singleton_appium_methods(modules, driver = $driver)
92
92
 
93
93
  This method is intended to work with page objects that share
94
94
  a common module. For example, Page::HomePage, Page::SignIn
@@ -104,9 +104,9 @@ otherwise, the array of modules will be used as the promotion target.
104
104
 
105
105
  --
106
106
 
107
- ##### [promote_appium_methods](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L224)
107
+ ##### [promote_appium_methods](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L239)
108
108
 
109
- > def self.promote_appium_methods(class_array)
109
+ > def self.promote_appium_methods(class_array, driver = $driver)
110
110
 
111
111
  Promote appium methods to class instance methods
112
112
 
@@ -134,7 +134,7 @@ __Parameters:__
134
134
 
135
135
  --
136
136
 
137
- ##### [selenium_webdriver_version_more?](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L251)
137
+ ##### [selenium_webdriver_version_more?](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L266)
138
138
 
139
139
  > def self.selenium_webdriver_version_more?(version)
140
140
 
@@ -146,7 +146,7 @@ __Returns:__
146
146
 
147
147
  --
148
148
 
149
- ##### [init_caps_for_appium](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L262)
149
+ ##### [init_caps_for_appium](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L277)
150
150
 
151
151
  > def self.init_caps_for_appium(opts_caps = {})
152
152
 
@@ -164,7 +164,7 @@ inherited ::Selenium::WebDriver::Remote::W3C::Capabilities
164
164
 
165
165
  --
166
166
 
167
- ##### [global_webdriver_http_sleep](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L275)
167
+ ##### [global_webdriver_http_sleep](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L290)
168
168
 
169
169
  > def global_webdriver_http_sleep
170
170
 
@@ -172,7 +172,7 @@ The amount to sleep in seconds before every webdriver http call.
172
172
 
173
173
  --
174
174
 
175
- ##### [global_webdriver_http_sleep=](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L275)
175
+ ##### [global_webdriver_http_sleep=](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L290)
176
176
 
177
177
  > def global_webdriver_http_sleep=(value)
178
178
 
@@ -180,7 +180,7 @@ The amount to sleep in seconds before every webdriver http call.
180
180
 
181
181
  --
182
182
 
183
- ##### [caps](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L277)
183
+ ##### [caps](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L292)
184
184
 
185
185
  > def caps
186
186
 
@@ -188,7 +188,7 @@ Selenium webdriver capabilities
188
188
 
189
189
  --
190
190
 
191
- ##### [custom_url](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L279)
191
+ ##### [custom_url](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L294)
192
192
 
193
193
  > def custom_url
194
194
 
@@ -196,7 +196,7 @@ Custom URL for the selenium server
196
196
 
197
197
  --
198
198
 
199
- ##### [export_session](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L281)
199
+ ##### [export_session](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L296)
200
200
 
201
201
  > def export_session
202
202
 
@@ -204,7 +204,7 @@ Export session id to textfile in /tmp for 3rd party tools
204
204
 
205
205
  --
206
206
 
207
- ##### [default_wait](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L286)
207
+ ##### [default_wait](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L301)
208
208
 
209
209
  > def default_wait
210
210
 
@@ -218,7 +218,7 @@ __Returns:__
218
218
 
219
219
  --
220
220
 
221
- ##### [sauce_username](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L288)
221
+ ##### [sauce_username](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L303)
222
222
 
223
223
  > def sauce_username
224
224
 
@@ -226,7 +226,7 @@ Username for use on Sauce Labs. Set `false` to disable Sauce, even when SAUCE_US
226
226
 
227
227
  --
228
228
 
229
- ##### [sauce_access_key](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L290)
229
+ ##### [sauce_access_key](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L305)
230
230
 
231
231
  > def sauce_access_key
232
232
 
@@ -234,7 +234,7 @@ Access Key for use on Sauce Labs. Set `false` to disable Sauce, even when SAUCE_
234
234
 
235
235
  --
236
236
 
237
- ##### [sauce_endpoint](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L292)
237
+ ##### [sauce_endpoint](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L307)
238
238
 
239
239
  > def sauce_endpoint
240
240
 
@@ -242,7 +242,7 @@ Override the Sauce Appium endpoint to allow e.g. TestObject tests
242
242
 
243
243
  --
244
244
 
245
- ##### [appium_port](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L294)
245
+ ##### [appium_port](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L309)
246
246
 
247
247
  > def appium_port
248
248
 
@@ -250,7 +250,7 @@ Appium's server port
250
250
 
251
251
  --
252
252
 
253
- ##### [appium_device](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L296)
253
+ ##### [appium_device](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L311)
254
254
 
255
255
  > def appium_device
256
256
 
@@ -258,7 +258,7 @@ Device type to request from the appium server
258
258
 
259
259
  --
260
260
 
261
- ##### [automation_name](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L299)
261
+ ##### [automation_name](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L314)
262
262
 
263
263
  > def automation_name
264
264
 
@@ -267,7 +267,7 @@ If automation_name is nil, it is not set both client side and server side.
267
267
 
268
268
  --
269
269
 
270
- ##### [appium_server_status](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L301)
270
+ ##### [appium_server_status](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L316)
271
271
 
272
272
  > def appium_server_status
273
273
 
@@ -275,7 +275,7 @@ Appium's server version
275
275
 
276
276
  --
277
277
 
278
- ##### [appium_debug](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L303)
278
+ ##### [appium_debug](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L318)
279
279
 
280
280
  > def appium_debug
281
281
 
@@ -283,7 +283,7 @@ Boolean debug mode for the Appium Ruby bindings
283
283
 
284
284
  --
285
285
 
286
- ##### [listener](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L305)
286
+ ##### [listener](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L320)
287
287
 
288
288
  > def listener
289
289
 
@@ -291,7 +291,7 @@ instance of AbstractEventListener for logging support
291
291
 
292
292
  --
293
293
 
294
- ##### [driver](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L308)
294
+ ##### [driver](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L323)
295
295
 
296
296
  > def driver
297
297
 
@@ -303,7 +303,7 @@ __Returns:__
303
303
 
304
304
  --
305
305
 
306
- ##### [http_client](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L311)
306
+ ##### [http_client](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L326)
307
307
 
308
308
  > def http_client
309
309
 
@@ -315,7 +315,7 @@ __Returns:__
315
315
 
316
316
  --
317
317
 
318
- ##### [appium_wait_timeout](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L316)
318
+ ##### [appium_wait_timeout](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L331)
319
319
 
320
320
  > def appium_wait_timeout
321
321
 
@@ -329,7 +329,7 @@ __Returns:__
329
329
 
330
330
  --
331
331
 
332
- ##### [appium_wait_interval](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L321)
332
+ ##### [appium_wait_interval](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L336)
333
333
 
334
334
  > def appium_wait_interval
335
335
 
@@ -343,23 +343,26 @@ __Returns:__
343
343
 
344
344
  --
345
345
 
346
- ##### [initialize](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L361)
346
+ ##### [initialize](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L390)
347
347
 
348
- > def initialize(opts = {})
348
+ > def initialize(opts = {}, global_driver = true)
349
349
 
350
- Creates a new driver
350
+ Creates a new driver. The driver is defined as global scope by default.
351
+ We can avoid defining global driver.
351
352
 
352
353
  __Parameters:__
353
354
 
354
355
       [Object] opts - A hash containing various options.
355
356
 
357
+      [Bool] global_driver - A bool require global driver before initialize.
358
+
356
359
  __Returns:__
357
360
 
358
361
       [Driver]
359
362
 
360
363
  --
361
364
 
362
- ##### [set_appium_lib_specific_values](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L427)
365
+ ##### [set_appium_lib_specific_values](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L468)
363
366
 
364
367
  > def set_appium_lib_specific_values(appium_lib_opts)
365
368
 
@@ -367,7 +370,7 @@ __Returns:__
367
370
 
368
371
  --
369
372
 
370
- ##### [driver_attributes](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L453)
373
+ ##### [driver_attributes](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L494)
371
374
 
372
375
  > def driver_attributes
373
376
 
@@ -375,7 +378,7 @@ Returns a hash of the driver attributes
375
378
 
376
379
  --
377
380
 
378
- ##### [device_is_android?](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L472)
381
+ ##### [device_is_android?](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L513)
379
382
 
380
383
  > def device_is_android?
381
384
 
@@ -387,7 +390,7 @@ __Returns:__
387
390
 
388
391
  --
389
392
 
390
- ##### [automation_name_is_xcuitest?](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L478)
393
+ ##### [automation_name_is_xcuitest?](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L519)
391
394
 
392
395
  > def automation_name_is_xcuitest?
393
396
 
@@ -399,7 +402,7 @@ __Returns:__
399
402
 
400
403
  --
401
404
 
402
- ##### [automation_name_is_uiautomator2?](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L484)
405
+ ##### [automation_name_is_uiautomator2?](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L525)
403
406
 
404
407
  > def automation_name_is_uiautomator2?
405
408
 
@@ -411,7 +414,19 @@ __Returns:__
411
414
 
412
415
  --
413
416
 
414
- ##### [check_server_version_xcuitest](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L491)
417
+ ##### [automation_name_is_espresso?](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L531)
418
+
419
+ > def automation_name_is_espresso?
420
+
421
+ Return true if automationName is 'Espresso'
422
+
423
+ __Returns:__
424
+
425
+      [Boolean]
426
+
427
+ --
428
+
429
+ ##### [check_server_version_xcuitest](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L538)
415
430
 
416
431
  > def check_server_version_xcuitest
417
432
 
@@ -424,7 +439,7 @@ __Returns:__
424
439
 
425
440
  --
426
441
 
427
- ##### [appium_server_version](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L518)
442
+ ##### [appium_server_version](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L565)
428
443
 
429
444
  > def appium_server_version
430
445
 
@@ -451,7 +466,7 @@ __Returns:__
451
466
 
452
467
  --
453
468
 
454
- ##### [appium_client_version](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L539)
469
+ ##### [appium_client_version](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L586)
455
470
 
456
471
  > def appium_client_version
457
472
 
@@ -469,7 +484,7 @@ __Returns:__
469
484
 
470
485
  --
471
486
 
472
- ##### [absolute_app_path](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L551)
487
+ ##### [absolute_app_path](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L598)
473
488
 
474
489
  > def self.absolute_app_path(opts)
475
490
 
@@ -486,7 +501,7 @@ __Returns:__
486
501
 
487
502
  --
488
503
 
489
- ##### [server_url](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L584)
504
+ ##### [server_url](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L631)
490
505
 
491
506
  > def server_url
492
507
 
@@ -498,7 +513,7 @@ __Returns:__
498
513
 
499
514
  --
500
515
 
501
- ##### [restart](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L595)
516
+ ##### [restart](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L642)
502
517
 
503
518
  > def restart
504
519
 
@@ -510,7 +525,7 @@ __Returns:__
510
525
 
511
526
  --
512
527
 
513
- ##### [screenshot](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L606)
528
+ ##### [screenshot](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L653)
514
529
 
515
530
  > def screenshot(png_save_path)
516
531
 
@@ -528,11 +543,24 @@ __Returns:__
528
543
 
529
544
  --
530
545
 
531
- ##### [driver_quit](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L613)
546
+ ##### [driver_quit](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L660)
547
+
548
+ > def driver_quit
549
+
550
+ Quits the driver
551
+
552
+ __Returns:__
553
+
554
+      [void]
555
+
556
+ --
557
+
558
+ ##### [quit_driver](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L668)
532
559
 
533
560
  > def driver_quit
534
561
 
535
562
  Quits the driver
563
+ Alias for driver_quit
536
564
 
537
565
  __Returns:__
538
566
 
@@ -540,7 +568,7 @@ __Returns:__
540
568
 
541
569
  --
542
570
 
543
- ##### [start_driver](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L646)
571
+ ##### [start_driver](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L696)
544
572
 
545
573
  > def start_driver(http_client_ops = { http_client: nil, open_timeout: 999_999, read_timeout: 999_999 })
546
574
 
@@ -557,7 +585,15 @@ __Returns:__
557
585
 
558
586
  --
559
587
 
560
- ##### [no_wait](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L686)
588
+ ##### [set_implicit_wait](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L736)
589
+
590
+ > def set_implicit_wait(wait)
591
+
592
+ To ignore error for Espresso Driver
593
+
594
+ --
595
+
596
+ ##### [no_wait](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L746)
561
597
 
562
598
  > def no_wait
563
599
 
@@ -565,7 +601,7 @@ Set implicit wait to zero.
565
601
 
566
602
  --
567
603
 
568
- ##### [set_wait](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L700)
604
+ ##### [set_wait](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L760)
569
605
 
570
606
  > def set_wait(timeout = nil)
571
607
 
@@ -587,7 +623,7 @@ __Returns:__
587
623
 
588
624
  --
589
625
 
590
- ##### [exists](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L717)
626
+ ##### [exists](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L777)
591
627
 
592
628
  > def exists(pre_check = 0, post_check = @default_wait)
593
629
 
@@ -611,7 +647,7 @@ __Returns:__
611
647
 
612
648
  --
613
649
 
614
- ##### [execute_script](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L741)
650
+ ##### [execute_script](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L801)
615
651
 
616
652
  > def execute_script(script, *args)
617
653
 
@@ -629,7 +665,7 @@ __Returns:__
629
665
 
630
666
  --
631
667
 
632
- ##### [find_elements](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L763)
668
+ ##### [find_elements](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L823)
633
669
 
634
670
  > def find_elements(*args)
635
671
 
@@ -655,7 +691,7 @@ __Returns:__
655
691
 
656
692
  --
657
693
 
658
- ##### [find_element](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L778)
694
+ ##### [find_element](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L838)
659
695
 
660
696
  > def find_element(*args)
661
697
 
@@ -676,7 +712,7 @@ __Returns:__
676
712
 
677
713
  --
678
714
 
679
- ##### [set_location](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L791)
715
+ ##### [set_location](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L851)
680
716
 
681
717
  > def set_location(opts = {})
682
718
 
@@ -692,7 +728,7 @@ __Returns:__
692
728
 
693
729
  --
694
730
 
695
- ##### [x](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L801)
731
+ ##### [x](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L861)
696
732
 
697
733
  > def x
698
734
 
@@ -705,7 +741,7 @@ __Returns:__
705
741
 
706
742
  --
707
743
 
708
- ##### [write_session_id](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L808)
744
+ ##### [write_session_id](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L868)
709
745
 
710
746
  > def write_session_id(session_id)
711
747
 
@@ -713,7 +749,7 @@ __Returns:__
713
749
 
714
750
  --
715
751
 
716
- ##### [set_automation_name_if_nil](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/driver.rb#L817)
752
+ ##### [set_automation_name_if_nil](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/driver.rb#L877)
717
753
 
718
754
  > def set_automation_name_if_nil
719
755
 
@@ -722,7 +758,7 @@ Since @automation_name is set only client side before start_driver is called.
722
758
 
723
759
  --
724
760
 
725
- ##### [logger=](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/logger.rb#L18)
761
+ ##### [logger=](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/logger.rb#L18)
726
762
 
727
763
  > def logger=(value)
728
764
 
@@ -734,7 +770,7 @@ __Parameters:__
734
770
 
735
771
  --
736
772
 
737
- ##### [logger](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/logger.rb#L22)
773
+ ##### [logger](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/logger.rb#L22)
738
774
 
739
775
  > def logger
740
776
 
@@ -742,7 +778,7 @@ __Parameters:__
742
778
 
743
779
  --
744
780
 
745
- ##### [app_strings](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L7)
781
+ ##### [app_strings](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L7)
746
782
 
747
783
  > def app_strings
748
784
 
@@ -753,7 +789,7 @@ app_strings #=> "TransitionsTitle"=>"Transitions", "WebTitle"=>"Web"
753
789
 
754
790
  --
755
791
 
756
- ##### [background_app](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L13)
792
+ ##### [background_app](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L13)
757
793
 
758
794
  > def background_app
759
795
 
@@ -762,7 +798,7 @@ This is a blocking application
762
798
 
763
799
  --
764
800
 
765
- ##### [current_activity](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L24)
801
+ ##### [current_activity](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L24)
766
802
 
767
803
  > def current_activity
768
804
 
@@ -777,7 +813,7 @@ __Returns:__
777
813
 
778
814
  --
779
815
 
780
- ##### [current_package](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L32)
816
+ ##### [current_package](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L32)
781
817
 
782
818
  > def current_package
783
819
 
@@ -792,7 +828,7 @@ __Returns:__
792
828
 
793
829
  --
794
830
 
795
- ##### [get_system_bars](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L40)
831
+ ##### [get_system_bars](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L40)
796
832
 
797
833
  > def get_system_bars
798
834
 
@@ -807,7 +843,7 @@ __Returns:__
807
843
 
808
844
  --
809
845
 
810
- ##### [get_display_density](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L48)
846
+ ##### [get_display_density](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L48)
811
847
 
812
848
  > def get_display_density
813
849
 
@@ -822,7 +858,7 @@ __Returns:__
822
858
 
823
859
  --
824
860
 
825
- ##### [is_keyboard_shown](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L56)
861
+ ##### [is_keyboard_shown](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L56)
826
862
 
827
863
  > def is_keyboard_shown
828
864
 
@@ -837,7 +873,7 @@ __Returns:__
837
873
 
838
874
  --
839
875
 
840
- ##### [launch_app](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L64)
876
+ ##### [launch_app](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L64)
841
877
 
842
878
  > def launch_app
843
879
 
@@ -845,7 +881,7 @@ Start the simulator and application configured with desired capabilities
845
881
 
846
882
  --
847
883
 
848
- ##### [reset](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L67)
884
+ ##### [reset](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L67)
849
885
 
850
886
  > def reset
851
887
 
@@ -853,7 +889,7 @@ Reset the device, relaunching the application.
853
889
 
854
890
  --
855
891
 
856
- ##### [shake](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L70)
892
+ ##### [shake](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L70)
857
893
 
858
894
  > def shake
859
895
 
@@ -861,7 +897,7 @@ Cause the device to shake
861
897
 
862
898
  --
863
899
 
864
- ##### [toggle_flight_mode](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L73)
900
+ ##### [toggle_flight_mode](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L73)
865
901
 
866
902
  > def toggle_flight_mode
867
903
 
@@ -869,7 +905,7 @@ Toggle flight mode on or off
869
905
 
870
906
  --
871
907
 
872
- ##### [device_locked?](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L76)
908
+ ##### [device_locked?](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L76)
873
909
 
874
910
  > def device_locked?
875
911
 
@@ -877,7 +913,7 @@ Toggle flight mode on or off
877
913
 
878
914
  --
879
915
 
880
- ##### [hide_keyboard](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L78)
916
+ ##### [hide_keyboard](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L78)
881
917
 
882
918
  > def hide_keyboard
883
919
 
@@ -894,7 +930,7 @@ Default for iOS is `:pressKey`. Default for Android is `:tapOutside`.
894
930
 
895
931
  --
896
932
 
897
- ##### [press_keycode](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L91)
933
+ ##### [press_keycode](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L91)
898
934
 
899
935
  > def press_keycode
900
936
 
@@ -909,7 +945,7 @@ __Parameters:__
909
945
 
910
946
  --
911
947
 
912
- ##### [long_press_keycode](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L97)
948
+ ##### [long_press_keycode](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L97)
913
949
 
914
950
  > def long_press_keycode
915
951
 
@@ -924,7 +960,7 @@ __Parameters:__
924
960
 
925
961
  --
926
962
 
927
- ##### [push_file](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L103)
963
+ ##### [push_file](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L103)
928
964
 
929
965
  > def push_file
930
966
 
@@ -938,7 +974,7 @@ __Parameters:__
938
974
 
939
975
  --
940
976
 
941
- ##### [pull_file](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L108)
977
+ ##### [pull_file](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L108)
942
978
 
943
979
  > def pull_file
944
980
 
@@ -955,7 +991,7 @@ __Parameters:__
955
991
 
956
992
  --
957
993
 
958
- ##### [pull_folder](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L118)
994
+ ##### [pull_folder](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L118)
959
995
 
960
996
  > def pull_folder
961
997
 
@@ -970,7 +1006,7 @@ __Parameters:__
970
1006
 
971
1007
  --
972
1008
 
973
- ##### [touch_id](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L126)
1009
+ ##### [touch_id](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L126)
974
1010
 
975
1011
  > def touch_id
976
1012
 
@@ -987,7 +1023,7 @@ Defaults to true.
987
1023
 
988
1024
  --
989
1025
 
990
- ##### [toggle_touch_id_enrollment](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L135)
1026
+ ##### [toggle_touch_id_enrollment](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L135)
991
1027
 
992
1028
  > def toggle_touch_id_enrollment
993
1029
 
@@ -995,7 +1031,7 @@ iOS Simulator only: Toggle touch id enrollment on an iOS Simulator.
995
1031
 
996
1032
  --
997
1033
 
998
- ##### [end_coverage](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L138)
1034
+ ##### [end_coverage](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L138)
999
1035
 
1000
1036
  > def end_coverage
1001
1037
 
@@ -1009,7 +1045,7 @@ __Parameters:__
1009
1045
 
1010
1046
  --
1011
1047
 
1012
- ##### [get_settings](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L143)
1048
+ ##### [get_settings](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L143)
1013
1049
 
1014
1050
  > def get_settings
1015
1051
 
@@ -1017,7 +1053,7 @@ Get appium Settings for current test session
1017
1053
 
1018
1054
  --
1019
1055
 
1020
- ##### [update_settings](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L146)
1056
+ ##### [update_settings](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L146)
1021
1057
 
1022
1058
  > def update_settings
1023
1059
 
@@ -1029,7 +1065,7 @@ __Parameters:__
1029
1065
 
1030
1066
  --
1031
1067
 
1032
- ##### [start_activity](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L150)
1068
+ ##### [start_activity](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L150)
1033
1069
 
1034
1070
  > def start_activity
1035
1071
 
@@ -1043,7 +1079,7 @@ start_activity app_package: 'io.appium.android.apis',
1043
1079
 
1044
1080
  --
1045
1081
 
1046
- ##### [get_network_connection](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L164)
1082
+ ##### [get_network_connection](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L164)
1047
1083
 
1048
1084
  > def get_network_connection
1049
1085
 
@@ -1052,7 +1088,7 @@ See set_network_connection method for return value
1052
1088
 
1053
1089
  --
1054
1090
 
1055
- ##### [set_network_connection](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L168)
1091
+ ##### [set_network_connection](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L168)
1056
1092
 
1057
1093
  > def set_network_connection
1058
1094
 
@@ -1071,7 +1107,7 @@ __Parameters:__
1071
1107
 
1072
1108
  --
1073
1109
 
1074
- ##### [set_immediate_value](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L181)
1110
+ ##### [set_immediate_value](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L181)
1075
1111
 
1076
1112
  > def set_immediate_value
1077
1113
 
@@ -1085,7 +1121,7 @@ set_immediate_value element, 'hello'
1085
1121
 
1086
1122
  --
1087
1123
 
1088
- ##### [get_performance_data_types](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L190)
1124
+ ##### [get_performance_data_types](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L190)
1089
1125
 
1090
1126
  > def get_performance_data_types
1091
1127
 
@@ -1099,7 +1135,7 @@ get_performance_data_types #=> ["cpuinfo", "batteryinfo", "networkinfo", "memory
1099
1135
 
1100
1136
  --
1101
1137
 
1102
- ##### [extend_search_contexts](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L453)
1138
+ ##### [extend_search_contexts](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L443)
1103
1139
 
1104
1140
  > def extend_search_contexts
1105
1141
 
@@ -1107,7 +1143,7 @@ get_performance_data_types #=> ["cpuinfo", "batteryinfo", "networkinfo", "memory
1107
1143
 
1108
1144
  --
1109
1145
 
1110
- ##### [find_element_with_appium](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L453)
1146
+ ##### [find_element_with_appium](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L443)
1111
1147
 
1112
1148
  > def find_element_with_appium
1113
1149
 
@@ -1115,7 +1151,7 @@ get_performance_data_types #=> ["cpuinfo", "batteryinfo", "networkinfo", "memory
1115
1151
 
1116
1152
  --
1117
1153
 
1118
- ##### [find_elements_with_appium](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L453)
1154
+ ##### [find_elements_with_appium](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L443)
1119
1155
 
1120
1156
  > def find_elements_with_appium
1121
1157
 
@@ -1127,7 +1163,7 @@ find_element/s_with_appium with their accessibility_id
1127
1163
 
1128
1164
  --
1129
1165
 
1130
- ##### [add_touch_actions](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L484)
1166
+ ##### [add_touch_actions](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L474)
1131
1167
 
1132
1168
  > def add_touch_actions
1133
1169
 
@@ -1135,7 +1171,7 @@ find_element/s_with_appium with their accessibility_id
1135
1171
 
1136
1172
  --
1137
1173
 
1138
- ##### [add_ime_actions](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L507)
1174
+ ##### [add_ime_actions](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L497)
1139
1175
 
1140
1176
  > def add_ime_actions
1141
1177
 
@@ -1143,7 +1179,7 @@ find_element/s_with_appium with their accessibility_id
1143
1179
 
1144
1180
  --
1145
1181
 
1146
- ##### [set_context](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L582)
1182
+ ##### [set_context](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L572)
1147
1183
 
1148
1184
  > def set_context
1149
1185
 
@@ -1158,7 +1194,7 @@ __Parameters:__
1158
1194
 
1159
1195
  --
1160
1196
 
1161
- ##### [current_context](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L590)
1197
+ ##### [current_context](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L580)
1162
1198
 
1163
1199
  > def current_context
1164
1200
 
@@ -1170,7 +1206,7 @@ __Returns:__
1170
1206
 
1171
1207
  --
1172
1208
 
1173
- ##### [available_contexts](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L593)
1209
+ ##### [available_contexts](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L583)
1174
1210
 
1175
1211
  > def available_contexts
1176
1212
 
@@ -1182,7 +1218,7 @@ __Returns:__
1182
1218
 
1183
1219
  --
1184
1220
 
1185
- ##### [within_context](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L604)
1221
+ ##### [within_context](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L594)
1186
1222
 
1187
1223
  > def within_context(context)
1188
1224
 
@@ -1199,7 +1235,7 @@ __Parameters:__
1199
1235
 
1200
1236
  --
1201
1237
 
1202
- ##### [switch_to_default_context](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/device.rb#L617)
1238
+ ##### [switch_to_default_context](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/device.rb#L607)
1203
1239
 
1204
1240
  > def switch_to_default_context
1205
1241
 
@@ -1207,34 +1243,62 @@ Change to the default context. This is equivalent to `set_context nil`.
1207
1243
 
1208
1244
  --
1209
1245
 
1210
- ##### [pinch](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/multi_touch.rb#L28)
1246
+ ##### [pinch](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/multi_touch.rb#L53)
1211
1247
 
1212
- > def pinch(percentage = 25, auto_perform = true)
1248
+ > def pinch(percentage = 25, auto_perform = true, driver = $driver)
1213
1249
 
1214
1250
  Convenience method for pinching the screen.
1215
1251
  Places two fingers at the edges of the screen and brings them together.
1216
1252
  ```ruby
1217
- action = pinch 75 #=> Pinch the screen from the top right and bottom left corners
1253
+ pinch 75 #=> Pinch the screen from the top right and bottom left corners
1254
+ ```
1255
+
1256
+ Without auto_perform
1257
+
1258
+ ```ruby
1259
+ action = pinch 75, false #=> Pinch the screen from the top right and bottom left corners
1218
1260
  action.perform #=> to 25% of its size.
1219
1261
  ```
1220
1262
 
1263
+ With driver
1264
+
1265
+ ```ruby
1266
+ driver = Appium::Driver.new(opts, false).start_driver
1267
+ pinch 75, true, driver #=> Pinch the screen from the top right and bottom left corners
1268
+ ```
1269
+
1221
1270
  __Parameters:__
1222
1271
 
1223
1272
       [int] percentage - The percent size by which to shrink the screen when pinched.
1224
1273
 
1225
1274
       [boolean] auto_perform - Whether to perform the action immediately (default true)
1226
1275
 
1276
+      [Driver] driver - Set a driver to conduct the action. DEfault is global driver($driver)
1277
+
1227
1278
  --
1228
1279
 
1229
- ##### [zoom](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/multi_touch.rb#L57)
1280
+ ##### [zoom](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/multi_touch.rb#L96)
1230
1281
 
1231
- > def zoom(percentage = 200, auto_perform = true)
1282
+ > def zoom(percentage = 200, auto_perform = true, driver = $driver)
1232
1283
 
1233
1284
  Convenience method for zooming the screen.
1234
1285
  Places two fingers at the edges of the screen and brings them together.
1235
1286
  ```ruby
1236
1287
  action = zoom 200 #=> Zoom in the screen from the center until it doubles in size.
1237
- action.perform
1288
+ ```
1289
+
1290
+ Without auto_perform
1291
+
1292
+ ```ruby
1293
+ action = zoom 200, false #=> Zoom in the screen from the center until it doubles in size.
1294
+ action.perform #=> to 25% of its size.
1295
+ ```
1296
+
1297
+ With driver
1298
+
1299
+ ```ruby
1300
+ driver = Appium::Driver.new(opts, false).start_driver
1301
+ pinch 200, true, driver #=> Zoom in the screen from the center until it doubles in size.
1238
1302
  ```
1239
1303
 
1240
1304
  __Parameters:__
@@ -1243,17 +1307,19 @@ __Parameters:__
1243
1307
 
1244
1308
       [boolean] auto_perform - Whether to perform the action immediately (default true)
1245
1309
 
1310
+      [Driver] driver - Set a driver to conduct the action. DEfault is global driver($driver)
1311
+
1246
1312
  --
1247
1313
 
1248
- ##### [pinch_for_xcuitest](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/multi_touch.rb#L79)
1314
+ ##### [pinch_for_xcuitest](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/multi_touch.rb#L118)
1249
1315
 
1250
- > def pinch_for_xcuitest(rate)
1316
+ > def pinch_for_xcuitest(rate, driver)
1251
1317
 
1252
1318
 
1253
1319
 
1254
1320
  --
1255
1321
 
1256
- ##### [pinch_android](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/multi_touch.rb#L94)
1322
+ ##### [pinch_android](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/multi_touch.rb#L133)
1257
1323
 
1258
1324
  > def pinch_android(rate)
1259
1325
 
@@ -1261,7 +1327,7 @@ __Parameters:__
1261
1327
 
1262
1328
  --
1263
1329
 
1264
- ##### [pinch_ios](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/multi_touch.rb#L108)
1330
+ ##### [pinch_ios](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/multi_touch.rb#L147)
1265
1331
 
1266
1332
  > def pinch_ios(rate)
1267
1333
 
@@ -1269,15 +1335,15 @@ __Parameters:__
1269
1335
 
1270
1336
  --
1271
1337
 
1272
- ##### [zoom_for_xcuitest](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/multi_touch.rb#L122)
1338
+ ##### [zoom_for_xcuitest](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/multi_touch.rb#L161)
1273
1339
 
1274
- > def zoom_for_xcuitest(rate)
1340
+ > def zoom_for_xcuitest(rate, driver)
1275
1341
 
1276
1342
 
1277
1343
 
1278
1344
  --
1279
1345
 
1280
- ##### [zoom_android](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/multi_touch.rb#L137)
1346
+ ##### [zoom_android](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/multi_touch.rb#L176)
1281
1347
 
1282
1348
  > def zoom_android(rate)
1283
1349
 
@@ -1285,7 +1351,7 @@ __Parameters:__
1285
1351
 
1286
1352
  --
1287
1353
 
1288
- ##### [zoom_ios](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/multi_touch.rb#L151)
1354
+ ##### [zoom_ios](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/multi_touch.rb#L190)
1289
1355
 
1290
1356
  > def zoom_ios(rate)
1291
1357
 
@@ -1293,7 +1359,7 @@ __Parameters:__
1293
1359
 
1294
1360
  --
1295
1361
 
1296
- ##### [actions](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/multi_touch.rb#L166)
1362
+ ##### [actions](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/multi_touch.rb#L205)
1297
1363
 
1298
1364
  > def actions
1299
1365
 
@@ -1301,11 +1367,19 @@ self
1301
1367
 
1302
1368
  --
1303
1369
 
1304
- ##### [initialize](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/multi_touch.rb#L169)
1370
+ ##### [driver](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/multi_touch.rb#L205)
1305
1371
 
1306
- > def initialize
1372
+ > def driver
1373
+
1374
+ self
1375
+
1376
+ --
1377
+
1378
+ ##### [initialize](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/multi_touch.rb#L208)
1379
+
1380
+ > def initialize(driver = $driver)
1307
1381
 
1308
- Create a new multi-action
1382
+ Create a new multi-action with Driver
1309
1383
 
1310
1384
  __Returns:__
1311
1385
 
@@ -1313,7 +1387,7 @@ __Returns:__
1313
1387
 
1314
1388
  --
1315
1389
 
1316
- ##### [add](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/multi_touch.rb#L175)
1390
+ ##### [add](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/multi_touch.rb#L215)
1317
1391
 
1318
1392
  > def add(chain)
1319
1393
 
@@ -1325,7 +1399,7 @@ __Parameters:__
1325
1399
 
1326
1400
  --
1327
1401
 
1328
- ##### [perform](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/multi_touch.rb#L180)
1402
+ ##### [perform](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/multi_touch.rb#L220)
1329
1403
 
1330
1404
  > def perform
1331
1405
 
@@ -1333,7 +1407,7 @@ Ask Appium to perform the actions
1333
1407
 
1334
1408
  --
1335
1409
 
1336
- ##### [ACTIONS](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/touch_actions.rb#L22)
1410
+ ##### [ACTIONS](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/touch_actions.rb#L30)
1337
1411
 
1338
1412
  > ACTIONS = [:move_to, :long_press, :double_tap, :two_finger_tap, :press, :release, :tap, :wait, :perform].freeze
1339
1413
 
@@ -1341,7 +1415,7 @@ Ask Appium to perform the actions
1341
1415
 
1342
1416
  --
1343
1417
 
1344
- ##### [COMPLEX_ACTIONS](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/touch_actions.rb#L23)
1418
+ ##### [COMPLEX_ACTIONS](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/touch_actions.rb#L31)
1345
1419
 
1346
1420
  > COMPLEX_ACTIONS = [:swipe].freeze
1347
1421
 
@@ -1349,7 +1423,7 @@ Ask Appium to perform the actions
1349
1423
 
1350
1424
  --
1351
1425
 
1352
- ##### [actions](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/touch_actions.rb#L37)
1426
+ ##### [actions](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/touch_actions.rb#L45)
1353
1427
 
1354
1428
  > def actions
1355
1429
 
@@ -1357,7 +1431,7 @@ Returns the value of attribute actions
1357
1431
 
1358
1432
  --
1359
1433
 
1360
- ##### [initialize](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/touch_actions.rb#L39)
1434
+ ##### [initialize](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/touch_actions.rb#L47)
1361
1435
 
1362
1436
  > def initialize
1363
1437
 
@@ -1369,7 +1443,7 @@ __Returns:__
1369
1443
 
1370
1444
  --
1371
1445
 
1372
- ##### [move_to](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/touch_actions.rb#L50)
1446
+ ##### [move_to](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/touch_actions.rb#L58)
1373
1447
 
1374
1448
  > def move_to(opts)
1375
1449
 
@@ -1383,7 +1457,7 @@ __Parameters:__
1383
1457
 
1384
1458
  --
1385
1459
 
1386
- ##### [long_press](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/touch_actions.rb#L64)
1460
+ ##### [long_press](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/touch_actions.rb#L72)
1387
1461
 
1388
1462
  > def long_press(opts)
1389
1463
 
@@ -1404,7 +1478,7 @@ __Parameters:__
1404
1478
 
1405
1479
  --
1406
1480
 
1407
- ##### [press](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/touch_actions.rb#L76)
1481
+ ##### [press](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/touch_actions.rb#L84)
1408
1482
 
1409
1483
  > def press(opts)
1410
1484
 
@@ -1417,7 +1491,7 @@ __Parameters:__
1417
1491
 
1418
1492
  --
1419
1493
 
1420
- ##### [release](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/touch_actions.rb#L87)
1494
+ ##### [release](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/touch_actions.rb#L95)
1421
1495
 
1422
1496
  > def release(opts = nil)
1423
1497
 
@@ -1429,7 +1503,7 @@ __Parameters:__
1429
1503
 
1430
1504
  --
1431
1505
 
1432
- ##### [tap](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/touch_actions.rb#L99)
1506
+ ##### [tap](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/touch_actions.rb#L107)
1433
1507
 
1434
1508
  > def tap(opts)
1435
1509
 
@@ -1442,7 +1516,7 @@ __Parameters:__
1442
1516
 
1443
1517
  --
1444
1518
 
1445
- ##### [double_tap](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/touch_actions.rb#L112)
1519
+ ##### [double_tap](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/touch_actions.rb#L120)
1446
1520
 
1447
1521
  > def double_tap(opts)
1448
1522
 
@@ -1454,7 +1528,7 @@ __Parameters:__
1454
1528
 
1455
1529
  --
1456
1530
 
1457
- ##### [two_finger_tap](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/touch_actions.rb#L123)
1531
+ ##### [two_finger_tap](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/touch_actions.rb#L131)
1458
1532
 
1459
1533
  > def two_finger_tap(opts)
1460
1534
 
@@ -1466,7 +1540,7 @@ __Parameters:__
1466
1540
 
1467
1541
  --
1468
1542
 
1469
- ##### [wait](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/touch_actions.rb#L131)
1543
+ ##### [wait](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/touch_actions.rb#L139)
1470
1544
 
1471
1545
  > def wait(milliseconds)
1472
1546
 
@@ -1478,7 +1552,7 @@ __Parameters:__
1478
1552
 
1479
1553
  --
1480
1554
 
1481
- ##### [swipe](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/touch_actions.rb#L154)
1555
+ ##### [swipe](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/touch_actions.rb#L162)
1482
1556
 
1483
1557
  > def swipe(opts, ele = nil)
1484
1558
 
@@ -1499,31 +1573,31 @@ __Parameters:__
1499
1573
 
1500
1574
  --
1501
1575
 
1502
- ##### [perform](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/touch_actions.rb#L179)
1576
+ ##### [perform](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/touch_actions.rb#L187)
1503
1577
 
1504
- > def perform
1578
+ > def perform(driver = $driver)
1505
1579
 
1506
1580
  Ask the driver to perform all actions in this action chain.
1507
1581
 
1508
1582
  --
1509
1583
 
1510
- ##### [cancel](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/touch_actions.rb#L186)
1584
+ ##### [cancel](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/touch_actions.rb#L194)
1511
1585
 
1512
- > def cancel
1586
+ > def cancel(driver = $driver)
1513
1587
 
1514
1588
  Does nothing, currently.
1515
1589
 
1516
1590
  --
1517
1591
 
1518
- ##### [swipe_coordinates](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/touch_actions.rb#L192)
1519
-
1520
- > def swipe_coordinates(end_x: nil, end_y: nil, offset_x: nil, offset_y: nil)
1592
+ ##### [swipe_coordinates](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/touch_actions.rb#L201)
1521
1593
 
1594
+ > def swipe_coordinates(end_x: nil, end_y: nil, offset_x: nil, offset_y: nil, driver: $driver)
1522
1595
 
1596
+ Visible for testing
1523
1597
 
1524
1598
  --
1525
1599
 
1526
- ##### [chain_method](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/touch_actions.rb#L210)
1600
+ ##### [chain_method](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/touch_actions.rb#L219)
1527
1601
 
1528
1602
  > def chain_method(method, args = nil)
1529
1603
 
@@ -1531,7 +1605,7 @@ Does nothing, currently.
1531
1605
 
1532
1606
  --
1533
1607
 
1534
- ##### [args_with_ele_ref](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/device/touch_actions.rb#L216)
1608
+ ##### [args_with_ele_ref](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/device/touch_actions.rb#L225)
1535
1609
 
1536
1610
  > def args_with_ele_ref(args)
1537
1611
 
@@ -1539,7 +1613,7 @@ Does nothing, currently.
1539
1613
 
1540
1614
  --
1541
1615
 
1542
- ##### [initialize](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/wait.rb#L4)
1616
+ ##### [initialize](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/wait.rb#L4)
1543
1617
 
1544
1618
  > def initialize(opts = {})
1545
1619
 
@@ -1551,7 +1625,7 @@ __Returns:__
1551
1625
 
1552
1626
  --
1553
1627
 
1554
- ##### [until](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/wait.rb#L23)
1628
+ ##### [until](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/wait.rb#L23)
1555
1629
 
1556
1630
  > def until
1557
1631
 
@@ -1560,15 +1634,7 @@ https://github.com/SeleniumHQ/selenium/blob/cf501dda3f0ed12233de51ce8170c0e8090f
1560
1634
 
1561
1635
  --
1562
1636
 
1563
- ##### [_process_wait_opts](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/wait.rb#L51)
1564
-
1565
- > def _process_wait_opts(opts)
1566
-
1567
- process opts before calling _generic_wait
1568
-
1569
- --
1570
-
1571
- ##### [wait_true](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/wait.rb#L72)
1637
+ ##### [wait_true](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/wait.rb#L73)
1572
1638
 
1573
1639
  > def wait_true(opts = {})
1574
1640
 
@@ -1588,7 +1654,7 @@ __Parameters:__
1588
1654
 
1589
1655
  --
1590
1656
 
1591
- ##### [wait](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/wait.rb#L95)
1657
+ ##### [wait](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/wait.rb#L96)
1592
1658
 
1593
1659
  > def wait(opts = {})
1594
1660
 
@@ -1606,7 +1672,7 @@ __Parameters:__
1606
1672
 
1607
1673
  --
1608
1674
 
1609
- ##### [ignore](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/helper.rb#L24)
1675
+ ##### [ignore](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/helper.rb#L24)
1610
1676
 
1611
1677
  > def ignore
1612
1678
 
@@ -1614,7 +1680,7 @@ Return yield and ignore any exceptions.
1614
1680
 
1615
1681
  --
1616
1682
 
1617
- ##### [back](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/helper.rb#L31)
1683
+ ##### [back](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/helper.rb#L31)
1618
1684
 
1619
1685
  > def back
1620
1686
 
@@ -1626,7 +1692,7 @@ __Returns:__
1626
1692
 
1627
1693
  --
1628
1694
 
1629
- ##### [session_id](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/helper.rb#L36)
1695
+ ##### [session_id](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/helper.rb#L36)
1630
1696
 
1631
1697
  > def session_id
1632
1698
 
@@ -1634,7 +1700,7 @@ For Sauce Labs reporting. Returns the current session id.
1634
1700
 
1635
1701
  --
1636
1702
 
1637
- ##### [xpath](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/helper.rb#L44)
1703
+ ##### [xpath](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/helper.rb#L44)
1638
1704
 
1639
1705
  > def xpath(xpath_str)
1640
1706
 
@@ -1650,7 +1716,7 @@ __Returns:__
1650
1716
 
1651
1717
  --
1652
1718
 
1653
- ##### [xpaths](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/helper.rb#L52)
1719
+ ##### [xpaths](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/helper.rb#L52)
1654
1720
 
1655
1721
  > def xpaths(xpath_str)
1656
1722
 
@@ -1666,7 +1732,7 @@ __Returns:__
1666
1732
 
1667
1733
  --
1668
1734
 
1669
- ##### [_print_source](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/helper.rb#L56)
1735
+ ##### [_print_source](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/helper.rb#L56)
1670
1736
 
1671
1737
  > def _print_source(source)
1672
1738
 
@@ -1674,7 +1740,7 @@ __Returns:__
1674
1740
 
1675
1741
  --
1676
1742
 
1677
- ##### [result](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/helper.rb#L69)
1743
+ ##### [result](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/helper.rb#L69)
1678
1744
 
1679
1745
  > def result
1680
1746
 
@@ -1682,7 +1748,7 @@ Returns the value of attribute result
1682
1748
 
1683
1749
  --
1684
1750
 
1685
- ##### [initialize](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/helper.rb#L71)
1751
+ ##### [initialize](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/helper.rb#L71)
1686
1752
 
1687
1753
  > def initialize
1688
1754
 
@@ -1694,7 +1760,7 @@ __Returns:__
1694
1760
 
1695
1761
  --
1696
1762
 
1697
- ##### [reset](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/helper.rb#L75)
1763
+ ##### [reset](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/helper.rb#L75)
1698
1764
 
1699
1765
  > def reset
1700
1766
 
@@ -1702,15 +1768,15 @@ __Returns:__
1702
1768
 
1703
1769
  --
1704
1770
 
1705
- ##### [start_element](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/helper.rb#L80)
1771
+ ##### [start_element](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/helper.rb#L80)
1706
1772
 
1707
- > def start_element(name, attrs = [])
1773
+ > def start_element(name, attrs = [], driver = $driver)
1708
1774
 
1709
1775
  http://nokogiri.org/Nokogiri/XML/SAX/Document.html
1710
1776
 
1711
1777
  --
1712
1778
 
1713
- ##### [formatted_result](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/helper.rb#L86)
1779
+ ##### [formatted_result](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/helper.rb#L86)
1714
1780
 
1715
1781
  > def formatted_result
1716
1782
 
@@ -1718,7 +1784,7 @@ http://nokogiri.org/Nokogiri/XML/SAX/Document.html
1718
1784
 
1719
1785
  --
1720
1786
 
1721
- ##### [get_page_class](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/helper.rb#L97)
1787
+ ##### [get_page_class](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/helper.rb#L97)
1722
1788
 
1723
1789
  > def get_page_class
1724
1790
 
@@ -1726,7 +1792,7 @@ Returns a string of class counts of visible elements.
1726
1792
 
1727
1793
  --
1728
1794
 
1729
- ##### [page_class](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/helper.rb#L108)
1795
+ ##### [page_class](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/helper.rb#L108)
1730
1796
 
1731
1797
  > def page_class
1732
1798
 
@@ -1735,9 +1801,9 @@ Useful for appium_console.
1735
1801
 
1736
1802
  --
1737
1803
 
1738
- ##### [px_to_window_rel](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/helper.rb#L118)
1804
+ ##### [px_to_window_rel](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/helper.rb#L118)
1739
1805
 
1740
- > def px_to_window_rel(opts = {})
1806
+ > def px_to_window_rel(opts = {}, driver = $driver)
1741
1807
 
1742
1808
  Converts pixel values to window relative values
1743
1809
 
@@ -1747,7 +1813,7 @@ px_to_window_rel x: 50, y: 150
1747
1813
 
1748
1814
  --
1749
1815
 
1750
- ##### [xml_keys](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/helper.rb#L137)
1816
+ ##### [xml_keys](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/helper.rb#L137)
1751
1817
 
1752
1818
  > def xml_keys(target)
1753
1819
 
@@ -1763,7 +1829,7 @@ __Returns:__
1763
1829
 
1764
1830
  --
1765
1831
 
1766
- ##### [xml_values](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/helper.rb#L145)
1832
+ ##### [xml_values](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/helper.rb#L145)
1767
1833
 
1768
1834
  > def xml_values(target)
1769
1835
 
@@ -1779,7 +1845,7 @@ __Returns:__
1779
1845
 
1780
1846
  --
1781
1847
 
1782
- ##### [resolve_id](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/helper.rb#L153)
1848
+ ##### [resolve_id](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/helper.rb#L153)
1783
1849
 
1784
1850
  > def resolve_id(id)
1785
1851
 
@@ -1795,7 +1861,7 @@ __Returns:__
1795
1861
 
1796
1862
  --
1797
1863
 
1798
- ##### [filter](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/helper.rb#L159)
1864
+ ##### [filter](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/helper.rb#L159)
1799
1865
 
1800
1866
  > def filter
1801
1867
 
@@ -1803,7 +1869,7 @@ Returns the value of attribute filter
1803
1869
 
1804
1870
  --
1805
1871
 
1806
- ##### [filter=](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/helper.rb#L162)
1872
+ ##### [filter=](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/helper.rb#L162)
1807
1873
 
1808
1874
  > def filter=(value)
1809
1875
 
@@ -1811,7 +1877,7 @@ convert to string to support symbols
1811
1877
 
1812
1878
  --
1813
1879
 
1814
- ##### [initialize](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/helper.rb#L168)
1880
+ ##### [initialize](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/helper.rb#L168)
1815
1881
 
1816
1882
  > def initialize
1817
1883
 
@@ -1823,7 +1889,7 @@ __Returns:__
1823
1889
 
1824
1890
  --
1825
1891
 
1826
- ##### [reset](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/helper.rb#L173)
1892
+ ##### [reset](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/helper.rb#L173)
1827
1893
 
1828
1894
  > def reset
1829
1895
 
@@ -1831,7 +1897,7 @@ __Returns:__
1831
1897
 
1832
1898
  --
1833
1899
 
1834
- ##### [result](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/helper.rb#L179)
1900
+ ##### [result](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/helper.rb#L179)
1835
1901
 
1836
1902
  > def result
1837
1903
 
@@ -1839,7 +1905,7 @@ __Returns:__
1839
1905
 
1840
1906
  --
1841
1907
 
1842
- ##### [start_element](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/helper.rb#L195)
1908
+ ##### [start_element](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/helper.rb#L195)
1843
1909
 
1844
1910
  > def start_element(name, attrs = [])
1845
1911
 
@@ -1847,7 +1913,7 @@ __Returns:__
1847
1913
 
1848
1914
  --
1849
1915
 
1850
- ##### [end_element](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/helper.rb#L204)
1916
+ ##### [end_element](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/helper.rb#L204)
1851
1917
 
1852
1918
  > def end_element(name)
1853
1919
 
@@ -1855,7 +1921,7 @@ __Returns:__
1855
1921
 
1856
1922
  --
1857
1923
 
1858
- ##### [characters](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/helper.rb#L210)
1924
+ ##### [characters](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/helper.rb#L210)
1859
1925
 
1860
1926
  > def characters(chars)
1861
1927
 
@@ -1863,31 +1929,39 @@ __Returns:__
1863
1929
 
1864
1930
  --
1865
1931
 
1866
- ##### [_no_such_element](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/helper.rb#L217)
1932
+ ##### [COMMAND_NO_ARG](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/command.rb#L4)
1867
1933
 
1868
- > def _no_such_element
1934
+ > COMMAND_NO_ARG = {
1869
1935
 
1870
1936
 
1871
1937
 
1872
1938
  --
1873
1939
 
1874
- ##### [COMMAND_NO_ARG](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/command.rb#L4)
1940
+ ##### [COMMAND](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/command.rb#L28)
1875
1941
 
1876
- > COMMAND_NO_ARG = {
1942
+ > COMMAND = {
1877
1943
 
1878
1944
 
1879
1945
 
1880
1946
  --
1881
1947
 
1882
- ##### [COMMAND](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/command.rb#L28)
1948
+ ##### [COMMANDS_EXTEND_OSS](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/command.rb#L66)
1883
1949
 
1884
- > COMMAND = {
1950
+ > COMMANDS_EXTEND_OSS = COMMAND.merge(::Selenium::WebDriver::Remote::OSS::Bridge::COMMANDS).freeze
1885
1951
 
1886
1952
 
1887
1953
 
1888
1954
  --
1889
1955
 
1890
- ##### [window_size](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/element/window.rb#L5)
1956
+ ##### [COMMANDS_EXTEND_W3C](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/command.rb#L67)
1957
+
1958
+ > COMMANDS_EXTEND_W3C = COMMAND.merge(::Selenium::WebDriver::Remote::W3C::Bridge::COMMANDS).freeze
1959
+
1960
+
1961
+
1962
+ --
1963
+
1964
+ ##### [window_size](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/element/window.rb#L5)
1891
1965
 
1892
1966
  > def window_size
1893
1967
 
@@ -1895,7 +1969,7 @@ Get the window's size
1895
1969
 
1896
1970
  --
1897
1971
 
1898
- ##### [FINDERS](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/search_context.rb#L5)
1972
+ ##### [FINDERS](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/search_context.rb#L5)
1899
1973
 
1900
1974
  > FINDERS = {
1901
1975
 
@@ -1903,7 +1977,7 @@ rubocop:disable Style/MutableConstant
1903
1977
 
1904
1978
  --
1905
1979
 
1906
- ##### [result](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/helper.rb#L6) android
1980
+ ##### [result](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/helper.rb#L6) android
1907
1981
 
1908
1982
  > def result
1909
1983
 
@@ -1911,7 +1985,7 @@ Returns the value of attribute result
1911
1985
 
1912
1986
  --
1913
1987
 
1914
- ##### [keys](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/helper.rb#L6) android
1988
+ ##### [keys](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/helper.rb#L6) android
1915
1989
 
1916
1990
  > def keys
1917
1991
 
@@ -1919,7 +1993,7 @@ Returns the value of attribute keys
1919
1993
 
1920
1994
  --
1921
1995
 
1922
- ##### [filter](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/helper.rb#L6) android
1996
+ ##### [filter](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/helper.rb#L6) android
1923
1997
 
1924
1998
  > def filter
1925
1999
 
@@ -1927,7 +2001,7 @@ Returns the value of attribute filter
1927
2001
 
1928
2002
  --
1929
2003
 
1930
- ##### [filter=](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/helper.rb#L9) android
2004
+ ##### [filter=](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/helper.rb#L9) android
1931
2005
 
1932
2006
  > def filter=(value)
1933
2007
 
@@ -1935,7 +2009,7 @@ convert to string to support symbols
1935
2009
 
1936
2010
  --
1937
2011
 
1938
- ##### [initialize](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/helper.rb#L15) android
2012
+ ##### [initialize](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/helper.rb#L15) android
1939
2013
 
1940
2014
  > def initialize
1941
2015
 
@@ -1947,7 +2021,7 @@ __Returns:__
1947
2021
 
1948
2022
  --
1949
2023
 
1950
- ##### [reset](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/helper.rb#L20) android
2024
+ ##### [reset](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/helper.rb#L20) android
1951
2025
 
1952
2026
  > def reset
1953
2027
 
@@ -1955,15 +2029,15 @@ __Returns:__
1955
2029
 
1956
2030
  --
1957
2031
 
1958
- ##### [start_element](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/helper.rb#L26) android
2032
+ ##### [start_element](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/helper.rb#L26) android
1959
2033
 
1960
- > def start_element(name, attrs = [])
2034
+ > def start_element(name, attrs = [], driver = $driver)
1961
2035
 
1962
2036
  http://nokogiri.org/Nokogiri/XML/SAX/Document.html
1963
2037
 
1964
2038
  --
1965
2039
 
1966
- ##### [source](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/helper.rb#L76) android
2040
+ ##### [source](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/helper.rb#L76) android
1967
2041
 
1968
2042
  > def source
1969
2043
 
@@ -1975,7 +2049,7 @@ __Returns:__
1975
2049
 
1976
2050
  --
1977
2051
 
1978
- ##### [get_android_inspect](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/helper.rb#L86) android
2052
+ ##### [get_android_inspect](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/helper.rb#L86) android
1979
2053
 
1980
2054
  > def get_android_inspect(class_name = false)
1981
2055
 
@@ -1994,7 +2068,7 @@ __Returns:__
1994
2068
 
1995
2069
  --
1996
2070
 
1997
- ##### [page](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/helper.rb#L112) android
2071
+ ##### [page](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/helper.rb#L112) android
1998
2072
 
1999
2073
  > def page(opts = {})
2000
2074
 
@@ -2013,7 +2087,7 @@ __Returns:__
2013
2087
 
2014
2088
  --
2015
2089
 
2016
- ##### [current_app](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/helper.rb#L124) android
2090
+ ##### [current_app](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/helper.rb#L124) android
2017
2091
 
2018
2092
  > def current_app
2019
2093
 
@@ -2023,7 +2097,7 @@ example line:
2023
2097
 
2024
2098
  --
2025
2099
 
2026
- ##### [id](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/helper.rb#L148) android
2100
+ ##### [id](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/helper.rb#L148) android
2027
2101
 
2028
2102
  > def id(id)
2029
2103
 
@@ -2039,7 +2113,7 @@ __Returns:__
2039
2113
 
2040
2114
  --
2041
2115
 
2042
- ##### [ids](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/helper.rb#L156) android
2116
+ ##### [ids](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/helper.rb#L156) android
2043
2117
 
2044
2118
  > def ids(id)
2045
2119
 
@@ -2055,7 +2129,7 @@ __Returns:__
2055
2129
 
2056
2130
  --
2057
2131
 
2058
- ##### [ele_index](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/helper.rb#L165) android
2132
+ ##### [ele_index](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/helper.rb#L165) android
2059
2133
 
2060
2134
  > def ele_index(class_name, index)
2061
2135
 
@@ -2073,7 +2147,7 @@ __Returns:__
2073
2147
 
2074
2148
  --
2075
2149
 
2076
- ##### [first_ele](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/helper.rb#L183) android
2150
+ ##### [first_ele](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/helper.rb#L183) android
2077
2151
 
2078
2152
  > def first_ele(class_name)
2079
2153
 
@@ -2089,7 +2163,7 @@ __Returns:__
2089
2163
 
2090
2164
  --
2091
2165
 
2092
- ##### [last_ele](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/helper.rb#L190) android
2166
+ ##### [last_ele](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/helper.rb#L190) android
2093
2167
 
2094
2168
  > def last_ele(class_name)
2095
2169
 
@@ -2105,7 +2179,7 @@ __Returns:__
2105
2179
 
2106
2180
  --
2107
2181
 
2108
- ##### [tag](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/helper.rb#L198) android
2182
+ ##### [tag](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/helper.rb#L198) android
2109
2183
 
2110
2184
  > def tag(class_name)
2111
2185
 
@@ -2121,7 +2195,7 @@ __Returns:__
2121
2195
 
2122
2196
  --
2123
2197
 
2124
- ##### [tags](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/helper.rb#L206) android
2198
+ ##### [tags](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/helper.rb#L206) android
2125
2199
 
2126
2200
  > def tags(class_name)
2127
2201
 
@@ -2137,7 +2211,7 @@ __Returns:__
2137
2211
 
2138
2212
  --
2139
2213
 
2140
- ##### [string_visible_contains_xpath](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/helper.rb#L249) android
2214
+ ##### [string_visible_contains_xpath](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/helper.rb#L249) android
2141
2215
 
2142
2216
  > def string_visible_contains_xpath(class_name, value)
2143
2217
 
@@ -2158,7 +2232,7 @@ __Returns:__
2158
2232
 
2159
2233
  --
2160
2234
 
2161
- ##### [string_visible_contains](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/helper.rb#L269) android
2235
+ ##### [string_visible_contains](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/helper.rb#L269) android
2162
2236
 
2163
2237
  > def string_visible_contains(class_name, value)
2164
2238
 
@@ -2179,7 +2253,7 @@ __Returns:__
2179
2253
 
2180
2254
  --
2181
2255
 
2182
- ##### [complex_find_contains](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/helper.rb#L287) android
2256
+ ##### [complex_find_contains](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/helper.rb#L287) android
2183
2257
 
2184
2258
  > def complex_find_contains(class_name, value)
2185
2259
 
@@ -2197,7 +2271,7 @@ __Returns:__
2197
2271
 
2198
2272
  --
2199
2273
 
2200
- ##### [complex_finds_contains](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/helper.rb#L301) android
2274
+ ##### [complex_finds_contains](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/helper.rb#L295) android
2201
2275
 
2202
2276
  > def complex_finds_contains(class_name, value)
2203
2277
 
@@ -2215,7 +2289,7 @@ __Returns:__
2215
2289
 
2216
2290
  --
2217
2291
 
2218
- ##### [complex_find_exact](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/helper.rb#L345) android
2292
+ ##### [complex_find_exact](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/helper.rb#L339) android
2219
2293
 
2220
2294
  > def complex_find_exact(class_name, value)
2221
2295
 
@@ -2233,7 +2307,7 @@ __Returns:__
2233
2307
 
2234
2308
  --
2235
2309
 
2236
- ##### [complex_finds_exact](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/helper.rb#L359) android
2310
+ ##### [complex_finds_exact](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/helper.rb#L347) android
2237
2311
 
2238
2312
  > def complex_finds_exact(class_name, value)
2239
2313
 
@@ -2251,7 +2325,7 @@ __Returns:__
2251
2325
 
2252
2326
  --
2253
2327
 
2254
- ##### [get_source](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/helper.rb#L365) android
2328
+ ##### [get_source](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/helper.rb#L353) android
2255
2329
 
2256
2330
  > def get_source
2257
2331
 
@@ -2263,7 +2337,7 @@ __Returns:__
2263
2337
 
2264
2338
  --
2265
2339
 
2266
- ##### [_nodeset_to_uiselector](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/client_xpath.rb#L5) android
2340
+ ##### [_nodeset_to_uiselector](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/client_xpath.rb#L5) android
2267
2341
 
2268
2342
  > def _nodeset_to_uiselector(opts = {})
2269
2343
 
@@ -2271,7 +2345,7 @@ __Returns:__
2271
2345
 
2272
2346
  --
2273
2347
 
2274
- ##### [_client_xpath](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/client_xpath.rb#L20) android
2348
+ ##### [_client_xpath](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/client_xpath.rb#L20) android
2275
2349
 
2276
2350
  > def _client_xpath(opts = {})
2277
2351
 
@@ -2279,7 +2353,7 @@ __Returns:__
2279
2353
 
2280
2354
  --
2281
2355
 
2282
- ##### [client_xpath](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/client_xpath.rb#L37) android
2356
+ ##### [client_xpath](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/client_xpath.rb#L37) android
2283
2357
 
2284
2358
  > def client_xpath(xpath)
2285
2359
 
@@ -2287,7 +2361,7 @@ __Returns:__
2287
2361
 
2288
2362
  --
2289
2363
 
2290
- ##### [client_xpaths](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/client_xpath.rb#L43) android
2364
+ ##### [client_xpaths](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/client_xpath.rb#L43) android
2291
2365
 
2292
2366
  > def client_xpaths(xpath)
2293
2367
 
@@ -2295,7 +2369,7 @@ __Returns:__
2295
2369
 
2296
2370
  --
2297
2371
 
2298
- ##### [TextView](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/text.rb#L4) android
2372
+ ##### [TextView](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/text.rb#L4) android
2299
2373
 
2300
2374
  > TextView = 'android.widget.TextView'.freeze
2301
2375
 
@@ -2303,7 +2377,7 @@ __Returns:__
2303
2377
 
2304
2378
  --
2305
2379
 
2306
- ##### [text](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/text.rb#L10) android
2380
+ ##### [text](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/text.rb#L10) android
2307
2381
 
2308
2382
  > def text(value)
2309
2383
 
@@ -2320,7 +2394,7 @@ __Returns:__
2320
2394
 
2321
2395
  --
2322
2396
 
2323
- ##### [texts](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/text.rb#L19) android
2397
+ ##### [texts](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/text.rb#L19) android
2324
2398
 
2325
2399
  > def texts(value = false)
2326
2400
 
@@ -2337,7 +2411,7 @@ __Returns:__
2337
2411
 
2338
2412
  --
2339
2413
 
2340
- ##### [first_text](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/text.rb#L26) android
2414
+ ##### [first_text](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/text.rb#L26) android
2341
2415
 
2342
2416
  > def first_text
2343
2417
 
@@ -2349,7 +2423,7 @@ __Returns:__
2349
2423
 
2350
2424
  --
2351
2425
 
2352
- ##### [last_text](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/text.rb#L32) android
2426
+ ##### [last_text](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/text.rb#L32) android
2353
2427
 
2354
2428
  > def last_text
2355
2429
 
@@ -2361,7 +2435,7 @@ __Returns:__
2361
2435
 
2362
2436
  --
2363
2437
 
2364
- ##### [text_exact](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/text.rb#L39) android
2438
+ ##### [text_exact](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/text.rb#L39) android
2365
2439
 
2366
2440
  > def text_exact(value)
2367
2441
 
@@ -2377,7 +2451,7 @@ __Returns:__
2377
2451
 
2378
2452
  --
2379
2453
 
2380
- ##### [texts_exact](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/text.rb#L46) android
2454
+ ##### [texts_exact](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/text.rb#L46) android
2381
2455
 
2382
2456
  > def texts_exact(value)
2383
2457
 
@@ -2393,7 +2467,7 @@ __Returns:__
2393
2467
 
2394
2468
  --
2395
2469
 
2396
- ##### [alert_click](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/alert.rb#L6) android
2470
+ ##### [alert_click](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/alert.rb#L6) android
2397
2471
 
2398
2472
  > def alert_click(value)
2399
2473
 
@@ -2409,7 +2483,7 @@ __Returns:__
2409
2483
 
2410
2484
  --
2411
2485
 
2412
- ##### [alert_accept](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/alert.rb#L13) android
2486
+ ##### [alert_accept](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/alert.rb#L13) android
2413
2487
 
2414
2488
  > def alert_accept
2415
2489
 
@@ -2422,7 +2496,7 @@ __Returns:__
2422
2496
 
2423
2497
  --
2424
2498
 
2425
- ##### [alert_accept_text](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/alert.rb#L20) android
2499
+ ##### [alert_accept_text](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/alert.rb#L20) android
2426
2500
 
2427
2501
  > def alert_accept_text
2428
2502
 
@@ -2435,7 +2509,7 @@ __Returns:__
2435
2509
 
2436
2510
  --
2437
2511
 
2438
- ##### [alert_dismiss](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/alert.rb#L27) android
2512
+ ##### [alert_dismiss](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/alert.rb#L27) android
2439
2513
 
2440
2514
  > def alert_dismiss
2441
2515
 
@@ -2448,7 +2522,7 @@ __Returns:__
2448
2522
 
2449
2523
  --
2450
2524
 
2451
- ##### [alert_dismiss_text](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/alert.rb#L34) android
2525
+ ##### [alert_dismiss_text](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/alert.rb#L34) android
2452
2526
 
2453
2527
  > def alert_dismiss_text
2454
2528
 
@@ -2461,7 +2535,7 @@ __Returns:__
2461
2535
 
2462
2536
  --
2463
2537
 
2464
- ##### [Button](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/button.rb#L4) android
2538
+ ##### [Button](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/button.rb#L3) android
2465
2539
 
2466
2540
  > Button = 'android.widget.Button'.freeze
2467
2541
 
@@ -2469,7 +2543,7 @@ __Returns:__
2469
2543
 
2470
2544
  --
2471
2545
 
2472
- ##### [ImageButton](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/button.rb#L5) android
2546
+ ##### [ImageButton](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/button.rb#L4) android
2473
2547
 
2474
2548
  > ImageButton = 'android.widget.ImageButton'.freeze
2475
2549
 
@@ -2477,31 +2551,7 @@ __Returns:__
2477
2551
 
2478
2552
  --
2479
2553
 
2480
- ##### [_button_visible_selectors](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/button.rb#L9) android
2481
-
2482
- > def _button_visible_selectors(opts = {})
2483
-
2484
-
2485
-
2486
- --
2487
-
2488
- ##### [_button_exact_string](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/button.rb#L22) android
2489
-
2490
- > def _button_exact_string(value)
2491
-
2492
-
2493
-
2494
- --
2495
-
2496
- ##### [_button_contains_string](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/button.rb#L28) android
2497
-
2498
- > def _button_contains_string(value)
2499
-
2500
-
2501
-
2502
- --
2503
-
2504
- ##### [button](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/button.rb#L40) android
2554
+ ##### [button](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/button.rb#L10) android
2505
2555
 
2506
2556
  > def button(value)
2507
2557
 
@@ -2518,7 +2568,7 @@ __Returns:__
2518
2568
 
2519
2569
  --
2520
2570
 
2521
- ##### [buttons](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/button.rb#L68) android
2571
+ ##### [buttons](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/button.rb#L27) android
2522
2572
 
2523
2573
  > def buttons(value = false)
2524
2574
 
@@ -2535,7 +2585,7 @@ __Returns:__
2535
2585
 
2536
2586
  --
2537
2587
 
2538
- ##### [first_button](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/button.rb#L75) android
2588
+ ##### [first_button](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/button.rb#L34) android
2539
2589
 
2540
2590
  > def first_button
2541
2591
 
@@ -2547,7 +2597,7 @@ __Returns:__
2547
2597
 
2548
2598
  --
2549
2599
 
2550
- ##### [last_button](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/button.rb#L86) android
2600
+ ##### [last_button](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/button.rb#L40) android
2551
2601
 
2552
2602
  > def last_button
2553
2603
 
@@ -2559,7 +2609,7 @@ __Returns:__
2559
2609
 
2560
2610
  --
2561
2611
 
2562
- ##### [button_exact](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/button.rb#L109) android
2612
+ ##### [button_exact](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/button.rb#L56) android
2563
2613
 
2564
2614
  > def button_exact(value)
2565
2615
 
@@ -2575,7 +2625,7 @@ __Returns:__
2575
2625
 
2576
2626
  --
2577
2627
 
2578
- ##### [buttons_exact](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/button.rb#L121) android
2628
+ ##### [buttons_exact](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/button.rb#L63) android
2579
2629
 
2580
2630
  > def buttons_exact(value)
2581
2631
 
@@ -2591,15 +2641,7 @@ __Returns:__
2591
2641
 
2592
2642
  --
2593
2643
 
2594
- ##### [raise_no_such_element_if_empty](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/button.rb#L127) android
2595
-
2596
- > def raise_no_such_element_if_empty(elements)
2597
-
2598
-
2599
-
2600
- --
2601
-
2602
- ##### [uiautomator_find](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/mobile_methods.rb#L10) android
2644
+ ##### [uiautomator_find](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/mobile_methods.rb#L10) android
2603
2645
 
2604
2646
  > def uiautomator_find
2605
2647
 
@@ -2611,7 +2653,7 @@ find_element/s can be used with a [UISelector](http://developer.android.com/tool
2611
2653
 
2612
2654
  --
2613
2655
 
2614
- ##### [find](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/generic.rb#L6) android
2656
+ ##### [find](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/generic.rb#L6) android
2615
2657
 
2616
2658
  > def find(value)
2617
2659
 
@@ -2627,7 +2669,7 @@ __Returns:__
2627
2669
 
2628
2670
  --
2629
2671
 
2630
- ##### [finds](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/generic.rb#L13) android
2672
+ ##### [finds](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/generic.rb#L13) android
2631
2673
 
2632
2674
  > def finds(value)
2633
2675
 
@@ -2643,7 +2685,7 @@ __Returns:__
2643
2685
 
2644
2686
  --
2645
2687
 
2646
- ##### [find_exact](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/generic.rb#L20) android
2688
+ ##### [find_exact](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/generic.rb#L20) android
2647
2689
 
2648
2690
  > def find_exact(value)
2649
2691
 
@@ -2659,7 +2701,7 @@ __Returns:__
2659
2701
 
2660
2702
  --
2661
2703
 
2662
- ##### [finds_exact](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/generic.rb#L27) android
2704
+ ##### [finds_exact](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/generic.rb#L27) android
2663
2705
 
2664
2706
  > def finds_exact(value)
2665
2707
 
@@ -2675,7 +2717,7 @@ __Returns:__
2675
2717
 
2676
2718
  --
2677
2719
 
2678
- ##### [scroll_to](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/generic.rb#L40) android
2720
+ ##### [scroll_to](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/generic.rb#L40) android
2679
2721
 
2680
2722
  > def scroll_to(text, scrollable_index = 0)
2681
2723
 
@@ -2693,7 +2735,7 @@ __Returns:__
2693
2735
 
2694
2736
  --
2695
2737
 
2696
- ##### [scroll_to_exact](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/generic.rb#L54) android
2738
+ ##### [scroll_to_exact](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/generic.rb#L58) android
2697
2739
 
2698
2740
  > def scroll_to_exact(text, scrollable_index = 0)
2699
2741
 
@@ -2711,7 +2753,7 @@ __Returns:__
2711
2753
 
2712
2754
  --
2713
2755
 
2714
- ##### [EditText](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/textfield.rb#L3) android
2756
+ ##### [EditText](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/textfield.rb#L3) android
2715
2757
 
2716
2758
  > EditText = 'android.widget.EditText'.freeze
2717
2759
 
@@ -2719,7 +2761,7 @@ __Returns:__
2719
2761
 
2720
2762
  --
2721
2763
 
2722
- ##### [textfield](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/textfield.rb#L9) android
2764
+ ##### [textfield](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/textfield.rb#L9) android
2723
2765
 
2724
2766
  > def textfield(value)
2725
2767
 
@@ -2736,7 +2778,7 @@ __Returns:__
2736
2778
 
2737
2779
  --
2738
2780
 
2739
- ##### [textfields](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/textfield.rb#L18) android
2781
+ ##### [textfields](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/textfield.rb#L18) android
2740
2782
 
2741
2783
  > def textfields(value = false)
2742
2784
 
@@ -2753,7 +2795,7 @@ __Returns:__
2753
2795
 
2754
2796
  --
2755
2797
 
2756
- ##### [first_textfield](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/textfield.rb#L25) android
2798
+ ##### [first_textfield](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/textfield.rb#L25) android
2757
2799
 
2758
2800
  > def first_textfield
2759
2801
 
@@ -2765,7 +2807,7 @@ __Returns:__
2765
2807
 
2766
2808
  --
2767
2809
 
2768
- ##### [last_textfield](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/textfield.rb#L31) android
2810
+ ##### [last_textfield](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/textfield.rb#L31) android
2769
2811
 
2770
2812
  > def last_textfield
2771
2813
 
@@ -2777,7 +2819,7 @@ __Returns:__
2777
2819
 
2778
2820
  --
2779
2821
 
2780
- ##### [textfield_exact](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/textfield.rb#L38) android
2822
+ ##### [textfield_exact](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/textfield.rb#L38) android
2781
2823
 
2782
2824
  > def textfield_exact(value)
2783
2825
 
@@ -2793,7 +2835,7 @@ __Returns:__
2793
2835
 
2794
2836
  --
2795
2837
 
2796
- ##### [textfields_exact](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/android/element/textfield.rb#L45) android
2838
+ ##### [textfields_exact](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/element/textfield.rb#L45) android
2797
2839
 
2798
2840
  > def textfields_exact(value)
2799
2841
 
@@ -2809,7 +2851,190 @@ __Returns:__
2809
2851
 
2810
2852
  --
2811
2853
 
2812
- ##### [value](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/patch.rb#L12)
2854
+ ##### [string_visible_contains](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/uiautomator2/helper.rb#L13) android
2855
+
2856
+ > def string_visible_contains(class_name, value)
2857
+
2858
+ Returns a string that matches the first element that contains value
2859
+ For automationName is Appium
2860
+ example: string_visible_contains 'UIATextField', 'sign in'
2861
+ note for XPath: https://github.com/appium/ruby_lib/pull/561
2862
+
2863
+ __Parameters:__
2864
+
2865
+      [String] class_name - the class name for the element
2866
+
2867
+      [String] value - the value to search for
2868
+
2869
+ __Returns:__
2870
+
2871
+      [String]
2872
+
2873
+ --
2874
+
2875
+ ##### [complex_find_contains](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/uiautomator2/helper.rb#L31) android
2876
+
2877
+ > def complex_find_contains(class_name, value)
2878
+
2879
+ Find the first element that contains value
2880
+
2881
+ __Parameters:__
2882
+
2883
+      [String] class_name - the class name for the element
2884
+
2885
+      [String] value - the value to search for
2886
+
2887
+ __Returns:__
2888
+
2889
+      [Element]
2890
+
2891
+ --
2892
+
2893
+ ##### [complex_finds_contains](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/uiautomator2/helper.rb#L41) android
2894
+
2895
+ > def complex_finds_contains(class_name, value)
2896
+
2897
+ Find all elements containing value
2898
+
2899
+ __Parameters:__
2900
+
2901
+      [String] class_name - the class name for the element
2902
+
2903
+      [String] value - the value to search for
2904
+
2905
+ __Returns:__
2906
+
2907
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[Array<Element>]
2908
+
2909
+ --
2910
+
2911
+ ##### [complex_find_exact](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/uiautomator2/helper.rb#L69) android
2912
+
2913
+ > def complex_find_exact(class_name, value)
2914
+
2915
+ Find the first element exactly matching value
2916
+
2917
+ __Parameters:__
2918
+
2919
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[String] class_name - the class name for the element
2920
+
2921
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[String] value - the value to search for
2922
+
2923
+ __Returns:__
2924
+
2925
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[Element]
2926
+
2927
+ --
2928
+
2929
+ ##### [complex_finds_exact](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/uiautomator2/helper.rb#L79) android
2930
+
2931
+ > def complex_finds_exact(class_name, value)
2932
+
2933
+ Find all elements exactly matching value
2934
+
2935
+ __Parameters:__
2936
+
2937
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[String] class_name - the class name for the element
2938
+
2939
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[String] value - the value to search for
2940
+
2941
+ __Returns:__
2942
+
2943
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[Element]
2944
+
2945
+ --
2946
+
2947
+ ##### [button](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/uiautomator2/element/button.rb#L9) android
2948
+
2949
+ > def button(value)
2950
+
2951
+ Find the first button that contains value or by index.
2952
+ If int then the button at that index is returned.
2953
+
2954
+ __Parameters:__
2955
+
2956
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[String, Integer] value - the value to exactly match.
2957
+
2958
+ __Returns:__
2959
+
2960
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[Button]
2961
+
2962
+ --
2963
+
2964
+ ##### [buttons](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/uiautomator2/element/button.rb#L29) android
2965
+
2966
+ > def buttons(value = false)
2967
+
2968
+ Find all buttons containing value.
2969
+ If value is omitted, all buttons are returned.
2970
+
2971
+ __Parameters:__
2972
+
2973
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[String] value - the value to search for
2974
+
2975
+ __Returns:__
2976
+
2977
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[Array<Button>]
2978
+
2979
+ --
2980
+
2981
+ ##### [first_button](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/uiautomator2/element/button.rb#L36) android
2982
+
2983
+ > def first_button
2984
+
2985
+ Find the first button.
2986
+
2987
+ __Returns:__
2988
+
2989
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[Button]
2990
+
2991
+ --
2992
+
2993
+ ##### [last_button](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/uiautomator2/element/button.rb#L43) android
2994
+
2995
+ > def last_button
2996
+
2997
+ Find the last button.
2998
+
2999
+ __Returns:__
3000
+
3001
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[Button]
3002
+
3003
+ --
3004
+
3005
+ ##### [button_exact](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/uiautomator2/element/button.rb#L60) android
3006
+
3007
+ > def button_exact(value)
3008
+
3009
+ Find the first button that exactly matches value.
3010
+
3011
+ __Parameters:__
3012
+
3013
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[String] value - the value to match exactly
3014
+
3015
+ __Returns:__
3016
+
3017
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[Button]
3018
+
3019
+ --
3020
+
3021
+ ##### [buttons_exact](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/android/uiautomator2/element/button.rb#L68) android
3022
+
3023
+ > def buttons_exact(value)
3024
+
3025
+ Find all buttons that exactly match value.
3026
+
3027
+ __Parameters:__
3028
+
3029
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[String] value - the value to match exactly
3030
+
3031
+ __Returns:__
3032
+
3033
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[Array<Button>]
3034
+
3035
+ --
3036
+
3037
+ ##### [value](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/patch.rb#L12)
2813
3038
 
2814
3039
  > def value
2815
3040
 
@@ -2819,7 +3044,7 @@ Fixes NoMethodError: undefined method `value' for Selenium::WebDriver::Element
2819
3044
 
2820
3045
  --
2821
3046
 
2822
- ##### [name](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/patch.rb#L19)
3047
+ ##### [name](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/patch.rb#L19)
2823
3048
 
2824
3049
  > def name
2825
3050
 
@@ -2829,9 +3054,9 @@ Fixes NoMethodError: undefined method `name' for Selenium::WebDriver::Element
2829
3054
 
2830
3055
  --
2831
3056
 
2832
- ##### [location_rel](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/patch.rb#L30)
3057
+ ##### [location_rel](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/patch.rb#L30)
2833
3058
 
2834
- > def location_rel
3059
+ > def location_rel(driver = $driver)
2835
3060
 
2836
3061
  For use with mobile tap.
2837
3062
 
@@ -2845,7 +3070,7 @@ __Returns:__
2845
3070
 
2846
3071
  --
2847
3072
 
2848
- ##### [DEFAULT_HEADERS](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/patch.rb#L165)
3073
+ ##### [DEFAULT_HEADERS](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/patch.rb#L170)
2849
3074
 
2850
3075
  > DEFAULT_HEADERS = { 'Accept' => CONTENT_TYPE, 'User-Agent' => "appium/ruby_lib/#{::Appium::VERSION}" }.freeze
2851
3076
 
@@ -2853,7 +3078,7 @@ __Returns:__
2853
3078
 
2854
3079
  --
2855
3080
 
2856
- ##### [patch_remote_driver_commands](https://github.com/appium/ruby_lib/blob/0ae697630a959ab8178b3c4b22911460f98157d2/lib/appium_lib/common/patch.rb#L168)
3081
+ ##### [patch_remote_driver_commands](https://github.com/appium/ruby_lib/blob/a4c238552724878c31d8ff0179ef00d8258c76a4/lib/appium_lib/common/patch.rb#L173)
2857
3082
 
2858
3083
  > def patch_remote_driver_commands
2859
3084