selenium-webdriver 3.13.1 → 3.14.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGES +16 -0
- data/lib/selenium/server.rb +4 -2
- data/lib/selenium/webdriver/common/error.rb +2 -1
- data/lib/selenium/webdriver/common/interactions/pointer_actions.rb +12 -4
- data/lib/selenium/webdriver/remote/oss/bridge.rb +6 -2
- data/lib/selenium/webdriver/remote/w3c/bridge.rb +6 -2
- data/lib/selenium/webdriver/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 99fb61ab3a7bfa09aaacd069e7d46ea2e5f1cf1b
|
4
|
+
data.tar.gz: cf166a2f78d4aeffdbe569646f039a2c24482388
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ba21477cc153e278d022992de88e2d7d8cd9bea097f2bb10be903a78275455a5ac67dd402007702a903436abf46178c022c5790e102e872cc70a1ead1804e674
|
7
|
+
data.tar.gz: 8cbfcc76c933a6f5b085765ecc1bc2b10ea800a1b4e9b24dcd6baf14cf6ab1f337a147c6c22e4b96331310f0fad6382fe9965daf5cc8e1a06c33d8bc874344f9
|
data/CHANGES
CHANGED
@@ -1,3 +1,19 @@
|
|
1
|
+
3.14.0 (2018-08-03)
|
2
|
+
===================
|
3
|
+
|
4
|
+
Ruby:
|
5
|
+
* Allow to customize default duration of movement of pointer actions using
|
6
|
+
Driver#action#default_move_duration= (thanks @prakharrr)
|
7
|
+
* Fixed an accidentally removed Selenium::WebDriver::Error::TimeoutError (thanks @twalpole)
|
8
|
+
|
9
|
+
Server:
|
10
|
+
* Fixed an issue when Server.latest couldn't parse the version
|
11
|
+
|
12
|
+
Remote:
|
13
|
+
* Added support for uploading multiple files by passing them as a string
|
14
|
+
separated by \n to Element#send_keys. Please, note that not all the drivers
|
15
|
+
have multiple file upload implemented (tested to work in ChromeDriver).
|
16
|
+
|
1
17
|
3.13.1 (2018-07-20)
|
2
18
|
===================
|
3
19
|
|
data/lib/selenium/server.rb
CHANGED
@@ -112,9 +112,11 @@ module Selenium
|
|
112
112
|
def latest
|
113
113
|
require 'rexml/document'
|
114
114
|
net_http.start('selenium-release.storage.googleapis.com') do |http|
|
115
|
-
REXML::Document.new(http.get('/').body).root.get_elements('//Contents/Key').map do |e|
|
115
|
+
versions = REXML::Document.new(http.get('/').body).root.get_elements('//Contents/Key').map do |e|
|
116
116
|
e.text[/selenium-server-standalone-(\d+\.\d+\.\d+)\.jar/, 1]
|
117
|
-
end
|
117
|
+
end
|
118
|
+
|
119
|
+
versions.compact.map { |version| Gem::Version.new(version) }.max.version
|
118
120
|
end
|
119
121
|
end
|
120
122
|
|
@@ -32,7 +32,7 @@ module Selenium
|
|
32
32
|
ERRORS.fetch(code)
|
33
33
|
when String
|
34
34
|
klass_name = code.split(' ').map(&:capitalize).join.sub(/Error$/, '')
|
35
|
-
const_get("#{klass_name}Error")
|
35
|
+
const_get("#{klass_name}Error", false)
|
36
36
|
end
|
37
37
|
rescue KeyError, NameError
|
38
38
|
WebDriverError
|
@@ -264,6 +264,7 @@ module Selenium
|
|
264
264
|
|
265
265
|
# Aliases for OSS dialect.
|
266
266
|
ScriptTimeoutError = ScriptTimeOutError
|
267
|
+
TimeoutError = TimeOutError
|
267
268
|
NoAlertOpenError = NoAlertPresentError
|
268
269
|
|
269
270
|
# Aliases for backwards compatibility.
|
@@ -18,7 +18,15 @@
|
|
18
18
|
module Selenium
|
19
19
|
module WebDriver
|
20
20
|
module PointerActions
|
21
|
-
|
21
|
+
attr_writer :default_move_duration
|
22
|
+
|
23
|
+
#
|
24
|
+
# The overridable duration for movement used by methods in this module
|
25
|
+
#
|
26
|
+
|
27
|
+
def default_move_duration
|
28
|
+
@default_move_duration ||= 0.25 # 250 milliseconds
|
29
|
+
end
|
22
30
|
|
23
31
|
#
|
24
32
|
# Presses (without releasing) at the current location of the PointerInput device. This is equivalent to:
|
@@ -98,7 +106,7 @@ module Selenium
|
|
98
106
|
left = 0
|
99
107
|
top = 0
|
100
108
|
end
|
101
|
-
pointer.create_pointer_move(duration:
|
109
|
+
pointer.create_pointer_move(duration: default_move_duration,
|
102
110
|
x: left,
|
103
111
|
y: top,
|
104
112
|
element: element)
|
@@ -125,7 +133,7 @@ module Selenium
|
|
125
133
|
|
126
134
|
def move_by(right_by, down_by, device: nil)
|
127
135
|
pointer = get_pointer(device)
|
128
|
-
pointer.create_pointer_move(duration:
|
136
|
+
pointer.create_pointer_move(duration: default_move_duration,
|
129
137
|
x: Integer(right_by),
|
130
138
|
y: Integer(down_by),
|
131
139
|
origin: Interactions::PointerMove::POINTER)
|
@@ -152,7 +160,7 @@ module Selenium
|
|
152
160
|
|
153
161
|
def move_to_location(x, y, device: nil)
|
154
162
|
pointer = get_pointer(device)
|
155
|
-
pointer.create_pointer_move(duration:
|
163
|
+
pointer.create_pointer_move(duration: default_move_duration,
|
156
164
|
x: Integer(x),
|
157
165
|
y: Integer(y),
|
158
166
|
origin: Interactions::PointerMove::VIEWPORT)
|
@@ -362,9 +362,13 @@ module Selenium
|
|
362
362
|
end
|
363
363
|
|
364
364
|
def send_keys_to_element(element, keys)
|
365
|
+
# TODO: rework file detectors before Selenium 4.0
|
365
366
|
if @file_detector
|
366
|
-
|
367
|
-
|
367
|
+
local_files = keys.first.split("\n").map { |key| @file_detector.call(Array(key)) }.compact
|
368
|
+
if local_files.any?
|
369
|
+
keys = local_files.map { |local_file| upload(local_file) }
|
370
|
+
keys = keys.join("\n")
|
371
|
+
end
|
368
372
|
end
|
369
373
|
|
370
374
|
execute :send_keys_to_element, {id: element}, {value: Array(keys)}
|
@@ -359,9 +359,13 @@ module Selenium
|
|
359
359
|
end
|
360
360
|
|
361
361
|
def send_keys_to_element(element, keys)
|
362
|
+
# TODO: rework file detectors before Selenium 4.0
|
362
363
|
if @file_detector
|
363
|
-
|
364
|
-
|
364
|
+
local_files = keys.first.split("\n").map { |key| @file_detector.call(Array(key)) }.compact
|
365
|
+
if local_files.any?
|
366
|
+
keys = local_files.map { |local_file| upload(local_file) }
|
367
|
+
keys = Array(keys.join("\n"))
|
368
|
+
end
|
365
369
|
end
|
366
370
|
|
367
371
|
# Keep .split(//) for backward compatibility for now
|
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: 3.
|
4
|
+
version: 3.14.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alex Rodionov
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2018-
|
12
|
+
date: 2018-08-03 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|