selenium-webdriver 4.4.0 → 4.5.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/CHANGES +21 -1
- data/lib/selenium/server.rb +14 -8
- data/lib/selenium/webdriver/chrome/driver.rb +1 -0
- data/lib/selenium/webdriver/common/element.rb +1 -1
- data/lib/selenium/webdriver/common/platform.rb +0 -1
- data/lib/selenium/webdriver/firefox/features.rb +5 -1
- data/lib/selenium/webdriver/firefox/options.rb +2 -1
- data/lib/selenium/webdriver/support/select.rb +6 -1
- data/lib/selenium/webdriver/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d753308296c6105d6bdbe84f0bbff8f61064fcf44c40694fbe9c4d8758ff7d21
|
4
|
+
data.tar.gz: 6b277eedd4f26e9baf17b95a7034b7940f4c41c041ba646edda4247c7edaf57c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 42dbe1ef868e3be3fddac2add30d0b8bf17a6ae2febff15a6e3d0ce79c3f46122d9e3616a1e1e8e370744e008c4c06ad531b382410753ab6daa3d147c66a8552
|
7
|
+
data.tar.gz: 8e841646f3a38364c55fb5020e0eb30a9076f3fb5ace99e42175f9f07d1634c59ad52dcf84d01530fbc43282d5e7b48fc9058edc905d0eac10cf98babb2ed029
|
data/CHANGES
CHANGED
@@ -1,4 +1,24 @@
|
|
1
|
-
4.
|
1
|
+
4.5.0 (Unreleased)
|
2
|
+
=========================
|
3
|
+
|
4
|
+
BiDi:
|
5
|
+
* Released selenium-devtools 0.105.0 (supports CDP v85, v103, v104, v105)
|
6
|
+
* Released selenium-devtools 0.106.0 (supports CDP v85, v104, v105, v106)
|
7
|
+
* Add HasBiDi support to Chrome
|
8
|
+
|
9
|
+
Ruby:
|
10
|
+
* Fix bug in Platform code
|
11
|
+
* Update Select class to error when elements are disabled (#10812)
|
12
|
+
|
13
|
+
Firefox:
|
14
|
+
* Add support for installing unsigned add-ons (#10265, thanks TamsilAmani!)
|
15
|
+
* Change accept_insecure_certificates to true by default (to match other bindings)
|
16
|
+
* Set debugger_address option to true by default
|
17
|
+
|
18
|
+
Server:
|
19
|
+
* Add support for initializing server class with arguments and log level
|
20
|
+
|
21
|
+
4.4.0 (2022-08-09)
|
2
22
|
=========================
|
3
23
|
|
4
24
|
BiDi:
|
data/lib/selenium/server.rb
CHANGED
@@ -182,15 +182,21 @@ module Selenium
|
|
182
182
|
def initialize(jar, opts = {})
|
183
183
|
raise Errno::ENOENT, jar unless File.exist?(jar)
|
184
184
|
|
185
|
-
@jar
|
186
|
-
@host
|
187
|
-
@role
|
188
|
-
@port
|
189
|
-
@timeout
|
185
|
+
@jar = jar
|
186
|
+
@host = '127.0.0.1'
|
187
|
+
@role = opts.fetch(:role, 'standalone')
|
188
|
+
@port = opts.fetch(:port, 4444)
|
189
|
+
@timeout = opts.fetch(:timeout, 30)
|
190
190
|
@background = opts.fetch(:background, false)
|
191
|
-
@
|
192
|
-
@
|
193
|
-
|
191
|
+
@additional_args = opts.fetch(:args, [])
|
192
|
+
@log = opts[:log]
|
193
|
+
if opts[:log_level]
|
194
|
+
@log ||= true
|
195
|
+
@additional_args << '--log-level'
|
196
|
+
@additional_args << opts[:log_level].to_s
|
197
|
+
end
|
198
|
+
|
199
|
+
@log_file = nil
|
194
200
|
end
|
195
201
|
|
196
202
|
def start
|
@@ -101,7 +101,7 @@ module Selenium
|
|
101
101
|
# if it exists. If it does not, then the value of the attribute with the given name is returned.
|
102
102
|
# If neither exists, null is returned.
|
103
103
|
#
|
104
|
-
# The "style" attribute is converted as best can be to a text representation with a trailing
|
104
|
+
# The "style" attribute is converted as best can be to a text representation with a trailing semicolon.
|
105
105
|
#
|
106
106
|
# The following are deemed to be "boolean" attributes, and will return either "true" or "false":
|
107
107
|
#
|
@@ -35,7 +35,11 @@ module Selenium
|
|
35
35
|
end
|
36
36
|
|
37
37
|
def install_addon(path, temporary)
|
38
|
-
addon = File.
|
38
|
+
addon = if File.directory?(path)
|
39
|
+
Zipper.zip(path)
|
40
|
+
else
|
41
|
+
File.open(path, 'rb') { |crx_file| Base64.strict_encode64 crx_file.read }
|
42
|
+
end
|
39
43
|
|
40
44
|
payload = {addon: addon}
|
41
45
|
payload[:temporary] = temporary unless temporary.nil?
|
@@ -57,7 +57,8 @@ module Selenium
|
|
57
57
|
#
|
58
58
|
|
59
59
|
def initialize(log_level: nil, **opts)
|
60
|
-
@debugger_address = opts.delete(:debugger_address)
|
60
|
+
@debugger_address = opts.delete(:debugger_address) { true }
|
61
|
+
opts[:accept_insecure_certs] = true unless opts.key?(:accept_insecure_certs)
|
61
62
|
|
62
63
|
super(**opts)
|
63
64
|
|
@@ -26,8 +26,11 @@ module Selenium
|
|
26
26
|
#
|
27
27
|
|
28
28
|
def initialize(element)
|
29
|
-
|
29
|
+
unless element.enabled?
|
30
|
+
raise Error::UnsupportedOperationError, 'Select element is disabled and may not be used.'
|
31
|
+
end
|
30
32
|
|
33
|
+
tag_name = element.tag_name
|
31
34
|
raise ArgumentError, "unexpected tag name #{tag_name.inspect}" unless tag_name.casecmp('select').zero?
|
32
35
|
|
33
36
|
@element = element
|
@@ -215,6 +218,8 @@ module Selenium
|
|
215
218
|
end
|
216
219
|
|
217
220
|
def select_option(option)
|
221
|
+
raise Error::UnsupportedOperationError, 'You may not select a disabled option' unless option.enabled?
|
222
|
+
|
218
223
|
option.click unless option.selected?
|
219
224
|
end
|
220
225
|
|
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.
|
4
|
+
version: 4.5.0
|
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: 2022-
|
13
|
+
date: 2022-09-28 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: childprocess
|
@@ -445,7 +445,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
445
445
|
- !ruby/object:Gem::Version
|
446
446
|
version: 1.3.1
|
447
447
|
requirements: []
|
448
|
-
rubygems_version: 3.0.3
|
448
|
+
rubygems_version: 3.0.3
|
449
449
|
signing_key:
|
450
450
|
specification_version: 4
|
451
451
|
summary: Selenium is a browser automation tool for automated testing of webapps and
|