selenium-webdriver 4.0.0.rc1 → 4.0.0.rc2
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/CHANGES +33 -0
- data/lib/selenium/webdriver/atoms/getAttribute.js +25 -25
- data/lib/selenium/webdriver/chrome/driver.rb +3 -0
- data/lib/selenium/webdriver/chrome/features.rb +44 -4
- data/lib/selenium/webdriver/chrome/options.rb +24 -1
- data/lib/selenium/webdriver/common/driver.rb +2 -0
- data/lib/selenium/webdriver/common/driver_extensions/has_apple_permissions.rb +51 -0
- data/lib/selenium/webdriver/common/driver_extensions/has_casting.rb +77 -0
- data/lib/selenium/webdriver/common/driver_extensions/has_context.rb +45 -0
- data/lib/selenium/webdriver/common/driver_extensions/has_launching.rb +38 -0
- data/lib/selenium/webdriver/common/driver_extensions/has_network_conditions.rb +8 -0
- data/lib/selenium/webdriver/common/driver_extensions/has_network_interception.rb +87 -18
- data/lib/selenium/webdriver/common/driver_extensions/has_permissions.rb +11 -11
- data/lib/selenium/webdriver/common/driver_extensions/prints_page.rb +1 -1
- data/lib/selenium/webdriver/common/log_entry.rb +2 -2
- data/lib/selenium/webdriver/common/manager.rb +3 -13
- data/lib/selenium/webdriver/common/options.rb +13 -5
- data/lib/selenium/webdriver/common/target_locator.rb +28 -0
- data/lib/selenium/webdriver/common/window.rb +0 -4
- data/lib/selenium/webdriver/common.rb +4 -0
- data/lib/selenium/webdriver/devtools/request.rb +27 -17
- data/lib/selenium/webdriver/devtools/response.rb +66 -0
- data/lib/selenium/webdriver/devtools.rb +49 -12
- data/lib/selenium/webdriver/edge/features.rb +5 -0
- data/lib/selenium/webdriver/firefox/driver.rb +5 -0
- data/lib/selenium/webdriver/firefox/features.rb +14 -0
- data/lib/selenium/webdriver/firefox/options.rb +24 -1
- data/lib/selenium/webdriver/firefox.rb +0 -1
- data/lib/selenium/webdriver/remote/bridge.rb +1 -1
- data/lib/selenium/webdriver/remote/capabilities.rb +1 -0
- data/lib/selenium/webdriver/remote/driver.rb +2 -1
- data/lib/selenium/webdriver/safari/driver.rb +1 -1
- data/lib/selenium/webdriver/safari/options.rb +7 -0
- data/lib/selenium/webdriver/version.rb +1 -1
- data/lib/selenium/webdriver.rb +1 -0
- metadata +7 -2
@@ -29,7 +29,11 @@ module Selenium
|
|
29
29
|
CAPABILITIES = {binary: 'binary',
|
30
30
|
args: 'args',
|
31
31
|
log: 'log',
|
32
|
-
prefs: 'prefs'
|
32
|
+
prefs: 'prefs',
|
33
|
+
android_package: 'androidPackage',
|
34
|
+
android_activity: 'androidActivity',
|
35
|
+
android_device_serial: 'androidDeviceSerial',
|
36
|
+
android_intent_arguments: 'androidIntentArguments'}.freeze
|
33
37
|
BROWSER = 'firefox'
|
34
38
|
|
35
39
|
# NOTE: special handling of 'profile' to validate when set instead of when used
|
@@ -131,6 +135,25 @@ module Selenium
|
|
131
135
|
@options[:log] = {level: level}
|
132
136
|
end
|
133
137
|
|
138
|
+
#
|
139
|
+
# Enables mobile browser use on Android.
|
140
|
+
#
|
141
|
+
# @see https://developer.mozilla.org/en-US/docs/Web/WebDriver/Capabilities/firefoxOptions#android
|
142
|
+
#
|
143
|
+
# @param [String] package The package name of the Chrome or WebView app.
|
144
|
+
# @param [String] serial_number The serial number of the device on which to launch the application.
|
145
|
+
# If not specified and multiple devices are attached, an error will be returned.
|
146
|
+
# @param [String] activity The fully qualified class name of the activity to be launched.
|
147
|
+
# @param [Array] intent_arguments Arguments to launch the intent with.
|
148
|
+
#
|
149
|
+
|
150
|
+
def enable_android(package: 'org.mozilla.firefox', serial_number: nil, activity: nil, intent_arguments: nil)
|
151
|
+
@options[:android_package] = package
|
152
|
+
@options[:android_activity] = activity unless activity.nil?
|
153
|
+
@options[:android_device_serial] = serial_number unless serial_number.nil?
|
154
|
+
@options[:android_intent_arguments] = intent_arguments unless intent_arguments.nil?
|
155
|
+
end
|
156
|
+
|
134
157
|
private
|
135
158
|
|
136
159
|
def process_browser_options(browser_options)
|
@@ -33,7 +33,6 @@ module Selenium
|
|
33
33
|
autoload :Service, 'selenium/webdriver/firefox/service'
|
34
34
|
|
35
35
|
DEFAULT_PORT = 7055
|
36
|
-
DEFAULT_ENABLE_NATIVE_EVENTS = Platform.os == :windows
|
37
36
|
DEFAULT_SECURE_SSL = false
|
38
37
|
DEFAULT_ASSUME_UNTRUSTED_ISSUER = true
|
39
38
|
DEFAULT_LOAD_NO_FOCUS_LIB = false
|
@@ -52,7 +52,8 @@ module Selenium
|
|
52
52
|
end
|
53
53
|
|
54
54
|
def devtools_version
|
55
|
-
capabilities['se:cdpVersion']
|
55
|
+
capabilities['se:cdpVersion']&.split('.')&.first ||
|
56
|
+
raise(Error::WebDriverError, "DevTools is not supported by the Remote Server")
|
56
57
|
end
|
57
58
|
end # Driver
|
58
59
|
end # Remote
|
@@ -28,6 +28,13 @@ module Selenium
|
|
28
28
|
automatic_profiling: 'safari:automaticProfiling'}.freeze
|
29
29
|
BROWSER = 'safari'
|
30
30
|
|
31
|
+
def add_option(name, value = nil)
|
32
|
+
key = name.is_a?(Hash) ? name.keys.first : name
|
33
|
+
raise ArgumentError, 'Safari does not support options that are not namespaced' unless key.to_s.include?(':')
|
34
|
+
|
35
|
+
super
|
36
|
+
end
|
37
|
+
|
31
38
|
end # Options
|
32
39
|
end # Safari
|
33
40
|
end # WebDriver
|
data/lib/selenium/webdriver.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: selenium-webdriver
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.0.0.
|
4
|
+
version: 4.0.0.rc2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alex Rodionov
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2021-09-
|
13
|
+
date: 2021-09-30 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: childprocess
|
@@ -252,10 +252,14 @@ files:
|
|
252
252
|
- lib/selenium/webdriver/common/driver_extensions/downloads_files.rb
|
253
253
|
- lib/selenium/webdriver/common/driver_extensions/full_page_screenshot.rb
|
254
254
|
- lib/selenium/webdriver/common/driver_extensions/has_addons.rb
|
255
|
+
- lib/selenium/webdriver/common/driver_extensions/has_apple_permissions.rb
|
255
256
|
- lib/selenium/webdriver/common/driver_extensions/has_authentication.rb
|
257
|
+
- lib/selenium/webdriver/common/driver_extensions/has_casting.rb
|
256
258
|
- lib/selenium/webdriver/common/driver_extensions/has_cdp.rb
|
259
|
+
- lib/selenium/webdriver/common/driver_extensions/has_context.rb
|
257
260
|
- lib/selenium/webdriver/common/driver_extensions/has_debugger.rb
|
258
261
|
- lib/selenium/webdriver/common/driver_extensions/has_devtools.rb
|
262
|
+
- lib/selenium/webdriver/common/driver_extensions/has_launching.rb
|
259
263
|
- lib/selenium/webdriver/common/driver_extensions/has_location.rb
|
260
264
|
- lib/selenium/webdriver/common/driver_extensions/has_log_events.rb
|
261
265
|
- lib/selenium/webdriver/common/driver_extensions/has_logs.rb
|
@@ -312,6 +316,7 @@ files:
|
|
312
316
|
- lib/selenium/webdriver/devtools/mutation_event.rb
|
313
317
|
- lib/selenium/webdriver/devtools/pinned_script.rb
|
314
318
|
- lib/selenium/webdriver/devtools/request.rb
|
319
|
+
- lib/selenium/webdriver/devtools/response.rb
|
315
320
|
- lib/selenium/webdriver/edge.rb
|
316
321
|
- lib/selenium/webdriver/edge/driver.rb
|
317
322
|
- lib/selenium/webdriver/edge/features.rb
|