selenium-webdriver 4.0.0.alpha7 → 4.0.0.beta1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (154) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES +25 -0
  3. data/LICENSE +1 -1
  4. data/README.md +4 -5
  5. data/lib/selenium/server.rb +2 -26
  6. data/lib/selenium/webdriver.rb +0 -2
  7. data/lib/selenium/webdriver/atoms/findElements.js +88 -86
  8. data/lib/selenium/webdriver/chrome/driver.rb +6 -0
  9. data/lib/selenium/webdriver/chrome/features.rb +66 -0
  10. data/lib/selenium/webdriver/chrome/options.rb +51 -39
  11. data/lib/selenium/webdriver/chrome/service.rb +1 -1
  12. data/lib/selenium/webdriver/common.rb +2 -1
  13. data/lib/selenium/webdriver/common/driver.rb +11 -5
  14. data/lib/selenium/webdriver/common/driver_extensions/has_devtools.rb +1 -2
  15. data/lib/selenium/webdriver/common/driver_extensions/has_location.rb +5 -8
  16. data/lib/selenium/webdriver/common/driver_extensions/has_log_events.rb +7 -1
  17. data/lib/selenium/webdriver/common/driver_extensions/has_logs.rb +30 -0
  18. data/lib/selenium/webdriver/common/driver_extensions/has_network_connection.rb +4 -27
  19. data/lib/selenium/webdriver/common/driver_extensions/has_remote_status.rb +1 -0
  20. data/lib/selenium/webdriver/{edge_html/driver.rb → common/driver_extensions/prints_page.rb} +7 -13
  21. data/lib/selenium/webdriver/common/manager.rb +6 -1
  22. data/lib/selenium/webdriver/common/options.rb +25 -8
  23. data/lib/selenium/webdriver/common/platform.rb +2 -0
  24. data/lib/selenium/webdriver/common/service.rb +0 -8
  25. data/lib/selenium/webdriver/common/service_manager.rb +1 -1
  26. data/lib/selenium/webdriver/common/target_locator.rb +4 -4
  27. data/lib/selenium/webdriver/devtools.rb +5 -2
  28. data/lib/selenium/webdriver/devtools/v85/memory.rb +1 -1
  29. data/lib/selenium/webdriver/devtools/v85/network.rb +1 -1
  30. data/lib/selenium/webdriver/devtools/v85/page.rb +1 -1
  31. data/lib/selenium/webdriver/devtools/v86/memory.rb +1 -1
  32. data/lib/selenium/webdriver/devtools/v86/network.rb +1 -1
  33. data/lib/selenium/webdriver/devtools/v86/page.rb +1 -1
  34. data/lib/selenium/webdriver/devtools/v87/accessibility.rb +1 -1
  35. data/lib/selenium/webdriver/devtools/v87/animation.rb +2 -2
  36. data/lib/selenium/webdriver/devtools/v87/application_cache.rb +2 -2
  37. data/lib/selenium/webdriver/devtools/v87/audits.rb +2 -2
  38. data/lib/selenium/webdriver/devtools/v87/background_service.rb +2 -2
  39. data/lib/selenium/webdriver/devtools/v87/browser.rb +1 -1
  40. data/lib/selenium/webdriver/devtools/v87/cache_storage.rb +1 -1
  41. data/lib/selenium/webdriver/devtools/v87/cast.rb +2 -2
  42. data/lib/selenium/webdriver/devtools/v87/console.rb +2 -2
  43. data/lib/selenium/webdriver/devtools/v87/css.rb +2 -2
  44. data/lib/selenium/webdriver/devtools/v87/database.rb +2 -2
  45. data/lib/selenium/webdriver/devtools/v87/debugger.rb +2 -2
  46. data/lib/selenium/webdriver/devtools/v87/device_orientation.rb +1 -1
  47. data/lib/selenium/webdriver/devtools/v87/dom.rb +2 -2
  48. data/lib/selenium/webdriver/devtools/v87/dom_debugger.rb +1 -1
  49. data/lib/selenium/webdriver/devtools/v87/dom_snapshot.rb +1 -1
  50. data/lib/selenium/webdriver/devtools/v87/dom_storage.rb +2 -2
  51. data/lib/selenium/webdriver/devtools/v87/emulation.rb +2 -2
  52. data/lib/selenium/webdriver/devtools/v87/fetch.rb +2 -2
  53. data/lib/selenium/webdriver/devtools/v87/headless_experimental.rb +2 -2
  54. data/lib/selenium/webdriver/devtools/v87/heap_profiler.rb +2 -2
  55. data/lib/selenium/webdriver/devtools/v87/indexed_db.rb +1 -1
  56. data/lib/selenium/webdriver/devtools/v87/input.rb +1 -1
  57. data/lib/selenium/webdriver/devtools/v87/inspector.rb +2 -2
  58. data/lib/selenium/webdriver/devtools/v87/io.rb +1 -1
  59. data/lib/selenium/webdriver/devtools/v87/layer_tree.rb +2 -2
  60. data/lib/selenium/webdriver/devtools/v87/log.rb +2 -2
  61. data/lib/selenium/webdriver/devtools/v87/media.rb +2 -2
  62. data/lib/selenium/webdriver/devtools/v87/memory.rb +2 -2
  63. data/lib/selenium/webdriver/devtools/v87/network.rb +3 -3
  64. data/lib/selenium/webdriver/devtools/v87/overlay.rb +2 -2
  65. data/lib/selenium/webdriver/devtools/v87/page.rb +3 -3
  66. data/lib/selenium/webdriver/devtools/v87/performance.rb +2 -2
  67. data/lib/selenium/webdriver/devtools/v87/profiler.rb +2 -2
  68. data/lib/selenium/webdriver/devtools/v87/runtime.rb +2 -2
  69. data/lib/selenium/webdriver/devtools/v87/schema.rb +1 -1
  70. data/lib/selenium/webdriver/devtools/v87/security.rb +2 -2
  71. data/lib/selenium/webdriver/devtools/v87/service_worker.rb +2 -2
  72. data/lib/selenium/webdriver/devtools/v87/storage.rb +2 -2
  73. data/lib/selenium/webdriver/devtools/v87/system_info.rb +1 -1
  74. data/lib/selenium/webdriver/devtools/v87/target.rb +2 -2
  75. data/lib/selenium/webdriver/devtools/v87/tethering.rb +2 -2
  76. data/lib/selenium/webdriver/devtools/v87/tracing.rb +2 -2
  77. data/lib/selenium/webdriver/devtools/v87/web_audio.rb +2 -2
  78. data/lib/selenium/webdriver/devtools/v87/web_authn.rb +1 -1
  79. data/lib/selenium/webdriver/devtools/{v84 → v88}/accessibility.rb +12 -3
  80. data/lib/selenium/webdriver/devtools/{v84 → v88}/animation.rb +3 -3
  81. data/lib/selenium/webdriver/devtools/{v84 → v88}/application_cache.rb +3 -3
  82. data/lib/selenium/webdriver/devtools/{v84 → v88}/audits.rb +3 -3
  83. data/lib/selenium/webdriver/devtools/{v84 → v88}/background_service.rb +3 -3
  84. data/lib/selenium/webdriver/devtools/{v84 → v88}/browser.rb +8 -3
  85. data/lib/selenium/webdriver/devtools/{v84 → v88}/cache_storage.rb +3 -3
  86. data/lib/selenium/webdriver/devtools/{v84 → v88}/cast.rb +3 -3
  87. data/lib/selenium/webdriver/devtools/{v84 → v88}/console.rb +3 -3
  88. data/lib/selenium/webdriver/devtools/{v84 → v88}/css.rb +17 -3
  89. data/lib/selenium/webdriver/devtools/{v84 → v88}/database.rb +3 -3
  90. data/lib/selenium/webdriver/devtools/{v84 → v88}/debugger.rb +9 -7
  91. data/lib/selenium/webdriver/devtools/{v84 → v88}/device_orientation.rb +3 -3
  92. data/lib/selenium/webdriver/devtools/{v84 → v88}/dom.rb +10 -3
  93. data/lib/selenium/webdriver/devtools/{v84 → v88}/dom_debugger.rb +3 -3
  94. data/lib/selenium/webdriver/devtools/{v84 → v88}/dom_snapshot.rb +3 -3
  95. data/lib/selenium/webdriver/devtools/{v84 → v88}/dom_storage.rb +3 -3
  96. data/lib/selenium/webdriver/devtools/{v84 → v88}/emulation.rb +21 -5
  97. data/lib/selenium/webdriver/devtools/{v84 → v88}/fetch.rb +3 -3
  98. data/lib/selenium/webdriver/devtools/{v84 → v88}/headless_experimental.rb +3 -3
  99. data/lib/selenium/webdriver/devtools/{v84 → v88}/heap_profiler.rb +3 -3
  100. data/lib/selenium/webdriver/devtools/{v84 → v88}/indexed_db.rb +3 -3
  101. data/lib/selenium/webdriver/devtools/{v84 → v88}/input.rb +12 -6
  102. data/lib/selenium/webdriver/devtools/{v84 → v88}/inspector.rb +3 -3
  103. data/lib/selenium/webdriver/devtools/{v84 → v88}/io.rb +3 -3
  104. data/lib/selenium/webdriver/devtools/{v84 → v88}/layer_tree.rb +3 -3
  105. data/lib/selenium/webdriver/devtools/{v84 → v88}/log.rb +3 -3
  106. data/lib/selenium/webdriver/devtools/{v84 → v88}/media.rb +3 -3
  107. data/lib/selenium/webdriver/devtools/{v84 → v88}/memory.rb +4 -4
  108. data/lib/selenium/webdriver/devtools/{v84 → v88}/network.rb +21 -4
  109. data/lib/selenium/webdriver/devtools/{v84 → v88}/overlay.rb +29 -5
  110. data/lib/selenium/webdriver/devtools/{v84 → v88}/page.rb +4 -4
  111. data/lib/selenium/webdriver/devtools/{v84 → v88}/performance.rb +3 -3
  112. data/lib/selenium/webdriver/devtools/{v84 → v88}/profiler.rb +15 -3
  113. data/lib/selenium/webdriver/devtools/{v84 → v88}/runtime.rb +9 -7
  114. data/lib/selenium/webdriver/devtools/{v84 → v88}/schema.rb +3 -3
  115. data/lib/selenium/webdriver/devtools/{v84 → v88}/security.rb +3 -3
  116. data/lib/selenium/webdriver/devtools/{v84 → v88}/service_worker.rb +3 -3
  117. data/lib/selenium/webdriver/devtools/{v84 → v88}/storage.rb +9 -3
  118. data/lib/selenium/webdriver/devtools/{v84 → v88}/system_info.rb +3 -3
  119. data/lib/selenium/webdriver/devtools/{v84 → v88}/target.rb +7 -5
  120. data/lib/selenium/webdriver/devtools/{v84 → v88}/tethering.rb +3 -3
  121. data/lib/selenium/webdriver/devtools/{v84 → v88}/tracing.rb +6 -5
  122. data/lib/selenium/webdriver/devtools/{v84 → v88}/web_audio.rb +3 -3
  123. data/lib/selenium/webdriver/devtools/{v84 → v88}/web_authn.rb +9 -3
  124. data/lib/selenium/webdriver/edge.rb +7 -29
  125. data/lib/selenium/webdriver/{edge_chrome → edge}/bridge.rb +2 -2
  126. data/lib/selenium/webdriver/{edge_chrome → edge}/driver.rb +4 -4
  127. data/lib/selenium/webdriver/edge/features.rb +39 -0
  128. data/lib/selenium/webdriver/{edge_chrome → edge}/options.rb +9 -3
  129. data/lib/selenium/webdriver/{edge_chrome → edge}/profile.rb +2 -2
  130. data/lib/selenium/webdriver/{edge_chrome → edge}/service.rb +2 -2
  131. data/lib/selenium/webdriver/firefox/driver.rb +13 -0
  132. data/lib/selenium/webdriver/firefox/features.rb +47 -0
  133. data/lib/selenium/webdriver/firefox/options.rb +20 -21
  134. data/lib/selenium/webdriver/firefox/profile.rb +12 -2
  135. data/lib/selenium/webdriver/firefox/service.rb +1 -1
  136. data/lib/selenium/webdriver/ie/options.rb +0 -10
  137. data/lib/selenium/webdriver/ie/service.rb +1 -1
  138. data/lib/selenium/webdriver/remote/bridge.rb +6 -26
  139. data/lib/selenium/webdriver/remote/capabilities.rb +1 -15
  140. data/lib/selenium/webdriver/remote/commands.rb +1 -0
  141. data/lib/selenium/webdriver/remote/driver.rb +6 -1
  142. data/lib/selenium/webdriver/remote/http/default.rb +2 -2
  143. data/lib/selenium/webdriver/remote/http/persistent.rb +6 -0
  144. data/lib/selenium/webdriver/{common/driver_extensions/rotatable.rb → safari/features.rb} +26 -36
  145. data/lib/selenium/webdriver/safari/options.rb +0 -25
  146. data/lib/selenium/webdriver/support/block_event_listener.rb +1 -1
  147. data/lib/selenium/webdriver/support/event_firing_bridge.rb +1 -1
  148. data/lib/selenium/webdriver/version.rb +1 -1
  149. data/selenium-webdriver.gemspec +4 -2
  150. data/selenium_server_deploy.jar +0 -0
  151. metadata +89 -59
  152. data/lib/selenium/webdriver/common/driver_extensions/takes_screenshot.rb +0 -65
  153. data/lib/selenium/webdriver/edge_html/options.rb +0 -84
  154. data/lib/selenium/webdriver/edge_html/service.rb +0 -47
@@ -51,7 +51,7 @@ module Selenium
51
51
  screencast_frame: 'screencastFrame',
52
52
  screencast_visibility_changed: 'screencastVisibilityChanged',
53
53
  window_open: 'windowOpen',
54
- compilation_cache_produced: 'compilationCacheProduced',
54
+ compilation_cache_produced: 'compilationCacheProduced'
55
55
  }.freeze
56
56
 
57
57
  def initialize(devtools)
@@ -166,7 +166,7 @@ module Selenium
166
166
  @devtools.send_cmd('Page.getResourceTree')
167
167
  end
168
168
 
169
- def handle_java_script_dialog(accept:, prompt_text: nil)
169
+ def handle_javascript_dialog(accept:, prompt_text: nil)
170
170
  @devtools.send_cmd('Page.handleJavaScriptDialog',
171
171
  accept: accept,
172
172
  promptText: prompt_text)
@@ -373,4 +373,4 @@ module Selenium
373
373
  end # Page
374
374
  end # DevTools
375
375
  end # WebDriver
376
- end # Selenium
376
+ end # Selenium
@@ -28,7 +28,7 @@ module Selenium
28
28
  module V87
29
29
  class Performance
30
30
  EVENTS = {
31
- metrics: 'metrics',
31
+ metrics: 'metrics'
32
32
  }.freeze
33
33
 
34
34
  def initialize(devtools)
@@ -62,4 +62,4 @@ module Selenium
62
62
  end # Performance
63
63
  end # DevTools
64
64
  end # WebDriver
65
- end # Selenium
65
+ end # Selenium
@@ -30,7 +30,7 @@ module Selenium
30
30
  EVENTS = {
31
31
  console_profile_finished: 'consoleProfileFinished',
32
32
  console_profile_started: 'consoleProfileStarted',
33
- precise_coverage_delta_update: 'preciseCoverageDeltaUpdate',
33
+ precise_coverage_delta_update: 'preciseCoverageDeltaUpdate'
34
34
  }.freeze
35
35
 
36
36
  def initialize(devtools)
@@ -122,4 +122,4 @@ module Selenium
122
122
  end # Profiler
123
123
  end # DevTools
124
124
  end # WebDriver
125
- end # Selenium
125
+ end # Selenium
@@ -35,7 +35,7 @@ module Selenium
35
35
  execution_context_created: 'executionContextCreated',
36
36
  execution_context_destroyed: 'executionContextDestroyed',
37
37
  execution_contexts_cleared: 'executionContextsCleared',
38
- inspect_requested: 'inspectRequested',
38
+ inspect_requested: 'inspectRequested'
39
39
  }.freeze
40
40
 
41
41
  def initialize(devtools)
@@ -193,4 +193,4 @@ module Selenium
193
193
  end # Runtime
194
194
  end # DevTools
195
195
  end # WebDriver
196
- end # Selenium
196
+ end # Selenium
@@ -45,4 +45,4 @@ module Selenium
45
45
  end # Schema
46
46
  end # DevTools
47
47
  end # WebDriver
48
- end # Selenium
48
+ end # Selenium
@@ -30,7 +30,7 @@ module Selenium
30
30
  EVENTS = {
31
31
  certificate_error: 'certificateError',
32
32
  visible_security_state_changed: 'visibleSecurityStateChanged',
33
- security_state_changed: 'securityStateChanged',
33
+ security_state_changed: 'securityStateChanged'
34
34
  }.freeze
35
35
 
36
36
  def initialize(devtools)
@@ -70,4 +70,4 @@ module Selenium
70
70
  end # Security
71
71
  end # DevTools
72
72
  end # WebDriver
73
- end # Selenium
73
+ end # Selenium
@@ -30,7 +30,7 @@ module Selenium
30
30
  EVENTS = {
31
31
  worker_error_reported: 'workerErrorReported',
32
32
  worker_registration_updated: 'workerRegistrationUpdated',
33
- worker_version_updated: 'workerVersionUpdated',
33
+ worker_version_updated: 'workerVersionUpdated'
34
34
  }.freeze
35
35
 
36
36
  def initialize(devtools)
@@ -115,4 +115,4 @@ module Selenium
115
115
  end # ServiceWorker
116
116
  end # DevTools
117
117
  end # WebDriver
118
- end # Selenium
118
+ end # Selenium
@@ -31,7 +31,7 @@ module Selenium
31
31
  cache_storage_content_updated: 'cacheStorageContentUpdated',
32
32
  cache_storage_list_updated: 'cacheStorageListUpdated',
33
33
  indexed_db_content_updated: 'indexedDBContentUpdated',
34
- indexed_db_list_updated: 'indexedDBListUpdated',
34
+ indexed_db_list_updated: 'indexedDBListUpdated'
35
35
  }.freeze
36
36
 
37
37
  def initialize(devtools)
@@ -94,4 +94,4 @@ module Selenium
94
94
  end # Storage
95
95
  end # DevTools
96
96
  end # WebDriver
97
- end # Selenium
97
+ end # Selenium
@@ -49,4 +49,4 @@ module Selenium
49
49
  end # SystemInfo
50
50
  end # DevTools
51
51
  end # WebDriver
52
- end # Selenium
52
+ end # Selenium
@@ -34,7 +34,7 @@ module Selenium
34
34
  target_created: 'targetCreated',
35
35
  target_destroyed: 'targetDestroyed',
36
36
  target_crashed: 'targetCrashed',
37
- target_info_changed: 'targetInfoChanged',
37
+ target_info_changed: 'targetInfoChanged'
38
38
  }.freeze
39
39
 
40
40
  def initialize(devtools)
@@ -142,4 +142,4 @@ module Selenium
142
142
  end # Target
143
143
  end # DevTools
144
144
  end # WebDriver
145
- end # Selenium
145
+ end # Selenium
@@ -28,7 +28,7 @@ module Selenium
28
28
  module V87
29
29
  class Tethering
30
30
  EVENTS = {
31
- accepted: 'accepted',
31
+ accepted: 'accepted'
32
32
  }.freeze
33
33
 
34
34
  def initialize(devtools)
@@ -54,4 +54,4 @@ module Selenium
54
54
  end # Tethering
55
55
  end # DevTools
56
56
  end # WebDriver
57
- end # Selenium
57
+ end # Selenium
@@ -30,7 +30,7 @@ module Selenium
30
30
  EVENTS = {
31
31
  buffer_usage: 'bufferUsage',
32
32
  data_collected: 'dataCollected',
33
- tracing_complete: 'tracingComplete',
33
+ tracing_complete: 'tracingComplete'
34
34
  }.freeze
35
35
 
36
36
  def initialize(devtools)
@@ -75,4 +75,4 @@ module Selenium
75
75
  end # Tracing
76
76
  end # DevTools
77
77
  end # WebDriver
78
- end # Selenium
78
+ end # Selenium
@@ -40,7 +40,7 @@ module Selenium
40
40
  nodes_connected: 'nodesConnected',
41
41
  nodes_disconnected: 'nodesDisconnected',
42
42
  node_param_connected: 'nodeParamConnected',
43
- node_param_disconnected: 'nodeParamDisconnected',
43
+ node_param_disconnected: 'nodeParamDisconnected'
44
44
  }.freeze
45
45
 
46
46
  def initialize(devtools)
@@ -69,4 +69,4 @@ module Selenium
69
69
  end # WebAudio
70
70
  end # DevTools
71
71
  end # WebDriver
72
- end # Selenium
72
+ end # Selenium
@@ -99,4 +99,4 @@ module Selenium
99
99
  end # WebAuthn
100
100
  end # DevTools
101
101
  end # WebDriver
102
- end # Selenium
102
+ end # Selenium
@@ -22,10 +22,10 @@ module Selenium
22
22
  module WebDriver
23
23
  class DevTools
24
24
  def accessibility
25
- @accessibility ||= V84::Accessibility.new(self)
25
+ @accessibility ||= V88::Accessibility.new(self)
26
26
  end
27
27
 
28
- module V84
28
+ module V88
29
29
  class Accessibility
30
30
 
31
31
  def initialize(devtools)
@@ -57,7 +57,16 @@ module Selenium
57
57
  @devtools.send_cmd('Accessibility.getFullAXTree')
58
58
  end
59
59
 
60
- end # V84
60
+ def query_ax_tree(node_id: nil, backend_node_id: nil, object_id: nil, accessible_name: nil, role: nil)
61
+ @devtools.send_cmd('Accessibility.queryAXTree',
62
+ nodeId: node_id,
63
+ backendNodeId: backend_node_id,
64
+ objectId: object_id,
65
+ accessibleName: accessible_name,
66
+ role: role)
67
+ end
68
+
69
+ end # V88
61
70
  end # Accessibility
62
71
  end # DevTools
63
72
  end # WebDriver
@@ -22,10 +22,10 @@ module Selenium
22
22
  module WebDriver
23
23
  class DevTools
24
24
  def animation
25
- @animation ||= V84::Animation.new(self)
25
+ @animation ||= V88::Animation.new(self)
26
26
  end
27
27
 
28
- module V84
28
+ module V88
29
29
  class Animation
30
30
  EVENTS = {
31
31
  animation_canceled: 'animationCanceled',
@@ -93,7 +93,7 @@ module Selenium
93
93
  delay: delay)
94
94
  end
95
95
 
96
- end # V84
96
+ end # V88
97
97
  end # Animation
98
98
  end # DevTools
99
99
  end # WebDriver
@@ -22,10 +22,10 @@ module Selenium
22
22
  module WebDriver
23
23
  class DevTools
24
24
  def application_cache
25
- @application_cache ||= V84::ApplicationCache.new(self)
25
+ @application_cache ||= V88::ApplicationCache.new(self)
26
26
  end
27
27
 
28
- module V84
28
+ module V88
29
29
  class ApplicationCache
30
30
  EVENTS = {
31
31
  application_cache_status_updated: 'applicationCacheStatusUpdated',
@@ -59,7 +59,7 @@ module Selenium
59
59
  frameId: frame_id)
60
60
  end
61
61
 
62
- end # V84
62
+ end # V88
63
63
  end # ApplicationCache
64
64
  end # DevTools
65
65
  end # WebDriver
@@ -22,10 +22,10 @@ module Selenium
22
22
  module WebDriver
23
23
  class DevTools
24
24
  def audits
25
- @audits ||= V84::Audits.new(self)
25
+ @audits ||= V88::Audits.new(self)
26
26
  end
27
27
 
28
- module V84
28
+ module V88
29
29
  class Audits
30
30
  EVENTS = {
31
31
  issue_added: 'issueAdded',
@@ -56,7 +56,7 @@ module Selenium
56
56
  @devtools.send_cmd('Audits.enable')
57
57
  end
58
58
 
59
- end # V84
59
+ end # V88
60
60
  end # Audits
61
61
  end # DevTools
62
62
  end # WebDriver
@@ -22,10 +22,10 @@ module Selenium
22
22
  module WebDriver
23
23
  class DevTools
24
24
  def background_service
25
- @background_service ||= V84::BackgroundService.new(self)
25
+ @background_service ||= V88::BackgroundService.new(self)
26
26
  end
27
27
 
28
- module V84
28
+ module V88
29
29
  class BackgroundService
30
30
  EVENTS = {
31
31
  recording_state_changed: 'recordingStateChanged',
@@ -62,7 +62,7 @@ module Selenium
62
62
  service: service)
63
63
  end
64
64
 
65
- end # V84
65
+ end # V88
66
66
  end # BackgroundService
67
67
  end # DevTools
68
68
  end # WebDriver
@@ -22,10 +22,10 @@ module Selenium
22
22
  module WebDriver
23
23
  class DevTools
24
24
  def browser
25
- @browser ||= V84::Browser.new(self)
25
+ @browser ||= V88::Browser.new(self)
26
26
  end
27
27
 
28
- module V84
28
+ module V88
29
29
  class Browser
30
30
 
31
31
  def initialize(devtools)
@@ -118,7 +118,12 @@ module Selenium
118
118
  image: image)
119
119
  end
120
120
 
121
- end # V84
121
+ def execute_browser_command(command_id:)
122
+ @devtools.send_cmd('Browser.executeBrowserCommand',
123
+ commandId: command_id)
124
+ end
125
+
126
+ end # V88
122
127
  end # Browser
123
128
  end # DevTools
124
129
  end # WebDriver
@@ -22,10 +22,10 @@ module Selenium
22
22
  module WebDriver
23
23
  class DevTools
24
24
  def cache_storage
25
- @cache_storage ||= V84::CacheStorage.new(self)
25
+ @cache_storage ||= V88::CacheStorage.new(self)
26
26
  end
27
27
 
28
- module V84
28
+ module V88
29
29
  class CacheStorage
30
30
 
31
31
  def initialize(devtools)
@@ -68,7 +68,7 @@ module Selenium
68
68
  pathFilter: path_filter)
69
69
  end
70
70
 
71
- end # V84
71
+ end # V88
72
72
  end # CacheStorage
73
73
  end # DevTools
74
74
  end # WebDriver
@@ -22,10 +22,10 @@ module Selenium
22
22
  module WebDriver
23
23
  class DevTools
24
24
  def cast
25
- @cast ||= V84::Cast.new(self)
25
+ @cast ||= V88::Cast.new(self)
26
26
  end
27
27
 
28
- module V84
28
+ module V88
29
29
  class Cast
30
30
  EVENTS = {
31
31
  sinks_updated: 'sinksUpdated',
@@ -65,7 +65,7 @@ module Selenium
65
65
  sinkName: sink_name)
66
66
  end
67
67
 
68
- end # V84
68
+ end # V88
69
69
  end # Cast
70
70
  end # DevTools
71
71
  end # WebDriver
@@ -22,10 +22,10 @@ module Selenium
22
22
  module WebDriver
23
23
  class DevTools
24
24
  def console
25
- @console ||= V84::Console.new(self)
25
+ @console ||= V88::Console.new(self)
26
26
  end
27
27
 
28
- module V84
28
+ module V88
29
29
  class Console
30
30
  EVENTS = {
31
31
  message_added: 'messageAdded',
@@ -52,7 +52,7 @@ module Selenium
52
52
  @devtools.send_cmd('Console.enable')
53
53
  end
54
54
 
55
- end # V84
55
+ end # V88
56
56
  end # Console
57
57
  end # DevTools
58
58
  end # WebDriver
@@ -22,10 +22,10 @@ module Selenium
22
22
  module WebDriver
23
23
  class DevTools
24
24
  def css
25
- @css ||= V84::CSS.new(self)
25
+ @css ||= V88::CSS.new(self)
26
26
  end
27
27
 
28
- module V84
28
+ module V88
29
29
  class CSS
30
30
  EVENTS = {
31
31
  fonts_updated: 'fontsUpdated',
@@ -109,6 +109,15 @@ module Selenium
109
109
  styleSheetId: style_sheet_id)
110
110
  end
111
111
 
112
+ def track_computed_style_updates(properties_to_track:)
113
+ @devtools.send_cmd('CSS.trackComputedStyleUpdates',
114
+ propertiesToTrack: properties_to_track)
115
+ end
116
+
117
+ def take_computed_style_updates
118
+ @devtools.send_cmd('CSS.takeComputedStyleUpdates')
119
+ end
120
+
112
121
  def set_effective_property_value_for_node(node_id:, property_name:, value:)
113
122
  @devtools.send_cmd('CSS.setEffectivePropertyValueForNode',
114
123
  nodeId: node_id,
@@ -160,7 +169,12 @@ module Selenium
160
169
  @devtools.send_cmd('CSS.takeCoverageDelta')
161
170
  end
162
171
 
163
- end # V84
172
+ def set_local_fonts_enabled(enabled:)
173
+ @devtools.send_cmd('CSS.setLocalFontsEnabled',
174
+ enabled: enabled)
175
+ end
176
+
177
+ end # V88
164
178
  end # CSS
165
179
  end # DevTools
166
180
  end # WebDriver