appium_lib_core 11.1.1 → 11.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -1
- data/Gemfile +3 -3
- data/README.md +2 -2
- data/Rakefile +1 -1
- data/lib/appium_lib_core/common/base/bidi_bridge.rb +4 -0
- data/lib/appium_lib_core/common/base/bridge.rb +7 -1
- data/lib/appium_lib_core/common/base/driver.rb +9 -1
- data/lib/appium_lib_core/common/wait.rb +4 -0
- data/lib/appium_lib_core/common/ws/websocket.rb +8 -4
- data/lib/appium_lib_core/driver.rb +20 -9
- data/lib/appium_lib_core/element.rb +8 -3
- data/lib/appium_lib_core/version.rb +2 -2
- data/lib/appium_lib_core.rb +2 -2
- data/rbs_collection.lock.yaml +63 -31
- data/sig/gems/forwardable.rbs +17 -0
- data/sig/gems/selenium/atoms.rbs +0 -1
- data/sig/gems/selenium/bidi/browsing_context.rbs +1 -1
- data/sig/gems/selenium/bridge.rbs +3 -0
- data/sig/gems/selenium/chromium/features.rbs +1 -1
- data/sig/gems/selenium/common/element.rbs +2 -0
- data/sig/gems/selenium/driver.rbs +10 -0
- data/sig/gems/selenium/fedcm.rbs +12 -0
- data/sig/gems/selenium/firefox/profile.rbs +0 -2
- data/sig/gems/selenium/log_entry.rbs +12 -0
- data/sig/gems/selenium/remote/capabilities.rbs +6 -0
- data/sig/interfaces/bridge.rbs +4 -0
- data/sig/lib/appium_lib_core/android/device/auth_finger_print.rbs +1 -1
- data/sig/lib/appium_lib_core/android/device/clipboard.rbs +1 -1
- data/sig/lib/appium_lib_core/android/device/emulator.rbs +2 -2
- data/sig/lib/appium_lib_core/android/device/performance.rbs +1 -1
- data/sig/lib/appium_lib_core/android/device/screen.rbs +2 -0
- data/sig/lib/appium_lib_core/android/device.rbs +20 -2
- data/sig/lib/appium_lib_core/android/uiautomator2/device/battery.rbs +2 -0
- data/sig/lib/appium_lib_core/common/base/bidi_bridge.rbs +4 -0
- data/sig/lib/appium_lib_core/common/base/bridge.rbs +2 -0
- data/sig/lib/appium_lib_core/common/base/capabilities.rbs +3 -0
- data/sig/lib/appium_lib_core/common/base/rotable.rbs +3 -0
- data/sig/lib/appium_lib_core/common/base/search_context.rbs +1 -1
- data/sig/lib/appium_lib_core/common/device/app_state.rbs +2 -2
- data/sig/lib/appium_lib_core/common/device/device.rbs +1 -1
- data/sig/lib/appium_lib_core/common/device/device_lock.rbs +2 -2
- data/sig/lib/appium_lib_core/common/device/keyboard.rbs +2 -2
- data/sig/lib/appium_lib_core/common/device/keyevent.rbs +1 -1
- data/sig/lib/appium_lib_core/common/device/screen_record.rbs +7 -3
- data/sig/lib/appium_lib_core/driver.rbs +19 -10
- data/sig/lib/appium_lib_core/element.rbs +5 -2
- data/sig/lib/appium_lib_core/ios/{clipboard.rbs → device/clipboard.rbs} +0 -4
- data/sig/lib/appium_lib_core/ios/xcuitest/device/battery.rbs +3 -1
- data/sig/lib/appium_lib_core/ios/xcuitest/device/performance.rbs +2 -0
- data/sig/lib/appium_lib_core.rbs +1 -1
- metadata +6 -4
- data/sig/lib/appium_lib_core/android/device/network.rbs +0 -13
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 34bd1eb7d56d3504d71c82177aeec7f63c16240727def1064ec16b56f467437e
|
|
4
|
+
data.tar.gz: 9b5be0f79955edb2ea0b8ce2241ddde1b523e5a433c888225408c9eb4db0001d
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 3a5afbb1502ac8a757f0c672a69fb0fb690ca532568b4a83e596edb7d1a244af838c7c4f1ece78e8dff0b190e88c72cb081910293b958d6f3a64c1a0255957c4
|
|
7
|
+
data.tar.gz: f3ff70f1c98d0b82d120f37c9f1ccb7fcc3353b323a08ccf17dea0819f96c3f853aba8de2df03b8f3adecd56b7a0a0fb1dbf11a186c9572a6ba952332b6a46f1
|
data/CHANGELOG.md
CHANGED
|
@@ -2,10 +2,13 @@
|
|
|
2
2
|
All notable changes to this project will be documented in this file.
|
|
3
3
|
Read `release_notes.md` for commit level details.
|
|
4
4
|
|
|
5
|
+
## [11.12.0] - 2025-11-16
|
|
6
|
+
- Add more RBS files
|
|
7
|
+
|
|
5
8
|
## [11.1.0,11.1.1] - 2025-08-08
|
|
6
9
|
- Add WebDriver BiDi support. Please set `webSocketUrl` in the capabilities to enable it.
|
|
7
10
|
- `test/functional/android/webdriver/bidi_test.rb` can be an example usage.
|
|
8
|
-
- Older versions of the Selenium Ruby bindings may raise exceptions due to missing dependencies.
|
|
11
|
+
- Older versions of the Selenium Ruby bindings may raise exceptions due to missing module dependencies.
|
|
9
12
|
|
|
10
13
|
## [11.0.2] - 2025-04-27
|
|
11
14
|
- Add more sig definitions [#571](https://github.com/appium/ruby_lib_core/pull/571)
|
data/Gemfile
CHANGED
|
@@ -8,8 +8,8 @@ gem 'minitest', '~> 5.0'
|
|
|
8
8
|
gem 'minitest-reporters', '~> 1.1'
|
|
9
9
|
gem 'parallel_tests'
|
|
10
10
|
gem 'rake', '~> 13.0'
|
|
11
|
-
gem 'rubocop', '1.
|
|
11
|
+
gem 'rubocop', '1.81.7'
|
|
12
12
|
gem 'simplecov'
|
|
13
|
-
gem 'steep', '~> 1.
|
|
14
|
-
gem 'webmock', '~> 3.
|
|
13
|
+
gem 'steep', '~> 1.10.0'
|
|
14
|
+
gem 'webmock', '~> 3.26.0'
|
|
15
15
|
gem 'yard', '~> 0.9.11'
|
data/README.md
CHANGED
|
@@ -114,8 +114,8 @@ $ IGNORE_VERSION_SKIP=true CI=true bundle exec rake test:func:android
|
|
|
114
114
|
opts = {
|
|
115
115
|
capabilities: { # Append capabilities
|
|
116
116
|
platformName: 'ios',
|
|
117
|
-
platformVersion: '
|
|
118
|
-
deviceName: 'iPhone
|
|
117
|
+
platformVersion: '26.0',
|
|
118
|
+
deviceName: 'iPhone 17',
|
|
119
119
|
# app: '/path/to/MyiOS.app', # Without 'app' capability, an appium session starts with the home screen
|
|
120
120
|
automationName: 'XCUITest'
|
|
121
121
|
},
|
data/Rakefile
CHANGED
|
@@ -18,6 +18,8 @@ module Appium
|
|
|
18
18
|
module Core
|
|
19
19
|
class Base
|
|
20
20
|
class BiDiBridge < ::Appium::Core::Base::Bridge
|
|
21
|
+
# steep:ignore:start
|
|
22
|
+
|
|
21
23
|
attr_reader :bidi
|
|
22
24
|
|
|
23
25
|
# Override
|
|
@@ -85,6 +87,8 @@ module Appium
|
|
|
85
87
|
execute(:close_window).tap { |handles| bidi.close if handles.empty? }
|
|
86
88
|
end
|
|
87
89
|
|
|
90
|
+
# steep:ignore:end
|
|
91
|
+
|
|
88
92
|
private
|
|
89
93
|
|
|
90
94
|
def browsing_context
|
|
@@ -37,7 +37,9 @@ module Appium
|
|
|
37
37
|
include Device::ExecuteDriver
|
|
38
38
|
include Device::Orientation
|
|
39
39
|
|
|
40
|
+
# steep:ignore:start
|
|
40
41
|
Bridge.locator_converter = LocatorConverter.new
|
|
42
|
+
# steep:ignore:end
|
|
41
43
|
|
|
42
44
|
# Prefix for extra capability defined by W3C
|
|
43
45
|
APPIUM_PREFIX = 'appium:'
|
|
@@ -141,7 +143,7 @@ module Appium
|
|
|
141
143
|
private
|
|
142
144
|
|
|
143
145
|
def camel_case(str_or_sym)
|
|
144
|
-
str_or_sym.to_s.gsub(/_([a-z])/) { Regexp.last_match(1)
|
|
146
|
+
str_or_sym.to_s.gsub(/_([a-z])/) { Regexp.last_match(1)&.upcase }
|
|
145
147
|
end
|
|
146
148
|
|
|
147
149
|
def extension_prefix?(capability_name)
|
|
@@ -204,12 +206,14 @@ module Appium
|
|
|
204
206
|
# @driver.action.click(element).perform # The 'click' is a part of 'PointerActions'
|
|
205
207
|
#
|
|
206
208
|
def action(_deprecated_async = nil, async: false, devices: nil)
|
|
209
|
+
# steep:ignore:start
|
|
207
210
|
::Selenium::WebDriver::ActionBuilder.new(
|
|
208
211
|
self,
|
|
209
212
|
devices: devices || [::Selenium::WebDriver::Interactions.pointer(:touch, name: 'touch')],
|
|
210
213
|
async: async,
|
|
211
214
|
duration: 50 # milliseconds
|
|
212
215
|
)
|
|
216
|
+
# steep:ignore:end
|
|
213
217
|
end
|
|
214
218
|
|
|
215
219
|
# Port from MJSONWP
|
|
@@ -278,7 +282,9 @@ module Appium
|
|
|
278
282
|
data = execute :get_log, {}, { type: type.to_s }
|
|
279
283
|
|
|
280
284
|
Array(data).map do |l|
|
|
285
|
+
# steep:ignore:start
|
|
281
286
|
::Selenium::WebDriver::LogEntry.new l.fetch('level', 'UNKNOWN'), l.fetch('timestamp'), l.fetch('message')
|
|
287
|
+
# steep:ignore:end
|
|
282
288
|
rescue KeyError
|
|
283
289
|
next
|
|
284
290
|
end
|
|
@@ -36,7 +36,9 @@ module Appium
|
|
|
36
36
|
|
|
37
37
|
include ::Appium::Core::Waitable
|
|
38
38
|
|
|
39
|
+
# steep:ignore:start
|
|
39
40
|
::Selenium::WebDriver::SearchContext.extra_finders = ::Appium::Core::Base::SearchContext::APPIUM_EXTRA_FINDERS
|
|
41
|
+
# steep:ignore:end
|
|
40
42
|
|
|
41
43
|
# Private API.
|
|
42
44
|
# Do not use this for general use. Used by flutter driver to get bridge for creating a new element
|
|
@@ -57,7 +59,9 @@ module Appium
|
|
|
57
59
|
# internal use
|
|
58
60
|
@has_bidi = false
|
|
59
61
|
|
|
62
|
+
# steep:ignore:start
|
|
60
63
|
::Selenium::WebDriver::Remote::Bridge.element_class = ::Appium::Core::Element
|
|
64
|
+
# steep:ignore:end
|
|
61
65
|
bridge ||= create_bridge(**opts)
|
|
62
66
|
add_extensions(bridge.browser)
|
|
63
67
|
@bridge = listener ? ::Appium::Support::EventFiringBridge.new(bridge, listener, **original_opts) : bridge
|
|
@@ -83,7 +87,9 @@ module Appium
|
|
|
83
87
|
|
|
84
88
|
@has_bidi = capabilities && capabilities['webSocketUrl'] ? true : false
|
|
85
89
|
bridge_clzz = @has_bidi ? ::Appium::Core::Base::BiDiBridge : ::Appium::Core::Base::Bridge
|
|
90
|
+
# steep:ignore:start
|
|
86
91
|
bridge = bridge_clzz.new(**bridge_opts)
|
|
92
|
+
# steep:ignore:end
|
|
87
93
|
|
|
88
94
|
if session_id.nil?
|
|
89
95
|
bridge.create_session(capabilities)
|
|
@@ -220,7 +226,9 @@ module Appium
|
|
|
220
226
|
def key_action(async: false)
|
|
221
227
|
@bridge.action(
|
|
222
228
|
async: async,
|
|
229
|
+
# steep:ignore:start
|
|
223
230
|
devices: [::Selenium::WebDriver::Interactions.key('keyboard')]
|
|
231
|
+
# steep:ignore:end
|
|
224
232
|
)
|
|
225
233
|
end
|
|
226
234
|
|
|
@@ -627,7 +635,7 @@ module Appium
|
|
|
627
635
|
#
|
|
628
636
|
def install_app(path, **options)
|
|
629
637
|
# TODO: use mobile command in the background?
|
|
630
|
-
options = options.transform_keys { |key| key.to_s.gsub(/_./) { |v| v[1]
|
|
638
|
+
options = options.transform_keys { |key| key.to_s.gsub(/_./) { |v| v[1]&.upcase } } unless options.nil?
|
|
631
639
|
@bridge.install_app(path, options)
|
|
632
640
|
end
|
|
633
641
|
|
|
@@ -62,7 +62,9 @@ module Appium
|
|
|
62
62
|
end
|
|
63
63
|
|
|
64
64
|
msg = message_for timeout, message
|
|
65
|
+
# steep:ignore:start
|
|
65
66
|
msg += " (#{last_error.message})" if last_error
|
|
67
|
+
# steep:ignore:end
|
|
66
68
|
|
|
67
69
|
raise TimeoutError, msg
|
|
68
70
|
end
|
|
@@ -109,7 +111,9 @@ module Appium
|
|
|
109
111
|
end
|
|
110
112
|
|
|
111
113
|
msg = message_for timeout, message
|
|
114
|
+
# steep:ignore:start
|
|
112
115
|
msg += " (#{last_error.message})" if last_error
|
|
116
|
+
# steep:ignore:end
|
|
113
117
|
|
|
114
118
|
raise TimeoutError, msg
|
|
115
119
|
end
|
|
@@ -43,6 +43,7 @@ module Appium
|
|
|
43
43
|
@endpoint = url
|
|
44
44
|
|
|
45
45
|
@ws_thread = Thread.new do
|
|
46
|
+
# steep:ignore:start
|
|
46
47
|
EM.run do
|
|
47
48
|
@client ||= ::Faye::WebSocket::Client.new(url, protocols, options)
|
|
48
49
|
|
|
@@ -62,6 +63,7 @@ module Appium
|
|
|
62
63
|
handle_close(close.code, close.reason)
|
|
63
64
|
end
|
|
64
65
|
end
|
|
66
|
+
# steep:ignore:end
|
|
65
67
|
end
|
|
66
68
|
end
|
|
67
69
|
|
|
@@ -120,7 +122,7 @@ module Appium
|
|
|
120
122
|
# Default is just put a debug message.
|
|
121
123
|
#
|
|
122
124
|
def handle_open
|
|
123
|
-
::Appium::Logger.debug
|
|
125
|
+
::Appium::Logger.debug("#{self.class} :open")
|
|
124
126
|
end
|
|
125
127
|
|
|
126
128
|
# Standard out by default
|
|
@@ -134,7 +136,7 @@ module Appium
|
|
|
134
136
|
# In general, users should override this handler to handle messages from the peer.
|
|
135
137
|
#
|
|
136
138
|
def handle_message_data(data)
|
|
137
|
-
::Appium::Logger.debug
|
|
139
|
+
::Appium::Logger.debug("#{self.class} :message #{data}")
|
|
138
140
|
$stdout << "#{data}\n"
|
|
139
141
|
end
|
|
140
142
|
|
|
@@ -145,7 +147,7 @@ module Appium
|
|
|
145
147
|
# Default is just put a error message.
|
|
146
148
|
#
|
|
147
149
|
def handle_error
|
|
148
|
-
::Appium::Logger.error
|
|
150
|
+
::Appium::Logger.error("#{self.class} :error")
|
|
149
151
|
end
|
|
150
152
|
|
|
151
153
|
#
|
|
@@ -156,9 +158,11 @@ module Appium
|
|
|
156
158
|
# The methods also clear +client+ instance and stop the eventmachine which is called in initialising this class.
|
|
157
159
|
#
|
|
158
160
|
def handle_close(code, reason)
|
|
159
|
-
::Appium::Logger.debug
|
|
161
|
+
::Appium::Logger.debug("#{self.class} :close #{code} #{reason}")
|
|
160
162
|
@client = nil
|
|
163
|
+
# steep:ignore:start
|
|
161
164
|
EM.stop
|
|
165
|
+
# steep:ignore:end
|
|
162
166
|
end
|
|
163
167
|
end # module WebSocket
|
|
164
168
|
end # module Core
|
|
@@ -602,12 +602,19 @@ module Appium
|
|
|
602
602
|
|
|
603
603
|
# @private
|
|
604
604
|
def get_caps(opts)
|
|
605
|
-
|
|
605
|
+
o = opts || {}
|
|
606
|
+
|
|
607
|
+
raw_caps = o[:caps] || o[:capabilities]
|
|
608
|
+
caps_hash = raw_caps.is_a?(Hash) ? raw_caps : {}
|
|
609
|
+
|
|
610
|
+
Core::Base::Capabilities.new(caps_hash)
|
|
606
611
|
end
|
|
607
612
|
|
|
608
|
-
# @private
|
|
609
613
|
def get_appium_lib_opts(opts)
|
|
610
|
-
opts
|
|
614
|
+
o = opts || {}
|
|
615
|
+
|
|
616
|
+
val = o[:appium_lib]
|
|
617
|
+
val.is_a?(Hash) ? val : {}
|
|
611
618
|
end
|
|
612
619
|
|
|
613
620
|
# @private
|
|
@@ -621,17 +628,21 @@ module Appium
|
|
|
621
628
|
# Use @caps[:app] without modifications if the path isn't HTTP/S or local path.
|
|
622
629
|
def set_app_path
|
|
623
630
|
# FIXME: maybe `:app` should check `app` as well.
|
|
624
|
-
return unless @caps
|
|
631
|
+
return unless @caps
|
|
632
|
+
|
|
633
|
+
app = get_app # for steep reason
|
|
634
|
+
return unless app && app.empty?
|
|
625
635
|
|
|
626
636
|
uri_regex = defined?(URI::RFC2396_PARSER) ? URI::RFC2396_PARSER : URI::DEFAULT_PARSER
|
|
627
|
-
return if
|
|
637
|
+
return if app =~ uri_regex.make_regexp
|
|
628
638
|
|
|
629
|
-
|
|
639
|
+
# steep:ignore
|
|
640
|
+
app_path = File.expand_path(app)
|
|
630
641
|
@caps['app'] = if File.exist? app_path
|
|
631
642
|
app_path
|
|
632
643
|
else
|
|
633
|
-
::Appium::Logger.warn("Use #{
|
|
634
|
-
|
|
644
|
+
::Appium::Logger.warn("Use #{app} directly since #{app_path} does not exist.")
|
|
645
|
+
app
|
|
635
646
|
end
|
|
636
647
|
end
|
|
637
648
|
|
|
@@ -659,7 +670,7 @@ module Appium
|
|
|
659
670
|
def set_appium_device
|
|
660
671
|
# https://code.google.com/p/selenium/source/browse/spec-draft.md?repo=mobile
|
|
661
672
|
@device = get_cap 'platformName'
|
|
662
|
-
return
|
|
673
|
+
return unless @device
|
|
663
674
|
|
|
664
675
|
@device = convert_to_symbol(convert_downcase(@device))
|
|
665
676
|
end
|
|
@@ -19,7 +19,9 @@ module Appium
|
|
|
19
19
|
class Element < ::Selenium::WebDriver::Element
|
|
20
20
|
include ::Appium::Core::Base::TakesScreenshot
|
|
21
21
|
|
|
22
|
+
# steep:ignore:start
|
|
22
23
|
::Selenium::WebDriver::SearchContext.extra_finders = ::Appium::Core::Base::SearchContext::APPIUM_EXTRA_FINDERS
|
|
24
|
+
# steep:ignore:end
|
|
23
25
|
|
|
24
26
|
# Retuns the element id.
|
|
25
27
|
#
|
|
@@ -58,16 +60,18 @@ module Appium
|
|
|
58
60
|
respond_to?(method_name) ? attribute(method_name.to_s.tr('_', '-')) : super
|
|
59
61
|
end
|
|
60
62
|
|
|
61
|
-
def respond_to_missing?(
|
|
63
|
+
def respond_to_missing?(_method_name, _include_private = false)
|
|
62
64
|
true
|
|
63
65
|
end
|
|
64
66
|
|
|
65
67
|
# Alias for type
|
|
66
68
|
alias type send_keys
|
|
67
69
|
|
|
70
|
+
# @deprecated Please use `Element#rect` instead to get location information.
|
|
71
|
+
#
|
|
68
72
|
# For use with location_rel.
|
|
69
73
|
#
|
|
70
|
-
# @return [
|
|
74
|
+
# @return [Struct(:x, :y)] the relative x, y in a struct in string.
|
|
71
75
|
#
|
|
72
76
|
# @example
|
|
73
77
|
#
|
|
@@ -86,7 +90,8 @@ module Appium
|
|
|
86
90
|
center_y = location_y + (size_height / 2.0)
|
|
87
91
|
|
|
88
92
|
w = driver.window_size
|
|
89
|
-
|
|
93
|
+
point = Struct.new(:x, :y)
|
|
94
|
+
point.new("#{center_x} / #{w.width.to_f}", "#{center_y} / #{w.height.to_f}")
|
|
90
95
|
end
|
|
91
96
|
|
|
92
97
|
# Return an element screenshot as base64
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
|
|
15
15
|
module Appium
|
|
16
16
|
module Core
|
|
17
|
-
VERSION = '11.
|
|
18
|
-
DATE = '2025-
|
|
17
|
+
VERSION = '11.2.0' unless defined? ::Appium::Core::VERSION
|
|
18
|
+
DATE = '2025-11-16' unless defined? ::Appium::Core::DATE
|
|
19
19
|
end
|
|
20
20
|
end
|
data/lib/appium_lib_core.rb
CHANGED
data/rbs_collection.lock.yaml
CHANGED
|
@@ -6,7 +6,7 @@ gems:
|
|
|
6
6
|
source:
|
|
7
7
|
type: git
|
|
8
8
|
name: ruby/gem_rbs_collection
|
|
9
|
-
revision:
|
|
9
|
+
revision: f1d2dae32fe8d46683fbc79bbd0f1ca391d5e11a
|
|
10
10
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
11
11
|
repo_dir: gems
|
|
12
12
|
- name: addressable
|
|
@@ -14,7 +14,7 @@ gems:
|
|
|
14
14
|
source:
|
|
15
15
|
type: git
|
|
16
16
|
name: ruby/gem_rbs_collection
|
|
17
|
-
revision:
|
|
17
|
+
revision: f1d2dae32fe8d46683fbc79bbd0f1ca391d5e11a
|
|
18
18
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
19
19
|
repo_dir: gems
|
|
20
20
|
- name: ast
|
|
@@ -22,23 +22,27 @@ gems:
|
|
|
22
22
|
source:
|
|
23
23
|
type: git
|
|
24
24
|
name: ruby/gem_rbs_collection
|
|
25
|
-
revision:
|
|
25
|
+
revision: f1d2dae32fe8d46683fbc79bbd0f1ca391d5e11a
|
|
26
26
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
27
27
|
repo_dir: gems
|
|
28
28
|
- name: base64
|
|
29
|
-
version:
|
|
29
|
+
version: 0.3.0
|
|
30
30
|
source:
|
|
31
|
-
type:
|
|
31
|
+
type: rubygems
|
|
32
32
|
- name: bigdecimal
|
|
33
|
-
version: '
|
|
33
|
+
version: '3.1'
|
|
34
34
|
source:
|
|
35
|
-
type:
|
|
35
|
+
type: git
|
|
36
|
+
name: ruby/gem_rbs_collection
|
|
37
|
+
revision: f1d2dae32fe8d46683fbc79bbd0f1ca391d5e11a
|
|
38
|
+
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
39
|
+
repo_dir: gems
|
|
36
40
|
- name: concurrent-ruby
|
|
37
41
|
version: '1.1'
|
|
38
42
|
source:
|
|
39
43
|
type: git
|
|
40
44
|
name: ruby/gem_rbs_collection
|
|
41
|
-
revision:
|
|
45
|
+
revision: f1d2dae32fe8d46683fbc79bbd0f1ca391d5e11a
|
|
42
46
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
43
47
|
repo_dir: gems
|
|
44
48
|
- name: connection_pool
|
|
@@ -46,14 +50,22 @@ gems:
|
|
|
46
50
|
source:
|
|
47
51
|
type: git
|
|
48
52
|
name: ruby/gem_rbs_collection
|
|
49
|
-
revision:
|
|
53
|
+
revision: f1d2dae32fe8d46683fbc79bbd0f1ca391d5e11a
|
|
50
54
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
51
55
|
repo_dir: gems
|
|
52
56
|
- name: csv
|
|
57
|
+
version: '3.3'
|
|
58
|
+
source:
|
|
59
|
+
type: git
|
|
60
|
+
name: ruby/gem_rbs_collection
|
|
61
|
+
revision: f1d2dae32fe8d46683fbc79bbd0f1ca391d5e11a
|
|
62
|
+
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
63
|
+
repo_dir: gems
|
|
64
|
+
- name: date
|
|
53
65
|
version: '0'
|
|
54
66
|
source:
|
|
55
67
|
type: stdlib
|
|
56
|
-
- name:
|
|
68
|
+
- name: digest
|
|
57
69
|
version: '0'
|
|
58
70
|
source:
|
|
59
71
|
type: stdlib
|
|
@@ -62,7 +74,7 @@ gems:
|
|
|
62
74
|
source:
|
|
63
75
|
type: stdlib
|
|
64
76
|
- name: ffi
|
|
65
|
-
version: 1.17.
|
|
77
|
+
version: 1.17.2
|
|
66
78
|
source:
|
|
67
79
|
type: rubygems
|
|
68
80
|
- name: fileutils
|
|
@@ -78,7 +90,7 @@ gems:
|
|
|
78
90
|
source:
|
|
79
91
|
type: git
|
|
80
92
|
name: ruby/gem_rbs_collection
|
|
81
|
-
revision:
|
|
93
|
+
revision: f1d2dae32fe8d46683fbc79bbd0f1ca391d5e11a
|
|
82
94
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
83
95
|
repo_dir: gems
|
|
84
96
|
- name: i18n
|
|
@@ -86,7 +98,7 @@ gems:
|
|
|
86
98
|
source:
|
|
87
99
|
type: git
|
|
88
100
|
name: ruby/gem_rbs_collection
|
|
89
|
-
revision:
|
|
101
|
+
revision: f1d2dae32fe8d46683fbc79bbd0f1ca391d5e11a
|
|
90
102
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
91
103
|
repo_dir: gems
|
|
92
104
|
- name: json
|
|
@@ -98,7 +110,7 @@ gems:
|
|
|
98
110
|
source:
|
|
99
111
|
type: git
|
|
100
112
|
name: ruby/gem_rbs_collection
|
|
101
|
-
revision:
|
|
113
|
+
revision: f1d2dae32fe8d46683fbc79bbd0f1ca391d5e11a
|
|
102
114
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
103
115
|
repo_dir: gems
|
|
104
116
|
- name: logger
|
|
@@ -106,14 +118,18 @@ gems:
|
|
|
106
118
|
source:
|
|
107
119
|
type: stdlib
|
|
108
120
|
- name: minitest
|
|
109
|
-
version: '
|
|
121
|
+
version: '5.25'
|
|
110
122
|
source:
|
|
111
|
-
type:
|
|
123
|
+
type: git
|
|
124
|
+
name: ruby/gem_rbs_collection
|
|
125
|
+
revision: f1d2dae32fe8d46683fbc79bbd0f1ca391d5e11a
|
|
126
|
+
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
127
|
+
repo_dir: gems
|
|
112
128
|
- name: monitor
|
|
113
129
|
version: '0'
|
|
114
130
|
source:
|
|
115
131
|
type: stdlib
|
|
116
|
-
- name:
|
|
132
|
+
- name: openssl
|
|
117
133
|
version: '0'
|
|
118
134
|
source:
|
|
119
135
|
type: stdlib
|
|
@@ -126,7 +142,7 @@ gems:
|
|
|
126
142
|
source:
|
|
127
143
|
type: git
|
|
128
144
|
name: ruby/gem_rbs_collection
|
|
129
|
-
revision:
|
|
145
|
+
revision: f1d2dae32fe8d46683fbc79bbd0f1ca391d5e11a
|
|
130
146
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
131
147
|
repo_dir: gems
|
|
132
148
|
- name: parser
|
|
@@ -134,15 +150,19 @@ gems:
|
|
|
134
150
|
source:
|
|
135
151
|
type: git
|
|
136
152
|
name: ruby/gem_rbs_collection
|
|
137
|
-
revision:
|
|
153
|
+
revision: f1d2dae32fe8d46683fbc79bbd0f1ca391d5e11a
|
|
138
154
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
139
155
|
repo_dir: gems
|
|
156
|
+
- name: prism
|
|
157
|
+
version: 1.6.0
|
|
158
|
+
source:
|
|
159
|
+
type: rubygems
|
|
140
160
|
- name: rainbow
|
|
141
161
|
version: '3.0'
|
|
142
162
|
source:
|
|
143
163
|
type: git
|
|
144
164
|
name: ruby/gem_rbs_collection
|
|
145
|
-
revision:
|
|
165
|
+
revision: f1d2dae32fe8d46683fbc79bbd0f1ca391d5e11a
|
|
146
166
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
147
167
|
repo_dir: gems
|
|
148
168
|
- name: rake
|
|
@@ -150,7 +170,7 @@ gems:
|
|
|
150
170
|
source:
|
|
151
171
|
type: git
|
|
152
172
|
name: ruby/gem_rbs_collection
|
|
153
|
-
revision:
|
|
173
|
+
revision: f1d2dae32fe8d46683fbc79bbd0f1ca391d5e11a
|
|
154
174
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
155
175
|
repo_dir: gems
|
|
156
176
|
- name: regexp_parser
|
|
@@ -158,7 +178,7 @@ gems:
|
|
|
158
178
|
source:
|
|
159
179
|
type: git
|
|
160
180
|
name: ruby/gem_rbs_collection
|
|
161
|
-
revision:
|
|
181
|
+
revision: f1d2dae32fe8d46683fbc79bbd0f1ca391d5e11a
|
|
162
182
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
163
183
|
repo_dir: gems
|
|
164
184
|
- name: ripper
|
|
@@ -170,15 +190,15 @@ gems:
|
|
|
170
190
|
source:
|
|
171
191
|
type: git
|
|
172
192
|
name: ruby/gem_rbs_collection
|
|
173
|
-
revision:
|
|
193
|
+
revision: f1d2dae32fe8d46683fbc79bbd0f1ca391d5e11a
|
|
174
194
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
175
195
|
repo_dir: gems
|
|
176
196
|
- name: rubocop-ast
|
|
177
|
-
version: '1.
|
|
197
|
+
version: '1.46'
|
|
178
198
|
source:
|
|
179
199
|
type: git
|
|
180
200
|
name: ruby/gem_rbs_collection
|
|
181
|
-
revision:
|
|
201
|
+
revision: f1d2dae32fe8d46683fbc79bbd0f1ca391d5e11a
|
|
182
202
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
183
203
|
repo_dir: gems
|
|
184
204
|
- name: rubyzip
|
|
@@ -186,7 +206,7 @@ gems:
|
|
|
186
206
|
source:
|
|
187
207
|
type: git
|
|
188
208
|
name: ruby/gem_rbs_collection
|
|
189
|
-
revision:
|
|
209
|
+
revision: f1d2dae32fe8d46683fbc79bbd0f1ca391d5e11a
|
|
190
210
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
191
211
|
repo_dir: gems
|
|
192
212
|
- name: securerandom
|
|
@@ -198,13 +218,21 @@ gems:
|
|
|
198
218
|
source:
|
|
199
219
|
type: git
|
|
200
220
|
name: ruby/gem_rbs_collection
|
|
201
|
-
revision:
|
|
221
|
+
revision: f1d2dae32fe8d46683fbc79bbd0f1ca391d5e11a
|
|
202
222
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
203
223
|
repo_dir: gems
|
|
204
224
|
- name: singleton
|
|
205
225
|
version: '0'
|
|
206
226
|
source:
|
|
207
227
|
type: stdlib
|
|
228
|
+
- name: socket
|
|
229
|
+
version: '0'
|
|
230
|
+
source:
|
|
231
|
+
type: stdlib
|
|
232
|
+
- name: stringio
|
|
233
|
+
version: '0'
|
|
234
|
+
source:
|
|
235
|
+
type: stdlib
|
|
208
236
|
- name: strscan
|
|
209
237
|
version: '0'
|
|
210
238
|
source:
|
|
@@ -214,7 +242,7 @@ gems:
|
|
|
214
242
|
source:
|
|
215
243
|
type: git
|
|
216
244
|
name: ruby/gem_rbs_collection
|
|
217
|
-
revision:
|
|
245
|
+
revision: f1d2dae32fe8d46683fbc79bbd0f1ca391d5e11a
|
|
218
246
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
219
247
|
repo_dir: gems
|
|
220
248
|
- name: time
|
|
@@ -230,15 +258,19 @@ gems:
|
|
|
230
258
|
source:
|
|
231
259
|
type: git
|
|
232
260
|
name: ruby/gem_rbs_collection
|
|
233
|
-
revision:
|
|
261
|
+
revision: f1d2dae32fe8d46683fbc79bbd0f1ca391d5e11a
|
|
234
262
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
235
263
|
repo_dir: gems
|
|
264
|
+
- name: uri
|
|
265
|
+
version: '0'
|
|
266
|
+
source:
|
|
267
|
+
type: stdlib
|
|
236
268
|
- name: webmock
|
|
237
269
|
version: '3.19'
|
|
238
270
|
source:
|
|
239
271
|
type: git
|
|
240
272
|
name: ruby/gem_rbs_collection
|
|
241
|
-
revision:
|
|
273
|
+
revision: f1d2dae32fe8d46683fbc79bbd0f1ca391d5e11a
|
|
242
274
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
243
275
|
repo_dir: gems
|
|
244
276
|
- name: yard
|
|
@@ -246,7 +278,7 @@ gems:
|
|
|
246
278
|
source:
|
|
247
279
|
type: git
|
|
248
280
|
name: ruby/gem_rbs_collection
|
|
249
|
-
revision:
|
|
281
|
+
revision: f1d2dae32fe8d46683fbc79bbd0f1ca391d5e11a
|
|
250
282
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
251
283
|
repo_dir: gems
|
|
252
284
|
gemfile_lock_path: Gemfile.lock
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# The Forwardable module provides delegation of specified methods to a designated object
|
|
2
|
+
module Forwardable
|
|
3
|
+
# Defines delegators for instance methods
|
|
4
|
+
def def_instance_delegators: (Symbol | String accessor, *Symbol methods) -> void
|
|
5
|
+
|
|
6
|
+
def def_instance_delegator: (Symbol | String accessor, Symbol method, ?Symbol ali) -> void
|
|
7
|
+
|
|
8
|
+
# Defines delegators for singleton methods (used with extend Forwardable)
|
|
9
|
+
def def_single_delegators: (Symbol | String accessor, *Symbol methods) -> void
|
|
10
|
+
|
|
11
|
+
def def_single_delegator: (Symbol | String accessor, Symbol method, ?Symbol ali) -> void
|
|
12
|
+
|
|
13
|
+
# Common aliases that work in both instance and singleton contexts
|
|
14
|
+
def def_delegators: (Symbol | String accessor, *Symbol methods) -> void
|
|
15
|
+
|
|
16
|
+
def def_delegator: (Symbol | String accessor, Symbol method, ?Symbol ali) -> void
|
|
17
|
+
end
|
data/sig/gems/selenium/atoms.rbs
CHANGED
|
@@ -10,7 +10,7 @@ module Selenium
|
|
|
10
10
|
|
|
11
11
|
READINESS_STATE: Hash[Symbol, String]
|
|
12
12
|
|
|
13
|
-
def initialize: (
|
|
13
|
+
def initialize: (untyped bridge) -> void
|
|
14
14
|
|
|
15
15
|
def navigate: (url: untyped, ?readiness_state: untyped?) -> untyped
|
|
16
16
|
|
|
@@ -269,6 +269,9 @@ module Selenium
|
|
|
269
269
|
UNICODE_CODE_POINT: 30
|
|
270
270
|
|
|
271
271
|
def escape_css: (untyped string) -> untyped
|
|
272
|
+
|
|
273
|
+
def self.extra_commands: () -> Hash[Symbol, Array[untyped]]
|
|
274
|
+
def self.add_command: (Symbol name, Symbol method, String url, ?untyped block) -> void
|
|
272
275
|
end
|
|
273
276
|
end
|
|
274
277
|
end
|
|
@@ -2,6 +2,16 @@ module Selenium
|
|
|
2
2
|
module WebDriver
|
|
3
3
|
class Driver
|
|
4
4
|
def capabilities: () -> untyped
|
|
5
|
+
|
|
6
|
+
def manage: () -> untyped
|
|
7
|
+
|
|
8
|
+
def navigate: () -> untyped
|
|
9
|
+
|
|
10
|
+
def find_element: (untyped how, ?untyped? what) -> untyped
|
|
11
|
+
|
|
12
|
+
def find_elements: (untyped how, ?untyped? what) -> untyped
|
|
13
|
+
|
|
14
|
+
def add_extensions: (untyped mod) -> untyped
|
|
5
15
|
end
|
|
6
16
|
end
|
|
7
17
|
end
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
module FedCM
|
|
2
|
+
class Account
|
|
3
|
+
# Keep fields loose to avoid downstream mismatches.
|
|
4
|
+
attr_reader id: untyped
|
|
5
|
+
attr_reader email: untyped
|
|
6
|
+
attr_reader name: untyped
|
|
7
|
+
attr_reader given_name: untyped
|
|
8
|
+
attr_reader picture_url: untyped
|
|
9
|
+
|
|
10
|
+
def initialize: (*untyped) -> void
|
|
11
|
+
end
|
|
12
|
+
end
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
module Selenium
|
|
2
|
+
module WebDriver
|
|
3
|
+
class LogEntry
|
|
4
|
+
# Keep attributes loose to avoid downstream mismatches; refine later if desired.
|
|
5
|
+
attr_reader level: untyped
|
|
6
|
+
attr_reader message: String
|
|
7
|
+
attr_reader timestamp: Integer
|
|
8
|
+
|
|
9
|
+
def initialize: (untyped level, String message, Integer timestamp) -> void
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
@@ -2,6 +2,12 @@ module Selenium
|
|
|
2
2
|
module WebDriver
|
|
3
3
|
module Remote
|
|
4
4
|
class Capabilities
|
|
5
|
+
def initialize: (?Hash[untyped, untyped]) -> void
|
|
6
|
+
def []: (untyped key) -> untyped
|
|
7
|
+
def []=: (untyped key, untyped value) -> untyped
|
|
8
|
+
|
|
9
|
+
# Add this:
|
|
10
|
+
def self.json_create: (Hash[untyped, untyped] value) -> Capabilities
|
|
5
11
|
end
|
|
6
12
|
end
|
|
7
13
|
end
|
data/sig/interfaces/bridge.rbs
CHANGED
|
@@ -2,4 +2,8 @@ interface _Bridge
|
|
|
2
2
|
def bridge: -> untyped
|
|
3
3
|
|
|
4
4
|
def execute: (untyped command, ?Hash[untyped, untyped] opts, ?untyped? command_hash) -> untyped
|
|
5
|
+
|
|
6
|
+
def execute_script: (String script, *untyped args) -> untyped
|
|
7
|
+
|
|
8
|
+
def execute_async_script: (String script, *untyped args) -> untyped
|
|
5
9
|
end
|
|
@@ -3,6 +3,8 @@ module Appium
|
|
|
3
3
|
module Android
|
|
4
4
|
module Device
|
|
5
5
|
module Emulator
|
|
6
|
+
include _Bridge
|
|
7
|
+
|
|
6
8
|
GSM_CALL_ACTIONS: ::Array[:call | :accept | :cancel | :hold]
|
|
7
9
|
|
|
8
10
|
GSM_VOICE_STATES: ::Array[:on | :off | :denied | :searching | :roaming | :home | :unregistered]
|
|
@@ -14,8 +16,6 @@ module Appium
|
|
|
14
16
|
POWER_AC_STATE: ::Array[:on | :off]
|
|
15
17
|
|
|
16
18
|
def self.add_methods: () -> untyped
|
|
17
|
-
|
|
18
|
-
def execute: (Symbol command, ?Hash[untyped, untyped], ?Hash[untyped, untyped]) -> untyped
|
|
19
19
|
end
|
|
20
20
|
end
|
|
21
21
|
end
|
|
@@ -2,11 +2,29 @@ module Appium
|
|
|
2
2
|
module Core
|
|
3
3
|
module Android
|
|
4
4
|
module Device
|
|
5
|
-
|
|
5
|
+
include _Bridge
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
extend Forwardable
|
|
8
8
|
|
|
9
9
|
def self.extended: (untyped _mod) -> (nil | untyped)
|
|
10
|
+
|
|
11
|
+
def open_notifications: () -> untyped
|
|
12
|
+
|
|
13
|
+
def current_activity: () -> untyped
|
|
14
|
+
|
|
15
|
+
def current_package: () -> untyped
|
|
16
|
+
|
|
17
|
+
def get_system_bars: () -> untyped
|
|
18
|
+
|
|
19
|
+
def system_bars: () -> untyped
|
|
20
|
+
|
|
21
|
+
def toggle_location_services: () -> untyped
|
|
22
|
+
|
|
23
|
+
def hide_keyboard: () -> untyped
|
|
24
|
+
|
|
25
|
+
def background_app: (Integer duration) -> untyped
|
|
26
|
+
|
|
27
|
+
def chrome_send_command: (String cmd, Hash[untyped, untyped] params) -> untyped
|
|
10
28
|
end
|
|
11
29
|
end
|
|
12
30
|
end
|
|
@@ -3,6 +3,9 @@ module Appium
|
|
|
3
3
|
class Base
|
|
4
4
|
class Capabilities < Selenium::WebDriver::Remote::Capabilities
|
|
5
5
|
def convert_key: (untyped key) -> untyped
|
|
6
|
+
|
|
7
|
+
# Inherit json_create from parent, but you can redeclare for clarity:
|
|
8
|
+
def self.json_create: (Hash[untyped, untyped] value) -> Capabilities
|
|
6
9
|
end
|
|
7
10
|
end
|
|
8
11
|
end
|
|
@@ -3,9 +3,9 @@ module Appium
|
|
|
3
3
|
class Base
|
|
4
4
|
module Device
|
|
5
5
|
module AppState
|
|
6
|
-
|
|
6
|
+
include _Bridge
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
STATUS: ::Array[:not_installed | :not_running | :running_in_background_suspended | :running_in_background | :running_in_foreground]
|
|
9
9
|
|
|
10
10
|
def app_state: (untyped app_id) -> untyped
|
|
11
11
|
end
|
|
@@ -3,13 +3,13 @@ module Appium
|
|
|
3
3
|
class Base
|
|
4
4
|
module Device
|
|
5
5
|
module DeviceLock
|
|
6
|
+
include _Bridge
|
|
7
|
+
|
|
6
8
|
def lock: (?untyped? duration) -> untyped
|
|
7
9
|
|
|
8
10
|
def device_locked?: () -> untyped
|
|
9
11
|
|
|
10
12
|
def unlock: () -> untyped
|
|
11
|
-
|
|
12
|
-
def execute: (Symbol command, ?Hash[untyped, untyped], ?Hash[untyped, untyped]) -> untyped
|
|
13
13
|
end
|
|
14
14
|
end
|
|
15
15
|
end
|
|
@@ -3,9 +3,9 @@ module Appium
|
|
|
3
3
|
class Base
|
|
4
4
|
module Device
|
|
5
5
|
module Keyboard
|
|
6
|
-
|
|
6
|
+
include _Bridge
|
|
7
7
|
|
|
8
|
-
def hide_keyboard: (?untyped? close_key
|
|
8
|
+
def hide_keyboard: (?untyped? close_key) -> untyped
|
|
9
9
|
|
|
10
10
|
def is_keyboard_shown: () -> untyped
|
|
11
11
|
end
|
|
@@ -7,12 +7,16 @@ module Appium
|
|
|
7
7
|
|
|
8
8
|
attr_reader upload_option: untyped
|
|
9
9
|
|
|
10
|
-
METHOD: ::Array[
|
|
10
|
+
METHOD: ::Array[::String]
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
type upload_method = "POST" | "PUT" | "post" | "put"
|
|
13
|
+
|
|
14
|
+
def initialize: (?remote_path: untyped?, ?user: untyped?, ?pass: untyped?, ?method: upload_method, ?file_field_name: untyped?, ?form_fields: untyped?, ?headers: untyped?, ?force_restart: untyped?) -> void
|
|
13
15
|
|
|
14
16
|
module Command
|
|
15
|
-
|
|
17
|
+
include _Bridge
|
|
18
|
+
|
|
19
|
+
def stop_recording_screen: (?remote_path: untyped?, ?user: untyped?, ?pass: untyped?, ?method: upload_method, ?file_field_name: untyped?, ?form_fields: untyped?, ?headers: untyped?) -> untyped
|
|
16
20
|
|
|
17
21
|
def stop_and_save_recording_screen: (untyped file_path) -> untyped
|
|
18
22
|
end
|
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
module Appium
|
|
2
|
-
|
|
2
|
+
# Struct for device location
|
|
3
|
+
class Location
|
|
4
|
+
attr_accessor latitude: Float | Integer | String
|
|
5
|
+
|
|
6
|
+
attr_accessor longitude: Float | Integer | String
|
|
7
|
+
|
|
8
|
+
attr_accessor altitude: Float | Integer | String
|
|
9
|
+
|
|
10
|
+
def initialize: (Float | Integer | String latitude, Float | Integer | String longitude, Float | Integer | String altitude) -> void
|
|
11
|
+
end
|
|
3
12
|
|
|
4
13
|
module Core
|
|
5
14
|
module Android
|
|
@@ -41,7 +50,7 @@ module Appium
|
|
|
41
50
|
|
|
42
51
|
attr_reader enable_idempotency_header: bool
|
|
43
52
|
|
|
44
|
-
def initialize: (Hash[Symbol,
|
|
53
|
+
def initialize: (Hash[Symbol, untyped] appium_lib_opts) -> void
|
|
45
54
|
|
|
46
55
|
private
|
|
47
56
|
|
|
@@ -79,7 +88,7 @@ module Appium
|
|
|
79
88
|
|
|
80
89
|
@custom_url: String
|
|
81
90
|
|
|
82
|
-
@caps:
|
|
91
|
+
@caps: Core::Base::Capabilities
|
|
83
92
|
|
|
84
93
|
@http_client: Core::Base::Http::Default
|
|
85
94
|
|
|
@@ -172,25 +181,25 @@ module Appium
|
|
|
172
181
|
|
|
173
182
|
extend Core::Device
|
|
174
183
|
|
|
175
|
-
def get_caps: (Hash[Symbol,
|
|
176
|
-
-> Core::Base::Capabilities
|
|
184
|
+
def get_caps: (Hash[Symbol, untyped]? opts) -> Core::Base::Capabilities
|
|
177
185
|
|
|
178
|
-
def get_appium_lib_opts: (Hash[Symbol,
|
|
179
|
-
-> (Symbol | String | Hash[Symbol, String | Numeric] | Numeric)
|
|
186
|
+
def get_appium_lib_opts: (Hash[Symbol, untyped]? opts) -> Hash[Symbol, untyped]
|
|
180
187
|
|
|
181
188
|
def get_app: () -> String?
|
|
182
189
|
|
|
183
190
|
def set_app_path: () -> String?
|
|
184
191
|
|
|
185
192
|
def set_appium_lib_specific_values: (
|
|
186
|
-
Hash[Symbol, String] appium_lib_opts
|
|
193
|
+
Hash[Symbol, String | Numeric] appium_lib_opts
|
|
187
194
|
) -> bool
|
|
188
195
|
|
|
189
|
-
def set_appium_device: () -> Symbol
|
|
196
|
+
def set_appium_device: () -> Symbol?
|
|
190
197
|
|
|
191
198
|
def set_automation_name: () -> Symbol?
|
|
192
199
|
|
|
193
|
-
def
|
|
200
|
+
def get_cap: (String | Symbol name) -> untyped
|
|
201
|
+
|
|
202
|
+
def convert_downcase: (String | Symbol value) -> Symbol
|
|
194
203
|
end
|
|
195
204
|
end
|
|
196
205
|
end
|
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
module Appium
|
|
2
2
|
module Core
|
|
3
|
+
# Element class inheriting from Selenium::WebDriver::Element
|
|
3
4
|
class Element < ::Selenium::WebDriver::Element
|
|
4
5
|
include ::Appium::Core::Base::TakesScreenshot
|
|
5
6
|
|
|
6
|
-
|
|
7
|
+
def initialize: (untyped bridge, untyped id) -> void
|
|
8
|
+
|
|
9
|
+
attr_reader id: Array[untyped]
|
|
7
10
|
|
|
8
11
|
def method_missing: (untyped method_name, *untyped args) { (?) -> untyped } -> (nil | untyped)
|
|
9
12
|
|
|
10
|
-
def respond_to_missing?: (
|
|
13
|
+
def respond_to_missing?: (untyped _method_name, bool _include_private) -> true
|
|
11
14
|
|
|
12
15
|
# Alias for type
|
|
13
16
|
alias type send_keys
|
|
@@ -4,9 +4,11 @@ module Appium
|
|
|
4
4
|
module Xcuitest
|
|
5
5
|
module Device
|
|
6
6
|
module Battery
|
|
7
|
+
include _Bridge
|
|
8
|
+
|
|
7
9
|
def self.add_methods: () -> (Symbol | Hash[Symbol, Proc])?
|
|
8
10
|
|
|
9
|
-
def battery_info: () ->
|
|
11
|
+
def battery_info: () -> ::Hash[::Symbol, ::Symbol]
|
|
10
12
|
end
|
|
11
13
|
end
|
|
12
14
|
end
|
data/sig/lib/appium_lib_core.rbs
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: appium_lib_core
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 11.
|
|
4
|
+
version: 11.2.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Kazuaki MATSUO
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2025-
|
|
11
|
+
date: 2025-11-17 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: faye-websocket
|
|
@@ -139,6 +139,7 @@ files:
|
|
|
139
139
|
- rbs_collection.yaml
|
|
140
140
|
- sig/gems/em.rbs
|
|
141
141
|
- sig/gems/faye.rbs
|
|
142
|
+
- sig/gems/forwardable.rbs
|
|
142
143
|
- sig/gems/selenium/abstract_event_listener.rbs
|
|
143
144
|
- sig/gems/selenium/atoms.rbs
|
|
144
145
|
- sig/gems/selenium/bidi/browsing_context.rbs
|
|
@@ -154,6 +155,7 @@ files:
|
|
|
154
155
|
- sig/gems/selenium/edge/features.rbs
|
|
155
156
|
- sig/gems/selenium/error.rbs
|
|
156
157
|
- sig/gems/selenium/event_firing_bridge.rbs
|
|
158
|
+
- sig/gems/selenium/fedcm.rbs
|
|
157
159
|
- sig/gems/selenium/firefox/driver.rbs
|
|
158
160
|
- sig/gems/selenium/firefox/extension.rbs
|
|
159
161
|
- sig/gems/selenium/firefox/features.rbs
|
|
@@ -171,6 +173,7 @@ files:
|
|
|
171
173
|
- sig/gems/selenium/interfaces/driver.rbs
|
|
172
174
|
- sig/gems/selenium/interfaces/features.rbs
|
|
173
175
|
- sig/gems/selenium/local_driver.rbs
|
|
176
|
+
- sig/gems/selenium/log_entry.rbs
|
|
174
177
|
- sig/gems/selenium/platform.rbs
|
|
175
178
|
- sig/gems/selenium/profile_helper.rbs
|
|
176
179
|
- sig/gems/selenium/remote/bridge/commands.rbs
|
|
@@ -187,7 +190,6 @@ files:
|
|
|
187
190
|
- sig/lib/appium_lib_core/android/device/auth_finger_print.rbs
|
|
188
191
|
- sig/lib/appium_lib_core/android/device/clipboard.rbs
|
|
189
192
|
- sig/lib/appium_lib_core/android/device/emulator.rbs
|
|
190
|
-
- sig/lib/appium_lib_core/android/device/network.rbs
|
|
191
193
|
- sig/lib/appium_lib_core/android/device/performance.rbs
|
|
192
194
|
- sig/lib/appium_lib_core/android/device/screen.rbs
|
|
193
195
|
- sig/lib/appium_lib_core/android/espresso/bridge.rbs
|
|
@@ -233,8 +235,8 @@ files:
|
|
|
233
235
|
- sig/lib/appium_lib_core/device.rbs
|
|
234
236
|
- sig/lib/appium_lib_core/driver.rbs
|
|
235
237
|
- sig/lib/appium_lib_core/element.rbs
|
|
236
|
-
- sig/lib/appium_lib_core/ios/clipboard.rbs
|
|
237
238
|
- sig/lib/appium_lib_core/ios/device.rbs
|
|
239
|
+
- sig/lib/appium_lib_core/ios/device/clipboard.rbs
|
|
238
240
|
- sig/lib/appium_lib_core/ios/xcuitest/bridge.rbs
|
|
239
241
|
- sig/lib/appium_lib_core/ios/xcuitest/device.rbs
|
|
240
242
|
- sig/lib/appium_lib_core/ios/xcuitest/device/battery.rbs
|