playwright-ruby-client 1.35.0 → 1.36.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/documentation/docs/api/page.md +4 -4
- data/documentation/docs/api/selectors.md +1 -1
- data/lib/playwright/javascript/value_parser.rb +4 -0
- data/lib/playwright/javascript/value_serializer.rb +5 -1
- data/lib/playwright/version.rb +2 -2
- data/lib/playwright_api/accessibility.rb +2 -2
- data/lib/playwright_api/browser_context.rb +2 -2
- data/lib/playwright_api/element_handle.rb +1 -1
- data/lib/playwright_api/js_handle.rb +1 -1
- data/lib/playwright_api/locator.rb +4 -5
- data/lib/playwright_api/page.rb +2 -2
- data/lib/playwright_api/playwright.rb +8 -8
- data/lib/playwright_api/route.rb +2 -2
- 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: 853f54317712f2c9fbe41a64c07091aa11c553718f57ecc78394f9426dbe5412
|
4
|
+
data.tar.gz: 932e51fd6b3b7890ff5684226cdeca4fe2b55f525b646779745f6cae62a6a4b5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: '049a0b12e42905c291451b21d64ffc3235dfdc0c531ad46016497ee52432c9433b97ac6fe4e3c51e23228a713d4c6add3d58cfe0c9373b9d5657f07a75c11441'
|
7
|
+
data.tar.gz: b6e9030498986b5f31417f2c15a8090f459f391d8cd288a60fa600ec087da32316eafa1e25ced20ae20ab62bc87806d4525ca6d950646b6780497982a0922527
|
@@ -1741,7 +1741,7 @@ Waits for the matching request and returns it. See [waiting for event](https://p
|
|
1741
1741
|
```ruby
|
1742
1742
|
page.content = '<form action="https://example.com/resource"><input type="submit" value="trigger request" /></form>'
|
1743
1743
|
request = page.expect_request(/example.com\/resource/) do
|
1744
|
-
page.get_by_text("trigger request").click
|
1744
|
+
page.get_by_text("trigger request").click
|
1745
1745
|
end
|
1746
1746
|
puts request.headers
|
1747
1747
|
|
@@ -1750,7 +1750,7 @@ page.wait_for_load_state # wait for request finished.
|
|
1750
1750
|
# or with a predicate
|
1751
1751
|
page.content = '<form action="https://example.com/resource"><input type="submit" value="trigger request" /></form>'
|
1752
1752
|
request = page.expect_request(->(req) { req.url.start_with? 'https://example.com/resource' }) do
|
1753
|
-
page.get_by_text("trigger request").click
|
1753
|
+
page.get_by_text("trigger request").click
|
1754
1754
|
end
|
1755
1755
|
puts request.headers
|
1756
1756
|
```
|
@@ -1780,7 +1780,7 @@ Returns the matched response. See [waiting for event](https://playwright.dev/pyt
|
|
1780
1780
|
```ruby
|
1781
1781
|
page.content = '<form action="https://example.com/resource"><input type="submit" value="trigger response" /></form>'
|
1782
1782
|
response = page.expect_response(/example.com\/resource/) do
|
1783
|
-
page.get_by_text("trigger response").click
|
1783
|
+
page.get_by_text("trigger response").click
|
1784
1784
|
end
|
1785
1785
|
puts response.body
|
1786
1786
|
puts response.ok?
|
@@ -1790,7 +1790,7 @@ page.wait_for_load_state # wait for request finished.
|
|
1790
1790
|
# or with a predicate
|
1791
1791
|
page.content = '<form action="https://example.com/resource"><input type="submit" value="trigger response" /></form>'
|
1792
1792
|
response = page.expect_response(->(res) { res.url.start_with? 'https://example.com/resource' }) do
|
1793
|
-
page.get_by_text("trigger response").click
|
1793
|
+
page.get_by_text("trigger response").click
|
1794
1794
|
end
|
1795
1795
|
puts response.body
|
1796
1796
|
puts response.ok?
|
@@ -38,7 +38,7 @@ JAVASCRIPT
|
|
38
38
|
# Register the engine. Selectors will be prefixed with "tag=".
|
39
39
|
playwright.selectors.register("tag", script: tag_selector)
|
40
40
|
playwright.chromium.launch do |browser|
|
41
|
-
page = browser.new_page
|
41
|
+
page = browser.new_page
|
42
42
|
page.content = '<div><button>Click me</button></div>'
|
43
43
|
|
44
44
|
# Use the selector prefixed with its name.
|
@@ -52,6 +52,10 @@ module Playwright
|
|
52
52
|
return URI(hash['u'])
|
53
53
|
end
|
54
54
|
|
55
|
+
if hash.key?('bi')
|
56
|
+
return hash['bi'].to_i
|
57
|
+
end
|
58
|
+
|
55
59
|
if hash.key?('r')
|
56
60
|
# @see https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/RegExp
|
57
61
|
# @see https://docs.ruby-lang.org/ja/latest/class/Regexp.html
|
@@ -34,7 +34,11 @@ module Playwright
|
|
34
34
|
when true, false
|
35
35
|
{ b: value }
|
36
36
|
when Numeric
|
37
|
-
|
37
|
+
if !value.is_a?(Integer) || (-9007199254740992..9007199254740991).include?(value)
|
38
|
+
{ n: value }
|
39
|
+
else
|
40
|
+
{ bi: value.to_s }
|
41
|
+
end
|
38
42
|
when String
|
39
43
|
{ s: value }
|
40
44
|
when Time
|
data/lib/playwright/version.rb
CHANGED
@@ -35,11 +35,11 @@ module Playwright
|
|
35
35
|
#
|
36
36
|
# ```python sync
|
37
37
|
# def find_focused_node(node):
|
38
|
-
# if
|
38
|
+
# if node.get("focused"):
|
39
39
|
# return node
|
40
40
|
# for child in (node.get("children") or []):
|
41
41
|
# found_node = find_focused_node(child)
|
42
|
-
# if
|
42
|
+
# if found_node:
|
43
43
|
# return found_node
|
44
44
|
# return None
|
45
45
|
#
|
@@ -281,9 +281,9 @@ module Playwright
|
|
281
281
|
#
|
282
282
|
# ```python sync
|
283
283
|
# def handle_route(route):
|
284
|
-
# if ("my-string" in route.request.post_data)
|
284
|
+
# if ("my-string" in route.request.post_data):
|
285
285
|
# route.fulfill(body="mocked-data")
|
286
|
-
# else
|
286
|
+
# else:
|
287
287
|
# route.continue_()
|
288
288
|
# context.route("/api/**", handle_route)
|
289
289
|
# ```
|
@@ -187,7 +187,7 @@ module Playwright
|
|
187
187
|
# ```python sync
|
188
188
|
# tweet_handle = page.query_selector(".tweet")
|
189
189
|
# assert tweet_handle.eval_on_selector(".like", "node => node.innerText") == "100"
|
190
|
-
# assert tweet_handle.eval_on_selector(".retweets", "node => node.innerText")
|
190
|
+
# assert tweet_handle.eval_on_selector(".retweets", "node => node.innerText") == "10"
|
191
191
|
# ```
|
192
192
|
def eval_on_selector(selector, expression, arg: nil)
|
193
193
|
wrap_impl(@impl.eval_on_selector(unwrap_impl(selector), unwrap_impl(expression), arg: unwrap_impl(arg)))
|
@@ -67,7 +67,7 @@ module Playwright
|
|
67
67
|
# **Usage**
|
68
68
|
#
|
69
69
|
# ```python sync
|
70
|
-
# handle = page.evaluate_handle("({window, document})")
|
70
|
+
# handle = page.evaluate_handle("({ window, document })")
|
71
71
|
# properties = handle.get_properties()
|
72
72
|
# window_handle = properties.get("window")
|
73
73
|
# document_handle = properties.get("document")
|
@@ -406,10 +406,9 @@ module Playwright
|
|
406
406
|
# ```python sync
|
407
407
|
# row_locator = page.locator("tr")
|
408
408
|
# # ...
|
409
|
-
# row_locator
|
410
|
-
# .
|
411
|
-
#
|
412
|
-
# .screenshot()
|
409
|
+
# row_locator.filter(has_text="text in column 1").filter(
|
410
|
+
# has=page.get_by_role("button", name="column 2 button")
|
411
|
+
# ).screenshot()
|
413
412
|
# ```
|
414
413
|
def filter(has: nil, hasNot: nil, hasNotText: nil, hasText: nil)
|
415
414
|
wrap_impl(@impl.filter(has: unwrap_impl(has), hasNot: unwrap_impl(hasNot), hasNotText: unwrap_impl(hasNotText), hasText: unwrap_impl(hasText)))
|
@@ -823,7 +822,7 @@ module Playwright
|
|
823
822
|
# new_email = page.get_by_role("button", name="New")
|
824
823
|
# dialog = page.get_by_text("Confirm security settings")
|
825
824
|
# expect(new_email.or_(dialog)).to_be_visible()
|
826
|
-
# if (dialog.is_visible())
|
825
|
+
# if (dialog.is_visible()):
|
827
826
|
# page.get_by_role("button", name="Dismiss").click()
|
828
827
|
# new_email.click()
|
829
828
|
# ```
|
data/lib/playwright_api/page.rb
CHANGED
@@ -1115,9 +1115,9 @@ module Playwright
|
|
1115
1115
|
#
|
1116
1116
|
# ```python sync
|
1117
1117
|
# def handle_route(route):
|
1118
|
-
# if ("my-string" in route.request.post_data)
|
1118
|
+
# if ("my-string" in route.request.post_data):
|
1119
1119
|
# route.fulfill(body="mocked-data")
|
1120
|
-
# else
|
1120
|
+
# else:
|
1121
1121
|
# route.continue_()
|
1122
1122
|
# page.route("/api/**", handle_route)
|
1123
1123
|
# ```
|
@@ -77,17 +77,17 @@ module Playwright
|
|
77
77
|
# Terminates this instance of Playwright in case it was created bypassing the Python context manager. This is useful in REPL applications.
|
78
78
|
#
|
79
79
|
# ```py
|
80
|
-
#
|
80
|
+
# from playwright.sync_api import sync_playwright
|
81
81
|
#
|
82
|
-
#
|
82
|
+
# playwright = sync_playwright().start()
|
83
83
|
#
|
84
|
-
#
|
85
|
-
#
|
86
|
-
#
|
87
|
-
#
|
88
|
-
#
|
84
|
+
# browser = playwright.chromium.launch()
|
85
|
+
# page = browser.new_page()
|
86
|
+
# page.goto("https://playwright.dev/")
|
87
|
+
# page.screenshot(path="example.png")
|
88
|
+
# browser.close()
|
89
89
|
#
|
90
|
-
#
|
90
|
+
# playwright.stop()
|
91
91
|
# ```
|
92
92
|
def stop
|
93
93
|
raise NotImplementedError.new('stop is not implemented yet.')
|
data/lib/playwright_api/route.rb
CHANGED
@@ -22,7 +22,7 @@ module Playwright
|
|
22
22
|
# # override headers
|
23
23
|
# headers = {
|
24
24
|
# **request.headers,
|
25
|
-
# "foo": "foo-value" # set "foo" header
|
25
|
+
# "foo": "foo-value", # set "foo" header
|
26
26
|
# "bar": None # remove "bar" header
|
27
27
|
# }
|
28
28
|
# route.continue_(headers=headers)
|
@@ -84,7 +84,7 @@ module Playwright
|
|
84
84
|
# # override headers
|
85
85
|
# headers = {
|
86
86
|
# **request.headers,
|
87
|
-
# "foo": "foo-value" # set "foo" header
|
87
|
+
# "foo": "foo-value", # set "foo" header
|
88
88
|
# "bar": None # remove "bar" header
|
89
89
|
# }
|
90
90
|
# route.fallback(headers=headers)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: playwright-ruby-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.36.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- YusukeIwaki
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-07-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: concurrent-ruby
|
@@ -401,5 +401,5 @@ requirements: []
|
|
401
401
|
rubygems_version: 3.3.26
|
402
402
|
signing_key:
|
403
403
|
specification_version: 4
|
404
|
-
summary: The Ruby binding of playwright driver 1.
|
404
|
+
summary: The Ruby binding of playwright driver 1.36.1
|
405
405
|
test_files: []
|