selenium-webdriver 4.0.0.alpha6 → 4.0.0.alpha7

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 (254) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES +41 -4
  3. data/lib/selenium/server.rb +22 -6
  4. data/lib/selenium/webdriver.rb +1 -1
  5. data/lib/selenium/webdriver/atoms/findElements.js +89 -90
  6. data/lib/selenium/webdriver/atoms/getAttribute.js +79 -59
  7. data/lib/selenium/webdriver/atoms/isDisplayed.js +72 -72
  8. data/lib/selenium/webdriver/atoms/mutationListener.js +38 -0
  9. data/lib/selenium/webdriver/chrome/driver.rb +8 -1
  10. data/lib/selenium/webdriver/chrome/options.rb +1 -1
  11. data/lib/selenium/webdriver/chrome/profile.rb +1 -1
  12. data/lib/selenium/webdriver/common.rb +3 -1
  13. data/lib/selenium/webdriver/common/driver.rb +5 -0
  14. data/lib/selenium/webdriver/common/driver_extensions/has_authentication.rb +89 -0
  15. data/lib/selenium/webdriver/common/driver_extensions/has_devtools.rb +2 -1
  16. data/lib/selenium/webdriver/common/driver_extensions/has_log_events.rb +143 -0
  17. data/lib/selenium/webdriver/common/element.rb +5 -0
  18. data/lib/selenium/webdriver/common/options.rb +3 -3
  19. data/lib/selenium/webdriver/common/platform.rb +1 -1
  20. data/lib/selenium/webdriver/common/takes_screenshot.rb +63 -0
  21. data/lib/selenium/webdriver/devtools.rb +18 -4
  22. data/lib/selenium/webdriver/devtools/console_event.rb +38 -0
  23. data/lib/selenium/webdriver/devtools/exception_event.rb +36 -0
  24. data/lib/selenium/webdriver/devtools/mutation_event.rb +37 -0
  25. data/lib/selenium/webdriver/devtools/v84/accessibility.rb +64 -0
  26. data/lib/selenium/webdriver/devtools/v84/animation.rb +100 -0
  27. data/lib/selenium/webdriver/devtools/v84/application_cache.rb +66 -0
  28. data/lib/selenium/webdriver/devtools/{audits.rb → v84/audits.rb} +33 -31
  29. data/lib/selenium/webdriver/devtools/v84/background_service.rb +69 -0
  30. data/lib/selenium/webdriver/devtools/v84/browser.rb +125 -0
  31. data/lib/selenium/webdriver/devtools/v84/cache_storage.rb +75 -0
  32. data/lib/selenium/webdriver/devtools/v84/cast.rb +72 -0
  33. data/lib/selenium/webdriver/devtools/v84/console.rb +59 -0
  34. data/lib/selenium/webdriver/devtools/v84/css.rb +167 -0
  35. data/lib/selenium/webdriver/devtools/v84/database.rb +66 -0
  36. data/lib/selenium/webdriver/devtools/v84/debugger.rb +231 -0
  37. data/lib/selenium/webdriver/devtools/{device_orientation.rb → v84/device_orientation.rb} +20 -18
  38. data/lib/selenium/webdriver/devtools/v84/dom.rb +322 -0
  39. data/lib/selenium/webdriver/devtools/v84/dom_debugger.rb +95 -0
  40. data/lib/selenium/webdriver/devtools/v84/dom_snapshot.rb +67 -0
  41. data/lib/selenium/webdriver/devtools/v84/dom_storage.rb +81 -0
  42. data/lib/selenium/webdriver/devtools/v84/emulation.rb +182 -0
  43. data/lib/selenium/webdriver/devtools/v84/fetch.rb +99 -0
  44. data/lib/selenium/webdriver/devtools/v84/headless_experimental.rb +63 -0
  45. data/lib/selenium/webdriver/devtools/v84/heap_profiler.rb +109 -0
  46. data/lib/selenium/webdriver/devtools/v84/indexed_db.rb +102 -0
  47. data/lib/selenium/webdriver/devtools/v84/input.rb +142 -0
  48. data/lib/selenium/webdriver/devtools/{inspector.rb → v84/inspector.rb} +22 -20
  49. data/lib/selenium/webdriver/devtools/{io.rb → v84/io.rb} +25 -23
  50. data/lib/selenium/webdriver/devtools/v84/layer_tree.rb +97 -0
  51. data/lib/selenium/webdriver/devtools/{database.rb → v84/log.rb} +33 -29
  52. data/lib/selenium/webdriver/devtools/{media.rb → v84/media.rb} +29 -27
  53. data/lib/selenium/webdriver/devtools/v84/memory.rb +88 -0
  54. data/lib/selenium/webdriver/devtools/v84/network.rb +230 -0
  55. data/lib/selenium/webdriver/devtools/v84/overlay.rb +159 -0
  56. data/lib/selenium/webdriver/devtools/v84/page.rb +376 -0
  57. data/lib/selenium/webdriver/devtools/{performance.rb → v84/performance.rb} +28 -26
  58. data/lib/selenium/webdriver/devtools/v84/profiler.rb +113 -0
  59. data/lib/selenium/webdriver/devtools/v84/runtime.rb +195 -0
  60. data/lib/selenium/webdriver/devtools/{schema.rb → v84/schema.rb} +14 -12
  61. data/lib/selenium/webdriver/devtools/v84/security.rb +73 -0
  62. data/lib/selenium/webdriver/devtools/v84/service_worker.rb +118 -0
  63. data/lib/selenium/webdriver/devtools/v84/storage.rb +97 -0
  64. data/lib/selenium/webdriver/devtools/{system_info.rb → v84/system_info.rb} +17 -15
  65. data/lib/selenium/webdriver/devtools/v84/target.rb +143 -0
  66. data/lib/selenium/webdriver/devtools/v84/tethering.rb +57 -0
  67. data/lib/selenium/webdriver/devtools/v84/tracing.rb +78 -0
  68. data/lib/selenium/webdriver/devtools/v84/web_audio.rb +72 -0
  69. data/lib/selenium/webdriver/devtools/v84/web_authn.rb +96 -0
  70. data/lib/selenium/webdriver/devtools/v85/accessibility.rb +64 -0
  71. data/lib/selenium/webdriver/devtools/v85/animation.rb +100 -0
  72. data/lib/selenium/webdriver/devtools/v85/application_cache.rb +66 -0
  73. data/lib/selenium/webdriver/devtools/v85/audits.rb +63 -0
  74. data/lib/selenium/webdriver/devtools/v85/background_service.rb +69 -0
  75. data/lib/selenium/webdriver/devtools/v85/browser.rb +125 -0
  76. data/lib/selenium/webdriver/devtools/v85/cache_storage.rb +75 -0
  77. data/lib/selenium/webdriver/devtools/v85/cast.rb +72 -0
  78. data/lib/selenium/webdriver/devtools/v85/console.rb +59 -0
  79. data/lib/selenium/webdriver/devtools/v85/css.rb +167 -0
  80. data/lib/selenium/webdriver/devtools/v85/database.rb +66 -0
  81. data/lib/selenium/webdriver/devtools/v85/debugger.rb +231 -0
  82. data/lib/selenium/webdriver/devtools/v85/device_orientation.rb +55 -0
  83. data/lib/selenium/webdriver/devtools/v85/dom.rb +322 -0
  84. data/lib/selenium/webdriver/devtools/v85/dom_debugger.rb +95 -0
  85. data/lib/selenium/webdriver/devtools/v85/dom_snapshot.rb +67 -0
  86. data/lib/selenium/webdriver/devtools/v85/dom_storage.rb +81 -0
  87. data/lib/selenium/webdriver/devtools/v85/emulation.rb +182 -0
  88. data/lib/selenium/webdriver/devtools/v85/fetch.rb +99 -0
  89. data/lib/selenium/webdriver/devtools/v85/headless_experimental.rb +63 -0
  90. data/lib/selenium/webdriver/devtools/v85/heap_profiler.rb +109 -0
  91. data/lib/selenium/webdriver/devtools/v85/indexed_db.rb +102 -0
  92. data/lib/selenium/webdriver/devtools/v85/input.rb +143 -0
  93. data/lib/selenium/webdriver/devtools/v85/inspector.rb +57 -0
  94. data/lib/selenium/webdriver/devtools/{log.rb → v85/io.rb} +33 -38
  95. data/lib/selenium/webdriver/devtools/v85/layer_tree.rb +97 -0
  96. data/lib/selenium/webdriver/devtools/v85/log.rb +68 -0
  97. data/lib/selenium/webdriver/devtools/v85/media.rb +59 -0
  98. data/lib/selenium/webdriver/devtools/v85/memory.rb +88 -0
  99. data/lib/selenium/webdriver/devtools/v85/network.rb +230 -0
  100. data/lib/selenium/webdriver/devtools/v85/overlay.rb +160 -0
  101. data/lib/selenium/webdriver/devtools/v85/page.rb +376 -0
  102. data/lib/selenium/webdriver/devtools/v85/performance.rb +65 -0
  103. data/lib/selenium/webdriver/devtools/v85/profiler.rb +113 -0
  104. data/lib/selenium/webdriver/devtools/v85/runtime.rb +196 -0
  105. data/lib/selenium/webdriver/devtools/v85/schema.rb +48 -0
  106. data/lib/selenium/webdriver/devtools/v85/security.rb +73 -0
  107. data/lib/selenium/webdriver/devtools/v85/service_worker.rb +118 -0
  108. data/lib/selenium/webdriver/devtools/v85/storage.rb +97 -0
  109. data/lib/selenium/webdriver/devtools/{console.rb → v85/system_info.rb} +19 -24
  110. data/lib/selenium/webdriver/devtools/v85/target.rb +145 -0
  111. data/lib/selenium/webdriver/devtools/v85/tethering.rb +57 -0
  112. data/lib/selenium/webdriver/devtools/v85/tracing.rb +78 -0
  113. data/lib/selenium/webdriver/devtools/v85/web_audio.rb +72 -0
  114. data/lib/selenium/webdriver/devtools/v85/web_authn.rb +96 -0
  115. data/lib/selenium/webdriver/devtools/v86/accessibility.rb +64 -0
  116. data/lib/selenium/webdriver/devtools/v86/animation.rb +100 -0
  117. data/lib/selenium/webdriver/devtools/v86/application_cache.rb +66 -0
  118. data/lib/selenium/webdriver/devtools/v86/audits.rb +63 -0
  119. data/lib/selenium/webdriver/devtools/v86/background_service.rb +69 -0
  120. data/lib/selenium/webdriver/devtools/v86/browser.rb +125 -0
  121. data/lib/selenium/webdriver/devtools/v86/cache_storage.rb +75 -0
  122. data/lib/selenium/webdriver/devtools/v86/cast.rb +72 -0
  123. data/lib/selenium/webdriver/devtools/v86/console.rb +59 -0
  124. data/lib/selenium/webdriver/devtools/v86/css.rb +181 -0
  125. data/lib/selenium/webdriver/devtools/v86/database.rb +66 -0
  126. data/lib/selenium/webdriver/devtools/v86/debugger.rb +233 -0
  127. data/lib/selenium/webdriver/devtools/v86/device_orientation.rb +55 -0
  128. data/lib/selenium/webdriver/devtools/v86/dom.rb +329 -0
  129. data/lib/selenium/webdriver/devtools/v86/dom_debugger.rb +95 -0
  130. data/lib/selenium/webdriver/devtools/v86/dom_snapshot.rb +67 -0
  131. data/lib/selenium/webdriver/devtools/v86/dom_storage.rb +81 -0
  132. data/lib/selenium/webdriver/devtools/v86/emulation.rb +193 -0
  133. data/lib/selenium/webdriver/devtools/v86/fetch.rb +99 -0
  134. data/lib/selenium/webdriver/devtools/v86/headless_experimental.rb +63 -0
  135. data/lib/selenium/webdriver/devtools/v86/heap_profiler.rb +109 -0
  136. data/lib/selenium/webdriver/devtools/v86/indexed_db.rb +102 -0
  137. data/lib/selenium/webdriver/devtools/v86/input.rb +143 -0
  138. data/lib/selenium/webdriver/devtools/v86/inspector.rb +57 -0
  139. data/lib/selenium/webdriver/devtools/v86/io.rb +61 -0
  140. data/lib/selenium/webdriver/devtools/v86/layer_tree.rb +97 -0
  141. data/lib/selenium/webdriver/devtools/v86/log.rb +68 -0
  142. data/lib/selenium/webdriver/devtools/v86/media.rb +59 -0
  143. data/lib/selenium/webdriver/devtools/v86/memory.rb +88 -0
  144. data/lib/selenium/webdriver/devtools/v86/network.rb +235 -0
  145. data/lib/selenium/webdriver/devtools/v86/overlay.rb +183 -0
  146. data/lib/selenium/webdriver/devtools/v86/page.rb +376 -0
  147. data/lib/selenium/webdriver/devtools/v86/performance.rb +65 -0
  148. data/lib/selenium/webdriver/devtools/v86/profiler.rb +113 -0
  149. data/lib/selenium/webdriver/devtools/v86/runtime.rb +196 -0
  150. data/lib/selenium/webdriver/devtools/v86/schema.rb +48 -0
  151. data/lib/selenium/webdriver/devtools/v86/security.rb +73 -0
  152. data/lib/selenium/webdriver/devtools/v86/service_worker.rb +118 -0
  153. data/lib/selenium/webdriver/devtools/v86/storage.rb +97 -0
  154. data/lib/selenium/webdriver/devtools/{tethering.rb → v86/system_info.rb} +19 -22
  155. data/lib/selenium/webdriver/devtools/v86/target.rb +145 -0
  156. data/lib/selenium/webdriver/devtools/v86/tethering.rb +57 -0
  157. data/lib/selenium/webdriver/devtools/v86/tracing.rb +78 -0
  158. data/lib/selenium/webdriver/devtools/v86/web_audio.rb +72 -0
  159. data/lib/selenium/webdriver/devtools/v86/web_authn.rb +102 -0
  160. data/lib/selenium/webdriver/devtools/v87/accessibility.rb +73 -0
  161. data/lib/selenium/webdriver/devtools/v87/animation.rb +100 -0
  162. data/lib/selenium/webdriver/devtools/v87/application_cache.rb +66 -0
  163. data/lib/selenium/webdriver/devtools/v87/audits.rb +63 -0
  164. data/lib/selenium/webdriver/devtools/v87/background_service.rb +69 -0
  165. data/lib/selenium/webdriver/devtools/v87/browser.rb +125 -0
  166. data/lib/selenium/webdriver/devtools/v87/cache_storage.rb +75 -0
  167. data/lib/selenium/webdriver/devtools/v87/cast.rb +72 -0
  168. data/lib/selenium/webdriver/devtools/v87/console.rb +59 -0
  169. data/lib/selenium/webdriver/devtools/v87/css.rb +181 -0
  170. data/lib/selenium/webdriver/devtools/v87/database.rb +66 -0
  171. data/lib/selenium/webdriver/devtools/v87/debugger.rb +233 -0
  172. data/lib/selenium/webdriver/devtools/v87/device_orientation.rb +55 -0
  173. data/lib/selenium/webdriver/devtools/v87/dom.rb +329 -0
  174. data/lib/selenium/webdriver/devtools/v87/dom_debugger.rb +95 -0
  175. data/lib/selenium/webdriver/devtools/v87/dom_snapshot.rb +67 -0
  176. data/lib/selenium/webdriver/devtools/v87/dom_storage.rb +81 -0
  177. data/lib/selenium/webdriver/devtools/v87/emulation.rb +193 -0
  178. data/lib/selenium/webdriver/devtools/v87/fetch.rb +99 -0
  179. data/lib/selenium/webdriver/devtools/v87/headless_experimental.rb +63 -0
  180. data/lib/selenium/webdriver/devtools/v87/heap_profiler.rb +109 -0
  181. data/lib/selenium/webdriver/devtools/v87/indexed_db.rb +102 -0
  182. data/lib/selenium/webdriver/devtools/v87/input.rb +143 -0
  183. data/lib/selenium/webdriver/devtools/v87/inspector.rb +57 -0
  184. data/lib/selenium/webdriver/devtools/v87/io.rb +61 -0
  185. data/lib/selenium/webdriver/devtools/v87/layer_tree.rb +97 -0
  186. data/lib/selenium/webdriver/devtools/v87/log.rb +68 -0
  187. data/lib/selenium/webdriver/devtools/v87/media.rb +59 -0
  188. data/lib/selenium/webdriver/devtools/v87/memory.rb +88 -0
  189. data/lib/selenium/webdriver/devtools/v87/network.rb +247 -0
  190. data/lib/selenium/webdriver/devtools/v87/overlay.rb +183 -0
  191. data/lib/selenium/webdriver/devtools/v87/page.rb +376 -0
  192. data/lib/selenium/webdriver/devtools/v87/performance.rb +65 -0
  193. data/lib/selenium/webdriver/devtools/v87/profiler.rb +125 -0
  194. data/lib/selenium/webdriver/devtools/v87/runtime.rb +196 -0
  195. data/lib/selenium/webdriver/devtools/v87/schema.rb +48 -0
  196. data/lib/selenium/webdriver/devtools/v87/security.rb +73 -0
  197. data/lib/selenium/webdriver/devtools/v87/service_worker.rb +118 -0
  198. data/lib/selenium/webdriver/devtools/v87/storage.rb +97 -0
  199. data/lib/selenium/webdriver/devtools/v87/system_info.rb +52 -0
  200. data/lib/selenium/webdriver/devtools/v87/target.rb +145 -0
  201. data/lib/selenium/webdriver/devtools/v87/tethering.rb +57 -0
  202. data/lib/selenium/webdriver/devtools/v87/tracing.rb +78 -0
  203. data/lib/selenium/webdriver/devtools/v87/web_audio.rb +72 -0
  204. data/lib/selenium/webdriver/devtools/v87/web_authn.rb +102 -0
  205. data/lib/selenium/webdriver/edge.rb +2 -2
  206. data/lib/selenium/webdriver/edge_chrome/driver.rb +6 -0
  207. data/lib/selenium/webdriver/edge_chrome/options.rb +2 -1
  208. data/lib/selenium/webdriver/edge_html/driver.rb +1 -2
  209. data/lib/selenium/webdriver/firefox/driver.rb +0 -1
  210. data/lib/selenium/webdriver/ie/driver.rb +0 -1
  211. data/lib/selenium/webdriver/ie/options.rb +1 -1
  212. data/lib/selenium/webdriver/remote/bridge.rb +4 -0
  213. data/lib/selenium/webdriver/remote/capabilities.rb +4 -2
  214. data/lib/selenium/webdriver/remote/driver.rb +0 -1
  215. data/lib/selenium/webdriver/remote/http/default.rb +1 -2
  216. data/lib/selenium/webdriver/safari.rb +7 -0
  217. data/lib/selenium/webdriver/safari/driver.rb +0 -1
  218. data/lib/selenium/webdriver/version.rb +1 -1
  219. data/selenium-webdriver.gemspec +3 -3
  220. metadata +193 -52
  221. data/lib/selenium/webdriver/devtools/accessibility.rb +0 -62
  222. data/lib/selenium/webdriver/devtools/animation.rb +0 -98
  223. data/lib/selenium/webdriver/devtools/application_cache.rb +0 -64
  224. data/lib/selenium/webdriver/devtools/background_service.rb +0 -67
  225. data/lib/selenium/webdriver/devtools/browser.rb +0 -123
  226. data/lib/selenium/webdriver/devtools/cache_storage.rb +0 -73
  227. data/lib/selenium/webdriver/devtools/cast.rb +0 -70
  228. data/lib/selenium/webdriver/devtools/css.rb +0 -165
  229. data/lib/selenium/webdriver/devtools/debugger.rb +0 -229
  230. data/lib/selenium/webdriver/devtools/dom.rb +0 -320
  231. data/lib/selenium/webdriver/devtools/domdebugger.rb +0 -93
  232. data/lib/selenium/webdriver/devtools/domsnapshot.rb +0 -65
  233. data/lib/selenium/webdriver/devtools/domstorage.rb +0 -79
  234. data/lib/selenium/webdriver/devtools/emulation.rb +0 -180
  235. data/lib/selenium/webdriver/devtools/fetch.rb +0 -97
  236. data/lib/selenium/webdriver/devtools/headless_experimental.rb +0 -61
  237. data/lib/selenium/webdriver/devtools/heap_profiler.rb +0 -107
  238. data/lib/selenium/webdriver/devtools/indexed_db.rb +0 -100
  239. data/lib/selenium/webdriver/devtools/input.rb +0 -140
  240. data/lib/selenium/webdriver/devtools/layer_tree.rb +0 -95
  241. data/lib/selenium/webdriver/devtools/memory.rb +0 -86
  242. data/lib/selenium/webdriver/devtools/network.rb +0 -228
  243. data/lib/selenium/webdriver/devtools/overlay.rb +0 -157
  244. data/lib/selenium/webdriver/devtools/page.rb +0 -374
  245. data/lib/selenium/webdriver/devtools/profiler.rb +0 -111
  246. data/lib/selenium/webdriver/devtools/runtime.rb +0 -193
  247. data/lib/selenium/webdriver/devtools/security.rb +0 -71
  248. data/lib/selenium/webdriver/devtools/service_worker.rb +0 -116
  249. data/lib/selenium/webdriver/devtools/storage.rb +0 -95
  250. data/lib/selenium/webdriver/devtools/target.rb +0 -141
  251. data/lib/selenium/webdriver/devtools/tracing.rb +0 -76
  252. data/lib/selenium/webdriver/devtools/web_audio.rb +0 -70
  253. data/lib/selenium/webdriver/devtools/web_authn.rb +0 -94
  254. data/lib/selenium/webdriver/support/cdp_client_generator.rb +0 -77
@@ -22,41 +22,43 @@ module Selenium
22
22
  module WebDriver
23
23
  class DevTools
24
24
  def performance
25
- @performance ||= Performance.new(self)
25
+ @performance ||= V84::Performance.new(self)
26
26
  end
27
27
 
28
- class Performance
29
- EVENTS = {
30
- metrics: 'metrics',
31
- }
28
+ module V84
29
+ class Performance
30
+ EVENTS = {
31
+ metrics: 'metrics',
32
+ }.freeze
32
33
 
33
- def initialize(devtools)
34
- @devtools = devtools
35
- end
34
+ def initialize(devtools)
35
+ @devtools = devtools
36
+ end
36
37
 
37
- def on(event, &block)
38
- event = EVENTS[event] if event.is_a?(Symbol)
39
- @devtools.callbacks["Performance.#{event}"] << block
40
- end
38
+ def on(event, &block)
39
+ event = EVENTS[event] if event.is_a?(Symbol)
40
+ @devtools.callbacks["Performance.#{event}"] << block
41
+ end
41
42
 
42
- def disable
43
- @devtools.send_cmd('Performance.disable')
44
- end
43
+ def disable
44
+ @devtools.send_cmd('Performance.disable')
45
+ end
45
46
 
46
- def enable(time_domain: nil)
47
- @devtools.send_cmd('Performance.enable',
48
- timeDomain: time_domain)
49
- end
47
+ def enable(time_domain: nil)
48
+ @devtools.send_cmd('Performance.enable',
49
+ timeDomain: time_domain)
50
+ end
50
51
 
51
- def set_time_domain(time_domain:)
52
- @devtools.send_cmd('Performance.setTimeDomain',
53
- timeDomain: time_domain)
54
- end
52
+ def set_time_domain(time_domain:)
53
+ @devtools.send_cmd('Performance.setTimeDomain',
54
+ timeDomain: time_domain)
55
+ end
55
56
 
56
- def get_metrics
57
- @devtools.send_cmd('Performance.getMetrics')
58
- end
57
+ def get_metrics
58
+ @devtools.send_cmd('Performance.getMetrics')
59
+ end
59
60
 
61
+ end # V84
60
62
  end # Performance
61
63
  end # DevTools
62
64
  end # WebDriver
@@ -0,0 +1,113 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Licensed to the Software Freedom Conservancy (SFC) under one
4
+ # or more contributor license agreements. See the NOTICE file
5
+ # distributed with this work for additional information
6
+ # regarding copyright ownership. The SFC licenses this file
7
+ # to you under the Apache License, Version 2.0 (the
8
+ # "License"); you may not use this file except in compliance
9
+ # with the License. You may obtain a copy of the License at
10
+ #
11
+ # http://www.apache.org/licenses/LICENSE-2.0
12
+ #
13
+ # Unless required by applicable law or agreed to in writing,
14
+ # software distributed under the License is distributed on an
15
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16
+ # KIND, either express or implied. See the License for the
17
+ # specific language governing permissions and limitations
18
+ # under the License.
19
+
20
+ # This file is automatically generated. Any changes will be lost!
21
+ module Selenium
22
+ module WebDriver
23
+ class DevTools
24
+ def profiler
25
+ @profiler ||= V84::Profiler.new(self)
26
+ end
27
+
28
+ module V84
29
+ class Profiler
30
+ EVENTS = {
31
+ console_profile_finished: 'consoleProfileFinished',
32
+ console_profile_started: 'consoleProfileStarted',
33
+ precise_coverage_delta_update: 'preciseCoverageDeltaUpdate',
34
+ }.freeze
35
+
36
+ def initialize(devtools)
37
+ @devtools = devtools
38
+ end
39
+
40
+ def on(event, &block)
41
+ event = EVENTS[event] if event.is_a?(Symbol)
42
+ @devtools.callbacks["Profiler.#{event}"] << block
43
+ end
44
+
45
+ def disable
46
+ @devtools.send_cmd('Profiler.disable')
47
+ end
48
+
49
+ def enable
50
+ @devtools.send_cmd('Profiler.enable')
51
+ end
52
+
53
+ def get_best_effort_coverage
54
+ @devtools.send_cmd('Profiler.getBestEffortCoverage')
55
+ end
56
+
57
+ def set_sampling_interval(interval:)
58
+ @devtools.send_cmd('Profiler.setSamplingInterval',
59
+ interval: interval)
60
+ end
61
+
62
+ def start
63
+ @devtools.send_cmd('Profiler.start')
64
+ end
65
+
66
+ def start_precise_coverage(call_count: nil, detailed: nil, allow_triggered_updates: nil)
67
+ @devtools.send_cmd('Profiler.startPreciseCoverage',
68
+ callCount: call_count,
69
+ detailed: detailed,
70
+ allowTriggeredUpdates: allow_triggered_updates)
71
+ end
72
+
73
+ def start_type_profile
74
+ @devtools.send_cmd('Profiler.startTypeProfile')
75
+ end
76
+
77
+ def stop
78
+ @devtools.send_cmd('Profiler.stop')
79
+ end
80
+
81
+ def stop_precise_coverage
82
+ @devtools.send_cmd('Profiler.stopPreciseCoverage')
83
+ end
84
+
85
+ def stop_type_profile
86
+ @devtools.send_cmd('Profiler.stopTypeProfile')
87
+ end
88
+
89
+ def take_precise_coverage
90
+ @devtools.send_cmd('Profiler.takePreciseCoverage')
91
+ end
92
+
93
+ def take_type_profile
94
+ @devtools.send_cmd('Profiler.takeTypeProfile')
95
+ end
96
+
97
+ def enable_runtime_call_stats
98
+ @devtools.send_cmd('Profiler.enableRuntimeCallStats')
99
+ end
100
+
101
+ def disable_runtime_call_stats
102
+ @devtools.send_cmd('Profiler.disableRuntimeCallStats')
103
+ end
104
+
105
+ def get_runtime_call_stats
106
+ @devtools.send_cmd('Profiler.getRuntimeCallStats')
107
+ end
108
+
109
+ end # V84
110
+ end # Profiler
111
+ end # DevTools
112
+ end # WebDriver
113
+ end # Selenium
@@ -0,0 +1,195 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Licensed to the Software Freedom Conservancy (SFC) under one
4
+ # or more contributor license agreements. See the NOTICE file
5
+ # distributed with this work for additional information
6
+ # regarding copyright ownership. The SFC licenses this file
7
+ # to you under the Apache License, Version 2.0 (the
8
+ # "License"); you may not use this file except in compliance
9
+ # with the License. You may obtain a copy of the License at
10
+ #
11
+ # http://www.apache.org/licenses/LICENSE-2.0
12
+ #
13
+ # Unless required by applicable law or agreed to in writing,
14
+ # software distributed under the License is distributed on an
15
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16
+ # KIND, either express or implied. See the License for the
17
+ # specific language governing permissions and limitations
18
+ # under the License.
19
+
20
+ # This file is automatically generated. Any changes will be lost!
21
+ module Selenium
22
+ module WebDriver
23
+ class DevTools
24
+ def runtime
25
+ @runtime ||= V84::Runtime.new(self)
26
+ end
27
+
28
+ module V84
29
+ class Runtime
30
+ EVENTS = {
31
+ binding_called: 'bindingCalled',
32
+ console_api_called: 'consoleAPICalled',
33
+ exception_revoked: 'exceptionRevoked',
34
+ exception_thrown: 'exceptionThrown',
35
+ execution_context_created: 'executionContextCreated',
36
+ execution_context_destroyed: 'executionContextDestroyed',
37
+ execution_contexts_cleared: 'executionContextsCleared',
38
+ inspect_requested: 'inspectRequested',
39
+ }.freeze
40
+
41
+ def initialize(devtools)
42
+ @devtools = devtools
43
+ end
44
+
45
+ def on(event, &block)
46
+ event = EVENTS[event] if event.is_a?(Symbol)
47
+ @devtools.callbacks["Runtime.#{event}"] << block
48
+ end
49
+
50
+ def await_promise(promise_object_id:, return_by_value: nil, generate_preview: nil)
51
+ @devtools.send_cmd('Runtime.awaitPromise',
52
+ promiseObjectId: promise_object_id,
53
+ returnByValue: return_by_value,
54
+ generatePreview: generate_preview)
55
+ end
56
+
57
+ def call_function_on(function_declaration:, object_id: nil, arguments: nil, silent: nil, return_by_value: nil, generate_preview: nil, user_gesture: nil, await_promise: nil, execution_context_id: nil, object_group: nil)
58
+ @devtools.send_cmd('Runtime.callFunctionOn',
59
+ functionDeclaration: function_declaration,
60
+ objectId: object_id,
61
+ arguments: arguments,
62
+ silent: silent,
63
+ returnByValue: return_by_value,
64
+ generatePreview: generate_preview,
65
+ userGesture: user_gesture,
66
+ awaitPromise: await_promise,
67
+ executionContextId: execution_context_id,
68
+ objectGroup: object_group)
69
+ end
70
+
71
+ def compile_script(expression:, source_url:, persist_script:, execution_context_id: nil)
72
+ @devtools.send_cmd('Runtime.compileScript',
73
+ expression: expression,
74
+ sourceURL: source_url,
75
+ persistScript: persist_script,
76
+ executionContextId: execution_context_id)
77
+ end
78
+
79
+ def disable
80
+ @devtools.send_cmd('Runtime.disable')
81
+ end
82
+
83
+ def discard_console_entries
84
+ @devtools.send_cmd('Runtime.discardConsoleEntries')
85
+ end
86
+
87
+ def enable
88
+ @devtools.send_cmd('Runtime.enable')
89
+ end
90
+
91
+ def evaluate(expression:, object_group: nil, include_command_line_api: nil, silent: nil, context_id: nil, return_by_value: nil, generate_preview: nil, user_gesture: nil, await_promise: nil, throw_on_side_effect: nil, timeout: nil, disable_breaks: nil, repl_mode: nil)
92
+ @devtools.send_cmd('Runtime.evaluate',
93
+ expression: expression,
94
+ objectGroup: object_group,
95
+ includeCommandLineAPI: include_command_line_api,
96
+ silent: silent,
97
+ contextId: context_id,
98
+ returnByValue: return_by_value,
99
+ generatePreview: generate_preview,
100
+ userGesture: user_gesture,
101
+ awaitPromise: await_promise,
102
+ throwOnSideEffect: throw_on_side_effect,
103
+ timeout: timeout,
104
+ disableBreaks: disable_breaks,
105
+ replMode: repl_mode)
106
+ end
107
+
108
+ def get_isolate_id
109
+ @devtools.send_cmd('Runtime.getIsolateId')
110
+ end
111
+
112
+ def get_heap_usage
113
+ @devtools.send_cmd('Runtime.getHeapUsage')
114
+ end
115
+
116
+ def get_properties(object_id:, own_properties: nil, accessor_properties_only: nil, generate_preview: nil)
117
+ @devtools.send_cmd('Runtime.getProperties',
118
+ objectId: object_id,
119
+ ownProperties: own_properties,
120
+ accessorPropertiesOnly: accessor_properties_only,
121
+ generatePreview: generate_preview)
122
+ end
123
+
124
+ def global_lexical_scope_names(execution_context_id: nil)
125
+ @devtools.send_cmd('Runtime.globalLexicalScopeNames',
126
+ executionContextId: execution_context_id)
127
+ end
128
+
129
+ def query_objects(prototype_object_id:, object_group: nil)
130
+ @devtools.send_cmd('Runtime.queryObjects',
131
+ prototypeObjectId: prototype_object_id,
132
+ objectGroup: object_group)
133
+ end
134
+
135
+ def release_object(object_id:)
136
+ @devtools.send_cmd('Runtime.releaseObject',
137
+ objectId: object_id)
138
+ end
139
+
140
+ def release_object_group(object_group:)
141
+ @devtools.send_cmd('Runtime.releaseObjectGroup',
142
+ objectGroup: object_group)
143
+ end
144
+
145
+ def run_if_waiting_for_debugger
146
+ @devtools.send_cmd('Runtime.runIfWaitingForDebugger')
147
+ end
148
+
149
+ def run_script(script_id:, execution_context_id: nil, object_group: nil, silent: nil, include_command_line_api: nil, return_by_value: nil, generate_preview: nil, await_promise: nil)
150
+ @devtools.send_cmd('Runtime.runScript',
151
+ scriptId: script_id,
152
+ executionContextId: execution_context_id,
153
+ objectGroup: object_group,
154
+ silent: silent,
155
+ includeCommandLineAPI: include_command_line_api,
156
+ returnByValue: return_by_value,
157
+ generatePreview: generate_preview,
158
+ awaitPromise: await_promise)
159
+ end
160
+
161
+ def set_async_call_stack_depth(max_depth:)
162
+ @devtools.send_cmd('Runtime.setAsyncCallStackDepth',
163
+ maxDepth: max_depth)
164
+ end
165
+
166
+ def set_custom_object_formatter_enabled(enabled:)
167
+ @devtools.send_cmd('Runtime.setCustomObjectFormatterEnabled',
168
+ enabled: enabled)
169
+ end
170
+
171
+ def set_max_call_stack_size_to_capture(size:)
172
+ @devtools.send_cmd('Runtime.setMaxCallStackSizeToCapture',
173
+ size: size)
174
+ end
175
+
176
+ def terminate_execution
177
+ @devtools.send_cmd('Runtime.terminateExecution')
178
+ end
179
+
180
+ def add_binding(name:, execution_context_id: nil)
181
+ @devtools.send_cmd('Runtime.addBinding',
182
+ name: name,
183
+ executionContextId: execution_context_id)
184
+ end
185
+
186
+ def remove_binding(name:)
187
+ @devtools.send_cmd('Runtime.removeBinding',
188
+ name: name)
189
+ end
190
+
191
+ end # V84
192
+ end # Runtime
193
+ end # DevTools
194
+ end # WebDriver
195
+ end # Selenium
@@ -22,24 +22,26 @@ module Selenium
22
22
  module WebDriver
23
23
  class DevTools
24
24
  def schema
25
- @schema ||= Schema.new(self)
25
+ @schema ||= V84::Schema.new(self)
26
26
  end
27
27
 
28
- class Schema
28
+ module V84
29
+ class Schema
29
30
 
30
- def initialize(devtools)
31
- @devtools = devtools
32
- end
31
+ def initialize(devtools)
32
+ @devtools = devtools
33
+ end
33
34
 
34
- def on(event, &block)
35
- event = EVENTS[event] if event.is_a?(Symbol)
36
- @devtools.callbacks["Schema.#{event}"] << block
37
- end
35
+ def on(event, &block)
36
+ event = EVENTS[event] if event.is_a?(Symbol)
37
+ @devtools.callbacks["Schema.#{event}"] << block
38
+ end
38
39
 
39
- def get_domains
40
- @devtools.send_cmd('Schema.getDomains')
41
- end
40
+ def get_domains
41
+ @devtools.send_cmd('Schema.getDomains')
42
+ end
42
43
 
44
+ end # V84
43
45
  end # Schema
44
46
  end # DevTools
45
47
  end # WebDriver
@@ -0,0 +1,73 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Licensed to the Software Freedom Conservancy (SFC) under one
4
+ # or more contributor license agreements. See the NOTICE file
5
+ # distributed with this work for additional information
6
+ # regarding copyright ownership. The SFC licenses this file
7
+ # to you under the Apache License, Version 2.0 (the
8
+ # "License"); you may not use this file except in compliance
9
+ # with the License. You may obtain a copy of the License at
10
+ #
11
+ # http://www.apache.org/licenses/LICENSE-2.0
12
+ #
13
+ # Unless required by applicable law or agreed to in writing,
14
+ # software distributed under the License is distributed on an
15
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16
+ # KIND, either express or implied. See the License for the
17
+ # specific language governing permissions and limitations
18
+ # under the License.
19
+
20
+ # This file is automatically generated. Any changes will be lost!
21
+ module Selenium
22
+ module WebDriver
23
+ class DevTools
24
+ def security
25
+ @security ||= V84::Security.new(self)
26
+ end
27
+
28
+ module V84
29
+ class Security
30
+ EVENTS = {
31
+ certificate_error: 'certificateError',
32
+ visible_security_state_changed: 'visibleSecurityStateChanged',
33
+ security_state_changed: 'securityStateChanged',
34
+ }.freeze
35
+
36
+ def initialize(devtools)
37
+ @devtools = devtools
38
+ end
39
+
40
+ def on(event, &block)
41
+ event = EVENTS[event] if event.is_a?(Symbol)
42
+ @devtools.callbacks["Security.#{event}"] << block
43
+ end
44
+
45
+ def disable
46
+ @devtools.send_cmd('Security.disable')
47
+ end
48
+
49
+ def enable
50
+ @devtools.send_cmd('Security.enable')
51
+ end
52
+
53
+ def set_ignore_certificate_errors(ignore:)
54
+ @devtools.send_cmd('Security.setIgnoreCertificateErrors',
55
+ ignore: ignore)
56
+ end
57
+
58
+ def handle_certificate_error(event_id:, action:)
59
+ @devtools.send_cmd('Security.handleCertificateError',
60
+ eventId: event_id,
61
+ action: action)
62
+ end
63
+
64
+ def set_override_certificate_errors(override:)
65
+ @devtools.send_cmd('Security.setOverrideCertificateErrors',
66
+ override: override)
67
+ end
68
+
69
+ end # V84
70
+ end # Security
71
+ end # DevTools
72
+ end # WebDriver
73
+ end # Selenium