playwright-ruby-client 1.35.0 → 1.36.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/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: []
|