selenium-webdriver 4.0.3 → 4.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGES +13 -0
- data/lib/selenium/webdriver/chrome/options.rb +1 -1
- data/lib/selenium/webdriver/common/zipper.rb +3 -1
- data/lib/selenium/webdriver/devtools.rb +12 -1
- data/lib/selenium/webdriver/firefox/options.rb +1 -1
- data/lib/selenium/webdriver/ie/options.rb +2 -2
- data/lib/selenium/webdriver/remote/bridge.rb +3 -0
- data/lib/selenium/webdriver/remote.rb +6 -5
- data/lib/selenium/webdriver/version.rb +1 -1
- data/lib/selenium/webdriver.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 40e4bef1fdee7ae817c56466ec231be400d677d56a8c8f46b797c6b3eba28de9
|
4
|
+
data.tar.gz: a9c1af31f12db6096f06c2a89e487e40ea2bb53b8f6e46e5f77a3046f149bb34
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b5325d0fe9f5fdb721ed4a6daa1384d7876dc7a072dd52f46c73d76b1614434c123fff2b4a9d7de01538968eddfbad57f2e1a87f4dce0e560a850dcf21988840
|
7
|
+
data.tar.gz: 3b345ac66d051c32267d1c4ef9b2dd70aea36e2c4e5bb35ce30197d748effca8fed460824d1961ad5a39340358fc9be3f200708a38557e5e878b09be1b0d61c0
|
data/CHANGES
CHANGED
@@ -1,3 +1,16 @@
|
|
1
|
+
4.1.0 (2021-11-18)
|
2
|
+
=========================
|
3
|
+
|
4
|
+
DevTools:
|
5
|
+
* Released selenium-devtools 0.95.0 (supports CDP v85, v93, v94, v95)
|
6
|
+
* Released selenium-devtools 0.96.0 (supports CDP v85, v94, v95, v96)
|
7
|
+
* Added support for secure websockets (#10017)
|
8
|
+
|
9
|
+
Ruby:
|
10
|
+
* Execute Script supports ShadowRoots (#10019)
|
11
|
+
* Fixed bug preventing zipping temp files on Windows (#9987)
|
12
|
+
* Sang Pumpkin Carol (thanks Jari!)
|
13
|
+
|
1
14
|
4.0.3 (2021-10-20)
|
2
15
|
=========================
|
3
16
|
|
@@ -50,7 +50,7 @@ module Selenium
|
|
50
50
|
#
|
51
51
|
# @example
|
52
52
|
# options = Selenium::WebDriver::Chrome::Options.new(args: ['start-maximized', 'user-data-dir=/tmp/temp_profile'])
|
53
|
-
# driver = Selenium::WebDriver.for(:chrome,
|
53
|
+
# driver = Selenium::WebDriver.for(:chrome, capabilities: options)
|
54
54
|
#
|
55
55
|
# @param [Profile] :profile An instance of a Chrome::Profile Class
|
56
56
|
# @param [Array] :encoded_extensions List of extensions that do not need to be Base64 encoded
|
@@ -72,7 +72,9 @@ module Selenium
|
|
72
72
|
private
|
73
73
|
|
74
74
|
def with_tmp_zip(&blk)
|
75
|
-
Tempfile
|
75
|
+
# Don't use Tempfile since it lacks rb_file_s_rename permission on Windows.
|
76
|
+
Dir.mktmpdir do |tmp_dir|
|
77
|
+
zip_path = File.join(tmp_dir, 'webdriver-zip')
|
76
78
|
Zip::File.open(zip_path, Zip::File::CREATE, &blk)
|
77
79
|
end
|
78
80
|
end
|
@@ -161,7 +161,18 @@ module Selenium
|
|
161
161
|
end
|
162
162
|
|
163
163
|
def socket
|
164
|
-
@socket ||=
|
164
|
+
@socket ||= begin
|
165
|
+
if URI(@url).scheme == 'wss'
|
166
|
+
socket = TCPSocket.new(ws.host, ws.port)
|
167
|
+
socket = OpenSSL::SSL::SSLSocket.new(socket, OpenSSL::SSL::SSLContext.new)
|
168
|
+
socket.sync_close = true
|
169
|
+
socket.connect
|
170
|
+
|
171
|
+
socket
|
172
|
+
else
|
173
|
+
TCPSocket.new(ws.host, ws.port)
|
174
|
+
end
|
175
|
+
end
|
165
176
|
end
|
166
177
|
|
167
178
|
def ws
|
@@ -44,7 +44,7 @@ module Selenium
|
|
44
44
|
#
|
45
45
|
# @example
|
46
46
|
# options = Selenium::WebDriver::Firefox::Options.new(args: ['--host=127.0.0.1'])
|
47
|
-
# driver = Selenium::WebDriver.for :firefox,
|
47
|
+
# driver = Selenium::WebDriver.for :firefox, capabilities: options
|
48
48
|
#
|
49
49
|
# @param [Hash] opts the pre-defined options to create the Firefox::Options with
|
50
50
|
# @option opts [String] :binary Path to the Firefox executable to use
|
@@ -52,12 +52,12 @@ module Selenium
|
|
52
52
|
#
|
53
53
|
# @example
|
54
54
|
# options = Selenium::WebDriver::IE::Options.new(args: ['--host=127.0.0.1'])
|
55
|
-
# driver = Selenium::WebDriver.for(:ie,
|
55
|
+
# driver = Selenium::WebDriver.for(:ie, capabilities: options)
|
56
56
|
#
|
57
57
|
# @example
|
58
58
|
# options = Selenium::WebDriver::IE::Options.new
|
59
59
|
# options.element_scroll_behavior = Selenium::WebDriver::IE::Options::SCROLL_BOTTOM
|
60
|
-
# driver = Selenium::WebDriver.for(:ie,
|
60
|
+
# driver = Selenium::WebDriver.for(:ie, capabilities: options)
|
61
61
|
#
|
62
62
|
# @param [Hash] opts the pre-defined options
|
63
63
|
# @option opts [Array<String>] args
|
@@ -604,6 +604,9 @@ module Selenium
|
|
604
604
|
element_id = element_id_from(arg)
|
605
605
|
return Element.new(self, element_id) if element_id
|
606
606
|
|
607
|
+
shadow_root_id = shadow_root_id_from(arg)
|
608
|
+
return ShadowRoot.new self, shadow_root_id if shadow_root_id
|
609
|
+
|
607
610
|
arg.each { |k, v| arg[k] = unwrap_script_result(v) }
|
608
611
|
else
|
609
612
|
arg
|
@@ -23,13 +23,14 @@ require 'selenium/webdriver/remote/server_error'
|
|
23
23
|
module Selenium
|
24
24
|
module WebDriver
|
25
25
|
module Remote
|
26
|
-
autoload :Bridge,
|
27
|
-
autoload :Driver,
|
28
|
-
autoload :Response,
|
26
|
+
autoload :Bridge, 'selenium/webdriver/remote/bridge'
|
27
|
+
autoload :Driver, 'selenium/webdriver/remote/driver'
|
28
|
+
autoload :Response, 'selenium/webdriver/remote/response'
|
29
29
|
autoload :Capabilities, 'selenium/webdriver/remote/capabilities'
|
30
|
-
autoload :COMMANDS,
|
30
|
+
autoload :COMMANDS, 'selenium/webdriver/remote/commands'
|
31
|
+
|
31
32
|
module Http
|
32
|
-
autoload :Common,
|
33
|
+
autoload :Common, 'selenium/webdriver/remote/http/common'
|
33
34
|
autoload :Default, 'selenium/webdriver/remote/http/default'
|
34
35
|
end
|
35
36
|
end
|
data/lib/selenium/webdriver.rb
CHANGED
@@ -75,7 +75,7 @@ module Selenium
|
|
75
75
|
#
|
76
76
|
# WebDriver.for :firefox, profile: 'some-profile'
|
77
77
|
# WebDriver.for :firefox, profile: Profile.new
|
78
|
-
# WebDriver.for :remote, url: "http://localhost:4444/wd/hub",
|
78
|
+
# WebDriver.for :remote, url: "http://localhost:4444/wd/hub", capabilities: caps
|
79
79
|
#
|
80
80
|
# One special argument is not passed on to the bridges, :listener.
|
81
81
|
# You can pass a listener for this option to get notified of WebDriver events.
|
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
|
4
|
+
version: 4.1.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: 2021-
|
13
|
+
date: 2021-11-22 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: childprocess
|