playwright-ruby-client 0.7.1 → 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.
Files changed (37) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +26 -0
  3. data/documentation/docs/api/element_handle.md +11 -2
  4. data/documentation/docs/api/frame.md +15 -1
  5. data/documentation/docs/api/page.md +15 -1
  6. data/documentation/docs/api/response.md +16 -0
  7. data/documentation/docs/include/api_coverage.md +6 -0
  8. data/lib/playwright.rb +36 -3
  9. data/lib/playwright/channel_owners/element_handle.rb +11 -4
  10. data/lib/playwright/channel_owners/frame.rb +14 -2
  11. data/lib/playwright/channel_owners/page.rb +13 -2
  12. data/lib/playwright/channel_owners/response.rb +8 -0
  13. data/lib/playwright/connection.rb +2 -4
  14. data/lib/playwright/transport.rb +0 -1
  15. data/lib/playwright/version.rb +2 -2
  16. data/lib/playwright/web_socket_client.rb +164 -0
  17. data/lib/playwright/web_socket_transport.rb +104 -0
  18. data/lib/playwright_api/android.rb +6 -6
  19. data/lib/playwright_api/android_device.rb +8 -8
  20. data/lib/playwright_api/browser.rb +6 -6
  21. data/lib/playwright_api/browser_context.rb +6 -6
  22. data/lib/playwright_api/browser_type.rb +6 -6
  23. data/lib/playwright_api/cdp_session.rb +12 -12
  24. data/lib/playwright_api/console_message.rb +6 -6
  25. data/lib/playwright_api/dialog.rb +6 -6
  26. data/lib/playwright_api/element_handle.rb +17 -11
  27. data/lib/playwright_api/frame.rb +20 -9
  28. data/lib/playwright_api/js_handle.rb +6 -6
  29. data/lib/playwright_api/page.rb +20 -9
  30. data/lib/playwright_api/playwright.rb +6 -6
  31. data/lib/playwright_api/request.rb +6 -6
  32. data/lib/playwright_api/response.rb +16 -6
  33. data/lib/playwright_api/route.rb +11 -6
  34. data/lib/playwright_api/selectors.rb +6 -6
  35. data/lib/playwright_api/web_socket.rb +6 -6
  36. data/lib/playwright_api/worker.rb +6 -6
  37. metadata +6 -4
@@ -25,20 +25,20 @@ module Playwright
25
25
 
26
26
  # -- inherited from EventEmitter --
27
27
  # @nodoc
28
- def once(event, callback)
29
- event_emitter_proxy.once(event, callback)
28
+ def off(event, callback)
29
+ event_emitter_proxy.off(event, callback)
30
30
  end
31
31
 
32
32
  # -- inherited from EventEmitter --
33
33
  # @nodoc
34
- def on(event, callback)
35
- event_emitter_proxy.on(event, callback)
34
+ def once(event, callback)
35
+ event_emitter_proxy.once(event, callback)
36
36
  end
37
37
 
38
38
  # -- inherited from EventEmitter --
39
39
  # @nodoc
40
- def off(event, callback)
41
- event_emitter_proxy.off(event, callback)
40
+ def on(event, callback)
41
+ event_emitter_proxy.on(event, callback)
42
42
  end
43
43
 
44
44
  private def event_emitter_proxy
@@ -60,20 +60,20 @@ module Playwright
60
60
 
61
61
  # -- inherited from EventEmitter --
62
62
  # @nodoc
63
- def once(event, callback)
64
- event_emitter_proxy.once(event, callback)
63
+ def off(event, callback)
64
+ event_emitter_proxy.off(event, callback)
65
65
  end
66
66
 
67
67
  # -- inherited from EventEmitter --
68
68
  # @nodoc
69
- def on(event, callback)
70
- event_emitter_proxy.on(event, callback)
69
+ def once(event, callback)
70
+ event_emitter_proxy.once(event, callback)
71
71
  end
72
72
 
73
73
  # -- inherited from EventEmitter --
74
74
  # @nodoc
75
- def off(event, callback)
76
- event_emitter_proxy.off(event, callback)
75
+ def on(event, callback)
76
+ event_emitter_proxy.on(event, callback)
77
77
  end
78
78
 
79
79
  private def event_emitter_proxy
@@ -210,8 +210,8 @@ module Playwright
210
210
  # instead.
211
211
  #
212
212
  # To send fine-grained keyboard events, use [`method: ElementHandle.type`].
213
- def fill(value, noWaitAfter: nil, timeout: nil)
214
- wrap_impl(@impl.fill(unwrap_impl(value), noWaitAfter: unwrap_impl(noWaitAfter), timeout: unwrap_impl(timeout)))
213
+ def fill(value, force: nil, noWaitAfter: nil, timeout: nil)
214
+ wrap_impl(@impl.fill(unwrap_impl(value), force: unwrap_impl(force), noWaitAfter: unwrap_impl(noWaitAfter), timeout: unwrap_impl(timeout)))
215
215
  end
216
216
 
217
217
  # Calls [focus](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/focus) on the element.
@@ -254,6 +254,11 @@ module Playwright
254
254
  wrap_impl(@impl.inner_text)
255
255
  end
256
256
 
257
+ # Returns `input.value` for `<input>` or `<textarea>` element. Throws for non-input elements.
258
+ def input_value(timeout: nil)
259
+ wrap_impl(@impl.input_value(timeout: unwrap_impl(timeout)))
260
+ end
261
+
257
262
  # Returns whether the element is checked. Throws if the element is not a checkbox or radio input.
258
263
  def checked?
259
264
  wrap_impl(@impl.checked?)
@@ -381,15 +386,16 @@ module Playwright
381
386
  index: nil,
382
387
  value: nil,
383
388
  label: nil,
389
+ force: nil,
384
390
  noWaitAfter: nil,
385
391
  timeout: nil)
386
- wrap_impl(@impl.select_option(element: unwrap_impl(element), index: unwrap_impl(index), value: unwrap_impl(value), label: unwrap_impl(label), noWaitAfter: unwrap_impl(noWaitAfter), timeout: unwrap_impl(timeout)))
392
+ wrap_impl(@impl.select_option(element: unwrap_impl(element), index: unwrap_impl(index), value: unwrap_impl(value), label: unwrap_impl(label), force: unwrap_impl(force), noWaitAfter: unwrap_impl(noWaitAfter), timeout: unwrap_impl(timeout)))
387
393
  end
388
394
 
389
395
  # This method waits for [actionability](./actionability.md) checks, then focuses the element and selects all its text
390
396
  # content.
391
- def select_text(timeout: nil)
392
- wrap_impl(@impl.select_text(timeout: unwrap_impl(timeout)))
397
+ def select_text(force: nil, timeout: nil)
398
+ wrap_impl(@impl.select_text(force: unwrap_impl(force), timeout: unwrap_impl(timeout)))
393
399
  end
394
400
 
395
401
  # This method expects `elementHandle` to point to an
@@ -511,20 +517,20 @@ module Playwright
511
517
 
512
518
  # -- inherited from EventEmitter --
513
519
  # @nodoc
514
- def once(event, callback)
515
- event_emitter_proxy.once(event, callback)
520
+ def off(event, callback)
521
+ event_emitter_proxy.off(event, callback)
516
522
  end
517
523
 
518
524
  # -- inherited from EventEmitter --
519
525
  # @nodoc
520
- def on(event, callback)
521
- event_emitter_proxy.on(event, callback)
526
+ def once(event, callback)
527
+ event_emitter_proxy.once(event, callback)
522
528
  end
523
529
 
524
530
  # -- inherited from EventEmitter --
525
531
  # @nodoc
526
- def off(event, callback)
527
- event_emitter_proxy.off(event, callback)
532
+ def on(event, callback)
533
+ event_emitter_proxy.on(event, callback)
528
534
  end
529
535
 
530
536
  private def event_emitter_proxy
@@ -271,8 +271,13 @@ module Playwright
271
271
  # instead.
272
272
  #
273
273
  # To send fine-grained keyboard events, use [`method: Frame.type`].
274
- def fill(selector, value, noWaitAfter: nil, timeout: nil)
275
- wrap_impl(@impl.fill(unwrap_impl(selector), unwrap_impl(value), noWaitAfter: unwrap_impl(noWaitAfter), timeout: unwrap_impl(timeout)))
274
+ def fill(
275
+ selector,
276
+ value,
277
+ force: nil,
278
+ noWaitAfter: nil,
279
+ timeout: nil)
280
+ wrap_impl(@impl.fill(unwrap_impl(selector), unwrap_impl(value), force: unwrap_impl(force), noWaitAfter: unwrap_impl(noWaitAfter), timeout: unwrap_impl(timeout)))
276
281
  end
277
282
 
278
283
  # This method fetches an element with `selector` and focuses it. If there's no element matching `selector`, the method
@@ -354,6 +359,11 @@ module Playwright
354
359
  wrap_impl(@impl.inner_text(unwrap_impl(selector), timeout: unwrap_impl(timeout)))
355
360
  end
356
361
 
362
+ # Returns `input.value` for the selected `<input>` or `<textarea>` element. Throws for non-input elements.
363
+ def input_value(selector, timeout: nil)
364
+ wrap_impl(@impl.input_value(unwrap_impl(selector), timeout: unwrap_impl(timeout)))
365
+ end
366
+
357
367
  # Returns whether the element is checked. Throws if the element is not a checkbox or radio input.
358
368
  def checked?(selector, timeout: nil)
359
369
  wrap_impl(@impl.checked?(unwrap_impl(selector), timeout: unwrap_impl(timeout)))
@@ -476,9 +486,10 @@ module Playwright
476
486
  index: nil,
477
487
  value: nil,
478
488
  label: nil,
489
+ force: nil,
479
490
  noWaitAfter: nil,
480
491
  timeout: nil)
481
- wrap_impl(@impl.select_option(unwrap_impl(selector), element: unwrap_impl(element), index: unwrap_impl(index), value: unwrap_impl(value), label: unwrap_impl(label), noWaitAfter: unwrap_impl(noWaitAfter), timeout: unwrap_impl(timeout)))
492
+ wrap_impl(@impl.select_option(unwrap_impl(selector), element: unwrap_impl(element), index: unwrap_impl(index), value: unwrap_impl(value), label: unwrap_impl(label), force: unwrap_impl(force), noWaitAfter: unwrap_impl(noWaitAfter), timeout: unwrap_impl(timeout)))
482
493
  end
483
494
 
484
495
  def set_content(html, timeout: nil, waitUntil: nil)
@@ -689,20 +700,20 @@ module Playwright
689
700
 
690
701
  # -- inherited from EventEmitter --
691
702
  # @nodoc
692
- def once(event, callback)
693
- event_emitter_proxy.once(event, callback)
703
+ def off(event, callback)
704
+ event_emitter_proxy.off(event, callback)
694
705
  end
695
706
 
696
707
  # -- inherited from EventEmitter --
697
708
  # @nodoc
698
- def on(event, callback)
699
- event_emitter_proxy.on(event, callback)
709
+ def once(event, callback)
710
+ event_emitter_proxy.once(event, callback)
700
711
  end
701
712
 
702
713
  # -- inherited from EventEmitter --
703
714
  # @nodoc
704
- def off(event, callback)
705
- event_emitter_proxy.off(event, callback)
715
+ def on(event, callback)
716
+ event_emitter_proxy.on(event, callback)
706
717
  end
707
718
 
708
719
  private def event_emitter_proxy
@@ -90,20 +90,20 @@ module Playwright
90
90
 
91
91
  # -- inherited from EventEmitter --
92
92
  # @nodoc
93
- def once(event, callback)
94
- event_emitter_proxy.once(event, callback)
93
+ def off(event, callback)
94
+ event_emitter_proxy.off(event, callback)
95
95
  end
96
96
 
97
97
  # -- inherited from EventEmitter --
98
98
  # @nodoc
99
- def on(event, callback)
100
- event_emitter_proxy.on(event, callback)
99
+ def once(event, callback)
100
+ event_emitter_proxy.once(event, callback)
101
101
  end
102
102
 
103
103
  # -- inherited from EventEmitter --
104
104
  # @nodoc
105
- def off(event, callback)
106
- event_emitter_proxy.off(event, callback)
105
+ def on(event, callback)
106
+ event_emitter_proxy.on(event, callback)
107
107
  end
108
108
 
109
109
  private def event_emitter_proxy
@@ -481,8 +481,13 @@ module Playwright
481
481
  # To send fine-grained keyboard events, use [`method: Page.type`].
482
482
  #
483
483
  # Shortcut for main frame's [`method: Frame.fill`].
484
- def fill(selector, value, noWaitAfter: nil, timeout: nil)
485
- wrap_impl(@impl.fill(unwrap_impl(selector), unwrap_impl(value), noWaitAfter: unwrap_impl(noWaitAfter), timeout: unwrap_impl(timeout)))
484
+ def fill(
485
+ selector,
486
+ value,
487
+ force: nil,
488
+ noWaitAfter: nil,
489
+ timeout: nil)
490
+ wrap_impl(@impl.fill(unwrap_impl(selector), unwrap_impl(value), force: unwrap_impl(force), noWaitAfter: unwrap_impl(noWaitAfter), timeout: unwrap_impl(timeout)))
486
491
  end
487
492
 
488
493
  # This method fetches an element with `selector` and focuses it. If there's no element matching `selector`, the method
@@ -588,6 +593,11 @@ module Playwright
588
593
  wrap_impl(@impl.inner_text(unwrap_impl(selector), timeout: unwrap_impl(timeout)))
589
594
  end
590
595
 
596
+ # Returns `input.value` for the selected `<input>` or `<textarea>` element. Throws for non-input elements.
597
+ def input_value(selector, timeout: nil)
598
+ wrap_impl(@impl.input_value(unwrap_impl(selector), timeout: unwrap_impl(timeout)))
599
+ end
600
+
591
601
  # Returns whether the element is checked. Throws if the element is not a checkbox or radio input.
592
602
  def checked?(selector, timeout: nil)
593
603
  wrap_impl(@impl.checked?(unwrap_impl(selector), timeout: unwrap_impl(timeout)))
@@ -855,9 +865,10 @@ module Playwright
855
865
  index: nil,
856
866
  value: nil,
857
867
  label: nil,
868
+ force: nil,
858
869
  noWaitAfter: nil,
859
870
  timeout: nil)
860
- wrap_impl(@impl.select_option(unwrap_impl(selector), element: unwrap_impl(element), index: unwrap_impl(index), value: unwrap_impl(value), label: unwrap_impl(label), noWaitAfter: unwrap_impl(noWaitAfter), timeout: unwrap_impl(timeout)))
871
+ wrap_impl(@impl.select_option(unwrap_impl(selector), element: unwrap_impl(element), index: unwrap_impl(index), value: unwrap_impl(value), label: unwrap_impl(label), force: unwrap_impl(force), noWaitAfter: unwrap_impl(noWaitAfter), timeout: unwrap_impl(timeout)))
861
872
  end
862
873
 
863
874
  def set_content(html, timeout: nil, waitUntil: nil)
@@ -1299,20 +1310,20 @@ module Playwright
1299
1310
 
1300
1311
  # -- inherited from EventEmitter --
1301
1312
  # @nodoc
1302
- def once(event, callback)
1303
- event_emitter_proxy.once(event, callback)
1313
+ def off(event, callback)
1314
+ event_emitter_proxy.off(event, callback)
1304
1315
  end
1305
1316
 
1306
1317
  # -- inherited from EventEmitter --
1307
1318
  # @nodoc
1308
- def on(event, callback)
1309
- event_emitter_proxy.on(event, callback)
1319
+ def once(event, callback)
1320
+ event_emitter_proxy.once(event, callback)
1310
1321
  end
1311
1322
 
1312
1323
  # -- inherited from EventEmitter --
1313
1324
  # @nodoc
1314
- def off(event, callback)
1315
- event_emitter_proxy.off(event, callback)
1325
+ def on(event, callback)
1326
+ event_emitter_proxy.on(event, callback)
1316
1327
  end
1317
1328
 
1318
1329
  private def event_emitter_proxy
@@ -93,20 +93,20 @@ module Playwright
93
93
 
94
94
  # -- inherited from EventEmitter --
95
95
  # @nodoc
96
- def once(event, callback)
97
- event_emitter_proxy.once(event, callback)
96
+ def off(event, callback)
97
+ event_emitter_proxy.off(event, callback)
98
98
  end
99
99
 
100
100
  # -- inherited from EventEmitter --
101
101
  # @nodoc
102
- def on(event, callback)
103
- event_emitter_proxy.on(event, callback)
102
+ def once(event, callback)
103
+ event_emitter_proxy.once(event, callback)
104
104
  end
105
105
 
106
106
  # -- inherited from EventEmitter --
107
107
  # @nodoc
108
- def off(event, callback)
109
- event_emitter_proxy.off(event, callback)
108
+ def on(event, callback)
109
+ event_emitter_proxy.on(event, callback)
110
110
  end
111
111
 
112
112
  private def event_emitter_proxy
@@ -130,20 +130,20 @@ module Playwright
130
130
 
131
131
  # -- inherited from EventEmitter --
132
132
  # @nodoc
133
- def once(event, callback)
134
- event_emitter_proxy.once(event, callback)
133
+ def off(event, callback)
134
+ event_emitter_proxy.off(event, callback)
135
135
  end
136
136
 
137
137
  # -- inherited from EventEmitter --
138
138
  # @nodoc
139
- def on(event, callback)
140
- event_emitter_proxy.on(event, callback)
139
+ def once(event, callback)
140
+ event_emitter_proxy.once(event, callback)
141
141
  end
142
142
 
143
143
  # -- inherited from EventEmitter --
144
144
  # @nodoc
145
- def off(event, callback)
146
- event_emitter_proxy.off(event, callback)
145
+ def on(event, callback)
146
+ event_emitter_proxy.on(event, callback)
147
147
  end
148
148
 
149
149
  private def event_emitter_proxy
@@ -39,6 +39,16 @@ module Playwright
39
39
  wrap_impl(@impl.request)
40
40
  end
41
41
 
42
+ # Returns SSL and other security information.
43
+ def security_details
44
+ wrap_impl(@impl.security_details)
45
+ end
46
+
47
+ # Returns the IP address and port of the server.
48
+ def server_addr
49
+ wrap_impl(@impl.server_addr)
50
+ end
51
+
42
52
  # Contains the status code of the response (e.g., 200 for a success).
43
53
  def status
44
54
  wrap_impl(@impl.status)
@@ -66,20 +76,20 @@ module Playwright
66
76
 
67
77
  # -- inherited from EventEmitter --
68
78
  # @nodoc
69
- def once(event, callback)
70
- event_emitter_proxy.once(event, callback)
79
+ def off(event, callback)
80
+ event_emitter_proxy.off(event, callback)
71
81
  end
72
82
 
73
83
  # -- inherited from EventEmitter --
74
84
  # @nodoc
75
- def on(event, callback)
76
- event_emitter_proxy.on(event, callback)
85
+ def once(event, callback)
86
+ event_emitter_proxy.once(event, callback)
77
87
  end
78
88
 
79
89
  # -- inherited from EventEmitter --
80
90
  # @nodoc
81
- def off(event, callback)
82
- event_emitter_proxy.off(event, callback)
91
+ def on(event, callback)
92
+ event_emitter_proxy.on(event, callback)
83
93
  end
84
94
 
85
95
  private def event_emitter_proxy
@@ -51,6 +51,11 @@ module Playwright
51
51
  wrap_impl(@impl.fulfill(body: unwrap_impl(body), contentType: unwrap_impl(contentType), headers: unwrap_impl(headers), path: unwrap_impl(path), status: unwrap_impl(status)))
52
52
  end
53
53
 
54
+ # Continues route's request with optional overrides and intercepts response.
55
+ def intercept(headers: nil, method: nil, postData: nil, url: nil)
56
+ raise NotImplementedError.new('intercept is not implemented yet.')
57
+ end
58
+
54
59
  # A request to be routed.
55
60
  def request
56
61
  wrap_impl(@impl.request)
@@ -58,20 +63,20 @@ module Playwright
58
63
 
59
64
  # -- inherited from EventEmitter --
60
65
  # @nodoc
61
- def once(event, callback)
62
- event_emitter_proxy.once(event, callback)
66
+ def off(event, callback)
67
+ event_emitter_proxy.off(event, callback)
63
68
  end
64
69
 
65
70
  # -- inherited from EventEmitter --
66
71
  # @nodoc
67
- def on(event, callback)
68
- event_emitter_proxy.on(event, callback)
72
+ def once(event, callback)
73
+ event_emitter_proxy.once(event, callback)
69
74
  end
70
75
 
71
76
  # -- inherited from EventEmitter --
72
77
  # @nodoc
73
- def off(event, callback)
74
- event_emitter_proxy.off(event, callback)
78
+ def on(event, callback)
79
+ event_emitter_proxy.on(event, callback)
75
80
  end
76
81
 
77
82
  private def event_emitter_proxy
@@ -14,20 +14,20 @@ module Playwright
14
14
 
15
15
  # -- inherited from EventEmitter --
16
16
  # @nodoc
17
- def once(event, callback)
18
- event_emitter_proxy.once(event, callback)
17
+ def off(event, callback)
18
+ event_emitter_proxy.off(event, callback)
19
19
  end
20
20
 
21
21
  # -- inherited from EventEmitter --
22
22
  # @nodoc
23
- def on(event, callback)
24
- event_emitter_proxy.on(event, callback)
23
+ def once(event, callback)
24
+ event_emitter_proxy.once(event, callback)
25
25
  end
26
26
 
27
27
  # -- inherited from EventEmitter --
28
28
  # @nodoc
29
- def off(event, callback)
30
- event_emitter_proxy.off(event, callback)
29
+ def on(event, callback)
30
+ event_emitter_proxy.on(event, callback)
31
31
  end
32
32
 
33
33
  private def event_emitter_proxy