async-webdriver 0.7.0 → 0.8.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
- checksums.yaml.gz.sig +0 -0
- data/lib/async/webdriver/bridge/pool.rb +5 -0
- data/lib/async/webdriver/element.rb +2 -2
- data/lib/async/webdriver/request_helper.rb +5 -3
- data/lib/async/webdriver/scope/fields.rb +6 -1
- data/lib/async/webdriver/version.rb +1 -1
- data/readme.md +9 -0
- data/releases.md +6 -0
- data.tar.gz.sig +0 -0
- metadata +5 -4
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5c3dae5c334d2b97f044519b5c4235c104148fadcac0e95f25764551197a889c
|
4
|
+
data.tar.gz: b843c0e5eca27f7382d9d972fdce259051607c844600eea887a82e4a81d5e167
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 39488968a35e04975b8f1bfe8d2287dac5811f4a6e32db4a52dc14c835d43b0b502285d0e88f7925f1b0776610ec3011901a575dee56af5755101fface01d44c
|
7
|
+
data.tar.gz: '082e3d764d278351a50cf7bc969d586a94ee26a0066314f9de3577189dd752cb54eb0eaecc8fe1d9b4aadef1627c0df6b8eb7829702aa9cbc7e8a27b2281944b'
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
@@ -71,6 +71,11 @@ module Async
|
|
71
71
|
def acquire
|
72
72
|
if @sessions.empty?
|
73
73
|
session = @client.post("session", {capabilities: @capabilities})
|
74
|
+
|
75
|
+
if session.nil?
|
76
|
+
raise Async::WebDriver::Error, "Failed to create session with capabilities: #{@capabilities.inspect}"
|
77
|
+
end
|
78
|
+
|
74
79
|
session[:cache] = self
|
75
80
|
session[:endpoint] = @driver.endpoint
|
76
81
|
|
@@ -211,9 +211,9 @@ module Async
|
|
211
211
|
# element.tagName
|
212
212
|
# ```
|
213
213
|
#
|
214
|
-
# @returns [String] The tag name of the element.
|
214
|
+
# @returns [String] The tag name of the element, always in lowercase for consistency across browsers.
|
215
215
|
def tag_name
|
216
|
-
get("name")
|
216
|
+
get("name").downcase
|
217
217
|
end
|
218
218
|
|
219
219
|
# A struct representing the size of an element.
|
@@ -46,10 +46,10 @@ module Async
|
|
46
46
|
# @returns [Object] The unwrapped value.
|
47
47
|
def unwrap_object(value)
|
48
48
|
if value.is_a?(Hash) and value.key?(ELEMENT_KEY)
|
49
|
-
Element.new(self.session, value[ELEMENT_KEY])
|
50
|
-
else
|
51
|
-
value
|
49
|
+
value = Element.new(self.session, value[ELEMENT_KEY])
|
52
50
|
end
|
51
|
+
|
52
|
+
return value
|
53
53
|
end
|
54
54
|
|
55
55
|
# Used by `JSON.load` to unwrap objects.
|
@@ -60,6 +60,8 @@ module Async
|
|
60
60
|
when Array
|
61
61
|
value.map!(&method(:unwrap_object))
|
62
62
|
end
|
63
|
+
|
64
|
+
return value
|
63
65
|
end
|
64
66
|
|
65
67
|
# Extract the value from the reply.
|
@@ -32,7 +32,12 @@ module Async
|
|
32
32
|
element.clear
|
33
33
|
end
|
34
34
|
|
35
|
-
element.
|
35
|
+
if element.tag_name == "select"
|
36
|
+
option = element.find_element_by_xpath(".//option[text()=#{XPath::escape(value)}]")
|
37
|
+
option.click unless option.selected?
|
38
|
+
else
|
39
|
+
element.send_keys(value)
|
40
|
+
end
|
36
41
|
end
|
37
42
|
|
38
43
|
# Click a button with the given label.
|
data/readme.md
CHANGED
@@ -20,6 +20,15 @@ Please see the [project documentation](https://socketry.github.io/async-webdrive
|
|
20
20
|
|
21
21
|
- [Sus Integration](https://socketry.github.io/async-webdriver/guides/sus-integration/index) - This guide will show you how to integrate `async-webdriver` with the sus test framework.
|
22
22
|
|
23
|
+
## Releases
|
24
|
+
|
25
|
+
Please see the [project releases](https://socketry.github.io/async-webdriver/releases/index) for all releases.
|
26
|
+
|
27
|
+
### v0.8.0
|
28
|
+
|
29
|
+
- Fix `fill_in` `<select>` on Safari.
|
30
|
+
- `Element#tag_name` now normalizes the tag name to lowercase (Safari returns uppercase while other browsers return lowercase).
|
31
|
+
|
23
32
|
## See Also
|
24
33
|
|
25
34
|
- [sus-fixtures-async-webdriver](https://github.com/socketry/sus-fixtures-async-webdriver) - Standard fixtures for testing web applications with `async-webdriver`.
|
data/releases.md
ADDED
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: async-webdriver
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.8.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Samuel Williams
|
@@ -36,7 +36,7 @@ cert_chain:
|
|
36
36
|
Q2K9NVun/S785AP05vKkXZEFYxqG6EW012U4oLcFl5MySFajYXRYbuUpH6AY+HP8
|
37
37
|
voD0MPg1DssDLKwXyt1eKD/+Fq0bFWhwVM/1XiAXL7lyYUyOq24KHgQ2Csg=
|
38
38
|
-----END CERTIFICATE-----
|
39
|
-
date:
|
39
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
40
40
|
dependencies:
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: async-actor
|
@@ -142,6 +142,7 @@ files:
|
|
142
142
|
- lib/async/webdriver/xpath.rb
|
143
143
|
- license.md
|
144
144
|
- readme.md
|
145
|
+
- releases.md
|
145
146
|
homepage: https://github.com/socketry/async-webdriver
|
146
147
|
licenses:
|
147
148
|
- MIT
|
@@ -156,14 +157,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
156
157
|
requirements:
|
157
158
|
- - ">="
|
158
159
|
- !ruby/object:Gem::Version
|
159
|
-
version: '3.
|
160
|
+
version: '3.2'
|
160
161
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
161
162
|
requirements:
|
162
163
|
- - ">="
|
163
164
|
- !ruby/object:Gem::Version
|
164
165
|
version: '0'
|
165
166
|
requirements: []
|
166
|
-
rubygems_version: 3.6.
|
167
|
+
rubygems_version: 3.6.7
|
167
168
|
specification_version: 4
|
168
169
|
summary: A native library implementing the W3C WebDriver client specification.
|
169
170
|
test_files: []
|
metadata.gz.sig
CHANGED
Binary file
|