testplane 9.0.0-rc.3 → 9.0.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 (607) hide show
  1. package/README.md +1 -1
  2. package/build/package.json +41 -25
  3. package/build/src/base-testplane.d.ts +6 -2
  4. package/build/src/base-testplane.js +19 -5
  5. package/build/src/base-testplane.js.map +1 -1
  6. package/build/src/browser/browser.d.ts +8 -0
  7. package/build/src/browser/browser.js +16 -5
  8. package/build/src/browser/browser.js.map +1 -1
  9. package/build/src/browser/calibrator.d.ts +5 -4
  10. package/build/src/browser/calibrator.js +96 -47
  11. package/build/src/browser/calibrator.js.map +1 -1
  12. package/build/src/browser/camera/index.d.ts +16 -19
  13. package/build/src/browser/camera/index.js +72 -25
  14. package/build/src/browser/camera/index.js.map +1 -1
  15. package/build/src/browser/camera/utils.d.ts +15 -2
  16. package/build/src/browser/camera/utils.js +58 -5
  17. package/build/src/browser/camera/utils.js.map +1 -1
  18. package/build/src/browser/cdp/connection.d.ts +15 -0
  19. package/build/src/browser/cdp/connection.js +145 -0
  20. package/build/src/browser/cdp/connection.js.map +1 -0
  21. package/build/src/browser/cdp/constants.d.ts +6 -0
  22. package/build/src/browser/cdp/constants.js +10 -0
  23. package/build/src/browser/cdp/constants.js.map +1 -0
  24. package/build/src/browser/cdp/debug.d.ts +2 -0
  25. package/build/src/browser/cdp/debug.js +9 -0
  26. package/build/src/browser/cdp/debug.js.map +1 -0
  27. package/build/src/browser/cdp/domains/css.d.ts +54 -0
  28. package/build/src/browser/cdp/domains/css.js +39 -0
  29. package/build/src/browser/cdp/domains/css.js.map +1 -0
  30. package/build/src/browser/cdp/domains/debugger.d.ts +65 -0
  31. package/build/src/browser/cdp/domains/debugger.js +31 -0
  32. package/build/src/browser/cdp/domains/debugger.js.map +1 -0
  33. package/build/src/browser/cdp/domains/dom.d.ts +24 -0
  34. package/build/src/browser/cdp/domains/dom.js +23 -0
  35. package/build/src/browser/cdp/domains/dom.js.map +1 -0
  36. package/build/src/browser/cdp/domains/fetch.d.ts +163 -0
  37. package/build/src/browser/cdp/domains/fetch.js +51 -0
  38. package/build/src/browser/cdp/domains/fetch.js.map +1 -0
  39. package/build/src/browser/cdp/domains/network.d.ts +290 -0
  40. package/build/src/browser/cdp/domains/network.js +75 -0
  41. package/build/src/browser/cdp/domains/network.js.map +1 -0
  42. package/build/src/browser/cdp/domains/page.d.ts +378 -0
  43. package/build/src/browser/cdp/domains/page.js +114 -0
  44. package/build/src/browser/cdp/domains/page.js.map +1 -0
  45. package/build/src/browser/cdp/domains/profiler.d.ts +60 -0
  46. package/build/src/browser/cdp/domains/profiler.js +39 -0
  47. package/build/src/browser/cdp/domains/profiler.js.map +1 -0
  48. package/build/src/browser/cdp/domains/runtime.d.ts +57 -0
  49. package/build/src/browser/cdp/domains/runtime.js +34 -0
  50. package/build/src/browser/cdp/domains/runtime.js.map +1 -0
  51. package/build/src/browser/cdp/domains/target.d.ts +77 -0
  52. package/build/src/browser/cdp/domains/target.js +53 -0
  53. package/build/src/browser/cdp/domains/target.js.map +1 -0
  54. package/build/src/browser/cdp/emitter.d.ts +10 -0
  55. package/build/src/browser/cdp/emitter.js +61 -0
  56. package/build/src/browser/cdp/emitter.js.map +1 -0
  57. package/build/src/browser/cdp/error.d.ts +17 -0
  58. package/build/src/browser/cdp/error.js +38 -0
  59. package/build/src/browser/cdp/error.js.map +1 -0
  60. package/build/src/browser/cdp/index.d.ts +29 -0
  61. package/build/src/browser/cdp/index.js +80 -0
  62. package/build/src/browser/cdp/index.js.map +1 -0
  63. package/build/src/browser/cdp/selectivity/constants.d.ts +3 -0
  64. package/build/src/browser/cdp/selectivity/constants.js +7 -0
  65. package/build/src/browser/cdp/selectivity/constants.js.map +1 -0
  66. package/build/src/browser/cdp/selectivity/css-selectivity.d.ts +24 -0
  67. package/build/src/browser/cdp/selectivity/css-selectivity.js +261 -0
  68. package/build/src/browser/cdp/selectivity/css-selectivity.js.map +1 -0
  69. package/build/src/browser/cdp/selectivity/debug.d.ts +2 -0
  70. package/build/src/browser/cdp/selectivity/debug.js +9 -0
  71. package/build/src/browser/cdp/selectivity/debug.js.map +1 -0
  72. package/build/src/browser/cdp/selectivity/fs-cache.d.ts +12 -0
  73. package/build/src/browser/cdp/selectivity/fs-cache.js +122 -0
  74. package/build/src/browser/cdp/selectivity/fs-cache.js.map +1 -0
  75. package/build/src/browser/cdp/selectivity/hash-provider.d.ts +7 -0
  76. package/build/src/browser/cdp/selectivity/hash-provider.js +86 -0
  77. package/build/src/browser/cdp/selectivity/hash-provider.js.map +1 -0
  78. package/build/src/browser/cdp/selectivity/hash-reader.d.ts +16 -0
  79. package/build/src/browser/cdp/selectivity/hash-reader.js +83 -0
  80. package/build/src/browser/cdp/selectivity/hash-reader.js.map +1 -0
  81. package/build/src/browser/cdp/selectivity/hash-writer.d.ts +18 -0
  82. package/build/src/browser/cdp/selectivity/hash-writer.js +80 -0
  83. package/build/src/browser/cdp/selectivity/hash-writer.js.map +1 -0
  84. package/build/src/browser/cdp/selectivity/index.d.ts +15 -0
  85. package/build/src/browser/cdp/selectivity/index.js +220 -0
  86. package/build/src/browser/cdp/selectivity/index.js.map +1 -0
  87. package/build/src/browser/cdp/selectivity/js-selectivity.d.ts +23 -0
  88. package/build/src/browser/cdp/selectivity/js-selectivity.js +242 -0
  89. package/build/src/browser/cdp/selectivity/js-selectivity.js.map +1 -0
  90. package/build/src/browser/cdp/selectivity/json-utils.d.ts +15 -0
  91. package/build/src/browser/cdp/selectivity/json-utils.js +135 -0
  92. package/build/src/browser/cdp/selectivity/json-utils.js.map +1 -0
  93. package/build/src/browser/cdp/selectivity/merge-dumps/index.d.ts +2 -0
  94. package/build/src/browser/cdp/selectivity/merge-dumps/index.js +28 -0
  95. package/build/src/browser/cdp/selectivity/merge-dumps/index.js.map +1 -0
  96. package/build/src/browser/cdp/selectivity/merge-dumps/merge-hashes.d.ts +2 -0
  97. package/build/src/browser/cdp/selectivity/merge-dumps/merge-hashes.js +39 -0
  98. package/build/src/browser/cdp/selectivity/merge-dumps/merge-hashes.js.map +1 -0
  99. package/build/src/browser/cdp/selectivity/merge-dumps/merge-tests.d.ts +2 -0
  100. package/build/src/browser/cdp/selectivity/merge-dumps/merge-tests.js +129 -0
  101. package/build/src/browser/cdp/selectivity/merge-dumps/merge-tests.js.map +1 -0
  102. package/build/src/browser/cdp/selectivity/modes.d.ts +4 -0
  103. package/build/src/browser/cdp/selectivity/modes.js +11 -0
  104. package/build/src/browser/cdp/selectivity/modes.js.map +1 -0
  105. package/build/src/browser/cdp/selectivity/runner.d.ts +24 -0
  106. package/build/src/browser/cdp/selectivity/runner.js +234 -0
  107. package/build/src/browser/cdp/selectivity/runner.js.map +1 -0
  108. package/build/src/browser/cdp/selectivity/test-dependencies-reader.d.ts +10 -0
  109. package/build/src/browser/cdp/selectivity/test-dependencies-reader.js +41 -0
  110. package/build/src/browser/cdp/selectivity/test-dependencies-reader.js.map +1 -0
  111. package/build/src/browser/cdp/selectivity/test-dependencies-writer.d.ts +11 -0
  112. package/build/src/browser/cdp/selectivity/test-dependencies-writer.js +69 -0
  113. package/build/src/browser/cdp/selectivity/test-dependencies-writer.js.map +1 -0
  114. package/build/src/browser/cdp/selectivity/testplane-selectivity.d.ts +7 -0
  115. package/build/src/browser/cdp/selectivity/testplane-selectivity.js +127 -0
  116. package/build/src/browser/cdp/selectivity/testplane-selectivity.js.map +1 -0
  117. package/build/src/browser/cdp/selectivity/types.d.ts +26 -0
  118. package/build/src/browser/cdp/selectivity/types.js +10 -0
  119. package/build/src/browser/cdp/selectivity/types.js.map +1 -0
  120. package/build/src/browser/cdp/selectivity/used-dumps-tracker.d.ts +7 -0
  121. package/build/src/browser/cdp/selectivity/used-dumps-tracker.js +25 -0
  122. package/build/src/browser/cdp/selectivity/used-dumps-tracker.js.map +1 -0
  123. package/build/src/browser/cdp/selectivity/utils.d.ts +57 -0
  124. package/build/src/browser/cdp/selectivity/utils.js +382 -0
  125. package/build/src/browser/cdp/selectivity/utils.js.map +1 -0
  126. package/build/src/browser/cdp/types.d.ts +417 -0
  127. package/build/src/browser/cdp/types.js.map +1 -0
  128. package/build/src/browser/cdp/utils.d.ts +1 -0
  129. package/build/src/browser/cdp/utils.js +18 -0
  130. package/build/src/browser/cdp/utils.js.map +1 -0
  131. package/build/src/browser/cdp/ws-endpoint.d.ts +2 -0
  132. package/build/src/browser/cdp/ws-endpoint.js +70 -0
  133. package/build/src/browser/cdp/ws-endpoint.js.map +1 -0
  134. package/build/src/browser/client-bridge/error.d.ts +1 -1
  135. package/build/src/browser/client-bridge/error.js +2 -2
  136. package/build/src/browser/client-bridge/error.js.map +1 -1
  137. package/build/src/browser/client-bridge/index.d.ts +17 -7
  138. package/build/src/browser/client-bridge/index.js +65 -14
  139. package/build/src/browser/client-bridge/index.js.map +1 -1
  140. package/build/src/browser/client-scripts/browser-utils/build/bundle.compat.js +18 -0
  141. package/build/src/browser/client-scripts/browser-utils/build/bundle.native.js +10 -0
  142. package/build/src/browser/client-scripts/browser-utils/tsc-out/client-scripts/browser-utils/implementation.js +38 -0
  143. package/build/src/browser/client-scripts/browser-utils/tsc-out/client-scripts/browser-utils/inject.js +31 -0
  144. package/build/src/browser/client-scripts/browser-utils/tsc-out/client-scripts/shared/lib.compat.js +57 -0
  145. package/build/src/browser/client-scripts/browser-utils/tsc-out/client-scripts/shared/lib.native.js +53 -0
  146. package/build/src/browser/client-scripts/browser-utils/tsc-out/client-scripts/shared/logger.js +42 -0
  147. package/build/src/browser/client-scripts/browser-utils/tsc-out/client-scripts/shared/polyfills/getComputedStyle.js +132 -0
  148. package/build/src/browser/client-scripts/browser-utils/tsc-out/client-scripts/shared/polyfills/matchMedia.js +82 -0
  149. package/build/src/browser/client-scripts/{xpath.js → browser-utils/tsc-out/client-scripts/shared/xpath.js} +9 -13
  150. package/build/src/browser/client-scripts/browser-utils/tsc-out/isomorphic/assign.js +21 -0
  151. package/build/src/browser/client-scripts/browser-utils/tsc-out/isomorphic/geometry.js +220 -0
  152. package/build/src/browser/client-scripts/browser-utils/tsc-out/isomorphic/index.js +19 -0
  153. package/build/src/browser/client-scripts/browser-utils/tsc-out/isomorphic/types.js +18 -0
  154. package/build/src/browser/client-scripts/build.js +50 -13
  155. package/build/src/browser/client-scripts/calibrate.js +13 -1
  156. package/build/src/browser/client-scripts/rrweb-record.min.js +32 -32
  157. package/build/src/browser/client-scripts/screen-shooter/build/bundle.compat.js +38 -0
  158. package/build/src/browser/client-scripts/screen-shooter/build/bundle.native.js +38 -0
  159. package/build/src/browser/client-scripts/screen-shooter/tsc-out/client-scripts/screen-shooter/errors/outside-of-viewport.js +32 -0
  160. package/build/src/browser/client-scripts/screen-shooter/tsc-out/client-scripts/screen-shooter/implementation.js +406 -0
  161. package/build/src/browser/client-scripts/screen-shooter/tsc-out/client-scripts/screen-shooter/inject.js +31 -0
  162. package/build/src/browser/client-scripts/screen-shooter/tsc-out/client-scripts/screen-shooter/operations.js +633 -0
  163. package/build/src/browser/client-scripts/screen-shooter/tsc-out/client-scripts/screen-shooter/types.js +2 -0
  164. package/build/src/browser/client-scripts/screen-shooter/tsc-out/client-scripts/screen-shooter/utils/clip-rect.js +103 -0
  165. package/build/src/browser/client-scripts/screen-shooter/tsc-out/client-scripts/screen-shooter/utils/descriptions.js +19 -0
  166. package/build/src/browser/client-scripts/screen-shooter/tsc-out/client-scripts/screen-shooter/utils/dom.js +99 -0
  167. package/build/src/browser/client-scripts/screen-shooter/tsc-out/client-scripts/screen-shooter/utils/element-rect.js +183 -0
  168. package/build/src/browser/client-scripts/screen-shooter/tsc-out/client-scripts/screen-shooter/utils/pseudo-element-rect.js +205 -0
  169. package/build/src/browser/client-scripts/screen-shooter/tsc-out/client-scripts/screen-shooter/utils/scroll.js +155 -0
  170. package/build/src/browser/client-scripts/screen-shooter/tsc-out/client-scripts/screen-shooter/utils/trusted-types.js +14 -0
  171. package/build/src/browser/client-scripts/screen-shooter/tsc-out/client-scripts/screen-shooter/utils/user-agent.js +10 -0
  172. package/build/src/browser/client-scripts/screen-shooter/tsc-out/client-scripts/screen-shooter/utils/z-index.js +144 -0
  173. package/build/src/browser/client-scripts/screen-shooter/tsc-out/client-scripts/shared/lib.compat.js +57 -0
  174. package/build/src/browser/client-scripts/screen-shooter/tsc-out/client-scripts/shared/lib.native.js +53 -0
  175. package/build/src/browser/client-scripts/screen-shooter/tsc-out/client-scripts/shared/logger.js +42 -0
  176. package/build/src/browser/client-scripts/screen-shooter/tsc-out/client-scripts/shared/polyfills/getComputedStyle.js +132 -0
  177. package/build/src/browser/client-scripts/screen-shooter/tsc-out/client-scripts/shared/polyfills/matchMedia.js +82 -0
  178. package/build/src/browser/client-scripts/screen-shooter/tsc-out/client-scripts/shared/xpath.js +27 -0
  179. package/build/src/browser/client-scripts/screen-shooter/tsc-out/isomorphic/assign.js +21 -0
  180. package/build/src/browser/client-scripts/screen-shooter/tsc-out/isomorphic/geometry.js +220 -0
  181. package/build/src/browser/client-scripts/screen-shooter/tsc-out/isomorphic/index.js +19 -0
  182. package/build/src/browser/client-scripts/screen-shooter/tsc-out/isomorphic/types.js +18 -0
  183. package/build/src/browser/commands/assert-view/errors/image-diff-error.d.ts +1 -0
  184. package/build/src/browser/commands/assert-view/index.js +79 -31
  185. package/build/src/browser/commands/assert-view/index.js.map +1 -1
  186. package/build/src/browser/commands/getPuppeteer.js +1 -1
  187. package/build/src/browser/commands/getPuppeteer.js.map +1 -1
  188. package/build/src/browser/commands/getState.d.ts +5 -0
  189. package/build/src/browser/commands/getState.js +41 -0
  190. package/build/src/browser/commands/getState.js.map +1 -0
  191. package/build/src/browser/commands/index.js +5 -0
  192. package/build/src/browser/commands/index.js.map +1 -1
  193. package/build/src/browser/commands/moveCursorTo.d.ts +1 -1
  194. package/build/src/browser/commands/openAndWait.js +47 -5
  195. package/build/src/browser/commands/openAndWait.js.map +1 -1
  196. package/build/src/browser/commands/restoreState/index.d.ts +9 -0
  197. package/build/src/browser/commands/restoreState/index.js +112 -0
  198. package/build/src/browser/commands/restoreState/index.js.map +1 -0
  199. package/build/src/browser/commands/restoreState/restoreStorage.d.ts +1 -0
  200. package/build/src/browser/commands/restoreState/restoreStorage.js +12 -0
  201. package/build/src/browser/commands/restoreState/restoreStorage.js.map +1 -0
  202. package/build/src/browser/commands/saveState/dumpStorage.d.ts +5 -0
  203. package/build/src/browser/commands/saveState/dumpStorage.js +29 -0
  204. package/build/src/browser/commands/saveState/dumpStorage.js.map +1 -0
  205. package/build/src/browser/commands/saveState/index.d.ts +13 -0
  206. package/build/src/browser/commands/saveState/index.js +156 -0
  207. package/build/src/browser/commands/saveState/index.js.map +1 -0
  208. package/build/src/browser/commands/switchToRepl.js +64 -11
  209. package/build/src/browser/commands/switchToRepl.js.map +1 -1
  210. package/build/src/browser/commands/unstable_getCdp.d.ts +3 -0
  211. package/build/src/browser/commands/unstable_getCdp.js +9 -0
  212. package/build/src/browser/commands/unstable_getCdp.js.map +1 -0
  213. package/build/src/browser/commands/waitForStaticToLoad.d.ts +13 -0
  214. package/build/src/browser/commands/waitForStaticToLoad.js +169 -0
  215. package/build/src/browser/commands/waitForStaticToLoad.js.map +1 -0
  216. package/build/src/browser/existing-browser.d.ts +27 -35
  217. package/build/src/browser/existing-browser.js +141 -98
  218. package/build/src/browser/existing-browser.js.map +1 -1
  219. package/build/src/browser/history/async-local-storage.d.ts +5 -0
  220. package/build/src/browser/history/async-local-storage.js +14 -0
  221. package/build/src/browser/history/async-local-storage.js.map +1 -0
  222. package/build/src/browser/history/callstack.d.ts +0 -4
  223. package/build/src/browser/history/callstack.js +0 -8
  224. package/build/src/browser/history/callstack.js.map +1 -1
  225. package/build/src/browser/history/index.d.ts +19 -6
  226. package/build/src/browser/history/index.js +85 -47
  227. package/build/src/browser/history/index.js.map +1 -1
  228. package/build/src/browser/history/rrweb.d.ts +3 -1
  229. package/build/src/browser/history/rrweb.js +163 -57
  230. package/build/src/browser/history/rrweb.js.map +1 -1
  231. package/build/src/browser/isomorphic/assign.d.ts +2 -0
  232. package/build/src/browser/isomorphic/assign.js +18 -0
  233. package/build/src/browser/isomorphic/assign.js.map +1 -0
  234. package/build/src/browser/isomorphic/geometry.d.ts +85 -0
  235. package/build/src/browser/isomorphic/geometry.js +198 -0
  236. package/build/src/browser/isomorphic/geometry.js.map +1 -0
  237. package/build/src/browser/isomorphic/index.d.ts +3 -0
  238. package/build/src/browser/isomorphic/index.js +20 -0
  239. package/build/src/browser/isomorphic/index.js.map +1 -0
  240. package/build/src/browser/isomorphic/tsconfig.tsbuildinfo +1 -0
  241. package/build/src/browser/isomorphic/types.d.ts +15 -0
  242. package/build/src/browser/isomorphic/types.js +19 -0
  243. package/build/src/browser/isomorphic/types.js.map +1 -0
  244. package/build/src/browser/new-browser.d.ts +2 -1
  245. package/build/src/browser/new-browser.js +12 -12
  246. package/build/src/browser/new-browser.js.map +1 -1
  247. package/build/src/browser/screen-shooter/composite-image/debug-utils.d.ts +37 -0
  248. package/build/src/browser/screen-shooter/composite-image/debug-utils.js +127 -0
  249. package/build/src/browser/screen-shooter/composite-image/debug-utils.js.map +1 -0
  250. package/build/src/browser/screen-shooter/composite-image/index.d.ts +65 -14
  251. package/build/src/browser/screen-shooter/composite-image/index.js +488 -122
  252. package/build/src/browser/screen-shooter/composite-image/index.js.map +1 -1
  253. package/build/src/browser/screen-shooter/constants.d.ts +1 -0
  254. package/build/src/browser/screen-shooter/constants.js +5 -0
  255. package/build/src/browser/screen-shooter/constants.js.map +1 -0
  256. package/build/src/browser/screen-shooter/debug.d.ts +3 -0
  257. package/build/src/browser/screen-shooter/debug.js +25 -0
  258. package/build/src/browser/screen-shooter/debug.js.map +1 -0
  259. package/build/src/browser/screen-shooter/elements-screen-shooter.d.ts +43 -0
  260. package/build/src/browser/screen-shooter/elements-screen-shooter.js +466 -0
  261. package/build/src/browser/screen-shooter/elements-screen-shooter.js.map +1 -0
  262. package/build/src/browser/screen-shooter/errors/horizontal-overflow-error.d.ts +1 -0
  263. package/build/src/browser/screen-shooter/errors/horizontal-overflow-error.js +16 -12
  264. package/build/src/browser/screen-shooter/errors/horizontal-overflow-error.js.map +1 -1
  265. package/build/src/browser/screen-shooter/errors/vertical-overflow-error.d.ts +1 -0
  266. package/build/src/browser/screen-shooter/errors/vertical-overflow-error.js +12 -8
  267. package/build/src/browser/screen-shooter/errors/vertical-overflow-error.js.map +1 -1
  268. package/build/src/browser/screen-shooter/full-page-screen-shooter.d.ts +44 -0
  269. package/build/src/browser/screen-shooter/full-page-screen-shooter.js +160 -0
  270. package/build/src/browser/screen-shooter/full-page-screen-shooter.js.map +1 -0
  271. package/build/src/browser/screen-shooter/operations/animations.d.ts +7 -0
  272. package/build/src/browser/screen-shooter/operations/animations.js +25 -0
  273. package/build/src/browser/screen-shooter/operations/animations.js.map +1 -0
  274. package/build/src/browser/screen-shooter/operations/iframe.d.ts +1 -0
  275. package/build/src/browser/screen-shooter/operations/iframe.js +27 -0
  276. package/build/src/browser/screen-shooter/operations/iframe.js.map +1 -0
  277. package/build/src/browser/screen-shooter/operations/index.d.ts +5 -0
  278. package/build/src/browser/screen-shooter/operations/index.js +16 -0
  279. package/build/src/browser/screen-shooter/operations/index.js.map +1 -0
  280. package/build/src/browser/screen-shooter/operations/pointer-events.d.ts +11 -0
  281. package/build/src/browser/screen-shooter/operations/pointer-events.js +45 -0
  282. package/build/src/browser/screen-shooter/operations/pointer-events.js.map +1 -0
  283. package/build/src/browser/screen-shooter/operations/scrolls.d.ts +5 -0
  284. package/build/src/browser/screen-shooter/operations/scrolls.js +8 -0
  285. package/build/src/browser/screen-shooter/operations/scrolls.js.map +1 -0
  286. package/build/src/browser/screen-shooter/operations/wait-for-selectors-to-settle.d.ts +2 -0
  287. package/build/src/browser/screen-shooter/operations/wait-for-selectors-to-settle.js +133 -0
  288. package/build/src/browser/screen-shooter/operations/wait-for-selectors-to-settle.js.map +1 -0
  289. package/build/src/browser/screen-shooter/validation/index.d.ts +2 -2
  290. package/build/src/browser/screen-shooter/validation/index.js +31 -5
  291. package/build/src/browser/screen-shooter/validation/index.js.map +1 -1
  292. package/build/src/browser/screen-shooter/viewport-screen-shooter.d.ts +44 -0
  293. package/build/src/browser/screen-shooter/viewport-screen-shooter.js +89 -0
  294. package/build/src/browser/screen-shooter/viewport-screen-shooter.js.map +1 -0
  295. package/build/src/browser/stacktrace/utils.js +13 -3
  296. package/build/src/browser/stacktrace/utils.js.map +1 -1
  297. package/build/src/browser/standalone/attachToBrowser.d.ts +2 -0
  298. package/build/src/browser/standalone/attachToBrowser.js +63 -0
  299. package/build/src/browser/standalone/attachToBrowser.js.map +1 -0
  300. package/build/src/browser/standalone/index.d.ts +2 -0
  301. package/build/src/browser/standalone/index.js +8 -0
  302. package/build/src/browser/standalone/index.js.map +1 -0
  303. package/build/src/browser/standalone/launchBrowser.d.ts +4 -0
  304. package/build/src/browser/{standalone.js → standalone/launchBrowser.js} +24 -10
  305. package/build/src/browser/standalone/launchBrowser.js.map +1 -0
  306. package/build/src/browser/standalone/types.d.ts +5 -0
  307. package/build/src/browser/standalone/types.js +3 -0
  308. package/build/src/browser/standalone/types.js.map +1 -0
  309. package/build/src/browser/types.d.ts +30 -4
  310. package/build/src/browser/types.js.map +1 -1
  311. package/build/src/browser/wsdriver/compression.d.ts +5 -0
  312. package/build/src/browser/wsdriver/compression.js +79 -0
  313. package/build/src/browser/wsdriver/compression.js.map +1 -0
  314. package/build/src/browser/wsdriver/constants.d.ts +11 -0
  315. package/build/src/browser/wsdriver/constants.js +15 -0
  316. package/build/src/browser/wsdriver/constants.js.map +1 -0
  317. package/build/src/browser/wsdriver/debug.d.ts +2 -0
  318. package/build/src/browser/wsdriver/debug.js +9 -0
  319. package/build/src/browser/wsdriver/debug.js.map +1 -0
  320. package/build/src/browser/wsdriver/error.d.ts +18 -0
  321. package/build/src/browser/wsdriver/error.js +36 -0
  322. package/build/src/browser/wsdriver/error.js.map +1 -0
  323. package/build/src/browser/wsdriver/index.d.ts +23 -0
  324. package/build/src/browser/wsdriver/index.js +261 -0
  325. package/build/src/browser/wsdriver/index.js.map +1 -0
  326. package/build/src/browser/wsdriver/request.d.ts +10 -0
  327. package/build/src/browser/wsdriver/request.js +58 -0
  328. package/build/src/browser/wsdriver/request.js.map +1 -0
  329. package/build/src/browser/wsdriver/response.d.ts +3 -0
  330. package/build/src/browser/wsdriver/response.js +111 -0
  331. package/build/src/browser/wsdriver/response.js.map +1 -0
  332. package/build/src/browser/wsdriver/types.d.ts +71 -0
  333. package/build/src/browser/wsdriver/types.js +27 -0
  334. package/build/src/browser/wsdriver/types.js.map +1 -0
  335. package/build/src/browser-installer/chrome/index.d.ts +1 -0
  336. package/build/src/browser-installer/chrome/index.js +13 -3
  337. package/build/src/browser-installer/chrome/index.js.map +1 -1
  338. package/build/src/browser-installer/edge/index.d.ts +1 -0
  339. package/build/src/browser-installer/edge/index.js +8 -3
  340. package/build/src/browser-installer/edge/index.js.map +1 -1
  341. package/build/src/browser-installer/firefox/index.d.ts +1 -0
  342. package/build/src/browser-installer/firefox/index.js +8 -3
  343. package/build/src/browser-installer/firefox/index.js.map +1 -1
  344. package/build/src/browser-installer/safari/index.d.ts +1 -0
  345. package/build/src/browser-installer/safari/index.js +8 -3
  346. package/build/src/browser-installer/safari/index.js.map +1 -1
  347. package/build/src/browser-pool/basic-pool.js +3 -1
  348. package/build/src/browser-pool/basic-pool.js.map +1 -1
  349. package/build/src/browser-pool/cancelled-error.js +7 -1
  350. package/build/src/browser-pool/cancelled-error.js.map +1 -1
  351. package/build/src/browser-pool/limited-pool.d.ts +1 -1
  352. package/build/src/browser-pool/limited-pool.js +3 -3
  353. package/build/src/browser-pool/limited-pool.js.map +1 -1
  354. package/build/src/browser-pool/per-browser-limited-pool.d.ts +1 -1
  355. package/build/src/browser-pool/per-browser-limited-pool.js +3 -2
  356. package/build/src/browser-pool/per-browser-limited-pool.js.map +1 -1
  357. package/build/src/browser-pool/types.d.ts +1 -1
  358. package/build/src/browser-pool/webdriver-pool.d.ts +1 -0
  359. package/build/src/browser-pool/webdriver-pool.js +2 -0
  360. package/build/src/browser-pool/webdriver-pool.js.map +1 -1
  361. package/build/src/bundle/cjs/index.js +207 -108
  362. package/build/src/cli/commands/list-tests/index.js +2 -1
  363. package/build/src/cli/commands/list-tests/index.js.map +1 -1
  364. package/build/src/cli/commands/selectivity-merge-dumps/index.d.ts +2 -0
  365. package/build/src/cli/commands/selectivity-merge-dumps/index.js +50 -0
  366. package/build/src/cli/commands/selectivity-merge-dumps/index.js.map +1 -0
  367. package/build/src/cli/constants.d.ts +1 -0
  368. package/build/src/cli/constants.js +1 -0
  369. package/build/src/cli/constants.js.map +1 -1
  370. package/build/src/cli/index.js +29 -8
  371. package/build/src/cli/index.js.map +1 -1
  372. package/build/src/config/browser-options.js +51 -6
  373. package/build/src/config/browser-options.js.map +1 -1
  374. package/build/src/config/defaults.d.ts +27 -2
  375. package/build/src/config/defaults.js +30 -5
  376. package/build/src/config/defaults.js.map +1 -1
  377. package/build/src/config/index.d.ts +10 -6
  378. package/build/src/config/index.js +67 -42
  379. package/build/src/config/index.js.map +1 -1
  380. package/build/src/config/options.js +3 -2
  381. package/build/src/config/options.js.map +1 -1
  382. package/build/src/config/types.d.ts +133 -11
  383. package/build/src/config/types.js +15 -5
  384. package/build/src/config/types.js.map +1 -1
  385. package/build/src/config/utils.d.ts +4 -1
  386. package/build/src/config/utils.js +20 -2
  387. package/build/src/config/utils.js.map +1 -1
  388. package/build/src/constants/config.d.ts +1 -1
  389. package/build/src/constants/config.js +2 -2
  390. package/build/src/constants/config.js.map +1 -1
  391. package/build/src/constants/png.d.ts +14 -0
  392. package/build/src/constants/png.js +17 -0
  393. package/build/src/constants/png.js.map +1 -0
  394. package/build/src/constants/process-messages.d.ts +1 -0
  395. package/build/src/constants/process-messages.js +2 -1
  396. package/build/src/constants/process-messages.js.map +1 -1
  397. package/build/src/constants/repl.d.ts +2 -0
  398. package/build/src/constants/repl.js +6 -0
  399. package/build/src/constants/repl.js.map +1 -0
  400. package/build/src/dev-server/index.d.ts +1 -1
  401. package/build/src/dev-server/index.js +1 -1
  402. package/build/src/dev-server/index.js.map +1 -1
  403. package/build/src/error-snippets/constants.d.ts +2 -1
  404. package/build/src/error-snippets/constants.js +3 -2
  405. package/build/src/error-snippets/constants.js.map +1 -1
  406. package/build/src/error-snippets/source-maps.d.ts +3 -3
  407. package/build/src/error-snippets/source-maps.js +10 -8
  408. package/build/src/error-snippets/source-maps.js.map +1 -1
  409. package/build/src/error-snippets/utils.js +2 -2
  410. package/build/src/error-snippets/utils.js.map +1 -1
  411. package/build/src/errors/unhandled-rejection-error.d.ts +9 -0
  412. package/build/src/errors/unhandled-rejection-error.js +24 -0
  413. package/build/src/errors/unhandled-rejection-error.js.map +1 -0
  414. package/build/src/events/index.d.ts +12 -0
  415. package/build/src/events/index.js +3 -0
  416. package/build/src/events/index.js.map +1 -1
  417. package/build/src/globalFilesToRemove.d.ts +4 -0
  418. package/build/src/globalFilesToRemove.js +24 -0
  419. package/build/src/globalFilesToRemove.js.map +1 -0
  420. package/build/src/globals.d.ts +7 -0
  421. package/build/src/globals.js +10 -0
  422. package/build/src/globals.js.map +1 -0
  423. package/build/src/image.d.ts +26 -9
  424. package/build/src/image.js +201 -97
  425. package/build/src/image.js.map +1 -1
  426. package/build/src/index.d.ts +6 -14
  427. package/build/src/index.js +5 -1
  428. package/build/src/index.js.map +1 -1
  429. package/build/src/reporters/flat.js +7 -5
  430. package/build/src/reporters/flat.js.map +1 -1
  431. package/build/src/reporters/informers/console.d.ts +3 -3
  432. package/build/src/reporters/informers/console.js +6 -6
  433. package/build/src/reporters/informers/console.js.map +1 -1
  434. package/build/src/reporters/informers/file.d.ts +3 -3
  435. package/build/src/reporters/informers/file.js +13 -6
  436. package/build/src/reporters/informers/file.js.map +1 -1
  437. package/build/src/reporters/plain.js +4 -2
  438. package/build/src/reporters/plain.js.map +1 -1
  439. package/build/src/reporters/utils/helpers.js +10 -1
  440. package/build/src/reporters/utils/helpers.js.map +1 -1
  441. package/build/src/runner/browser-env/vite/browser-modules/driver.js +28 -8
  442. package/build/src/runner/browser-env/vite/browser-modules/driver.js.map +1 -1
  443. package/build/src/runner/browser-env/vite/browser-modules/tsconfig.tsbuildinfo +1 -1
  444. package/build/src/runner/browser-env/vite/browser-modules/types.d.ts +1 -1
  445. package/build/src/runner/browser-env/vite/plugins/generate-index-html.js +4 -6
  446. package/build/src/runner/browser-env/vite/plugins/generate-index-html.js.map +1 -1
  447. package/build/src/runner/browser-env/vite/server.d.ts +1 -0
  448. package/build/src/runner/browser-env/vite/server.js +26 -0
  449. package/build/src/runner/browser-env/vite/server.js.map +1 -1
  450. package/build/src/runner/browser-env/vite/utils.d.ts +0 -5
  451. package/build/src/runner/browser-env/vite/utils.js +15 -9
  452. package/build/src/runner/browser-env/vite/utils.js.map +1 -1
  453. package/build/src/runner/browser-runner.d.ts +1 -1
  454. package/build/src/runner/browser-runner.js +2 -2
  455. package/build/src/runner/browser-runner.js.map +1 -1
  456. package/build/src/runner/index.d.ts +6 -3
  457. package/build/src/runner/index.js +20 -8
  458. package/build/src/runner/index.js.map +1 -1
  459. package/build/src/runner/suite-monitor.d.ts +1 -1
  460. package/build/src/runner/test-runner/insistant-test-runner.d.ts +1 -0
  461. package/build/src/runner/test-runner/regular-test-runner.d.ts +3 -1
  462. package/build/src/runner/test-runner/regular-test-runner.js +30 -3
  463. package/build/src/runner/test-runner/regular-test-runner.js.map +1 -1
  464. package/build/src/runner/tests-tracker.d.ts +25 -0
  465. package/build/src/runner/tests-tracker.js +121 -0
  466. package/build/src/runner/tests-tracker.js.map +1 -0
  467. package/build/src/runner/types.d.ts +1 -1
  468. package/build/src/signal-handler.d.ts +2 -2
  469. package/build/src/signal-handler.js +24 -11
  470. package/build/src/signal-handler.js.map +1 -1
  471. package/build/src/test-reader/index.js +12 -8
  472. package/build/src/test-reader/index.js.map +1 -1
  473. package/build/src/test-reader/mocha-reader/index.d.ts +2 -1
  474. package/build/src/test-reader/mocha-reader/index.js +47 -2
  475. package/build/src/test-reader/mocha-reader/index.js.map +1 -1
  476. package/build/src/test-reader/mocha-reader/mocha-event-bus.d.ts +1 -1
  477. package/build/src/test-reader/mocha-reader/tree-builder-decorator.js +4 -4
  478. package/build/src/test-reader/mocha-reader/tree-builder-decorator.js.map +1 -1
  479. package/build/src/test-reader/test-object/suite.d.ts +9 -3
  480. package/build/src/test-reader/test-object/suite.js +19 -1
  481. package/build/src/test-reader/test-object/suite.js.map +1 -1
  482. package/build/src/test-reader/test-object/test.d.ts +7 -2
  483. package/build/src/test-reader/test-object/test.js +20 -1
  484. package/build/src/test-reader/test-object/test.js.map +1 -1
  485. package/build/src/test-reader/test-object/types.d.ts +11 -2
  486. package/build/src/test-reader/test-parser.d.ts +3 -1
  487. package/build/src/test-reader/test-parser.js +22 -6
  488. package/build/src/test-reader/test-parser.js.map +1 -1
  489. package/build/src/testplane.d.ts +22 -10
  490. package/build/src/testplane.js +115 -18
  491. package/build/src/testplane.js.map +1 -1
  492. package/build/src/types/globals.d.ts +16 -0
  493. package/build/src/types/globals.js +3 -0
  494. package/build/src/types/globals.js.map +1 -0
  495. package/build/src/types/index.d.ts +44 -7
  496. package/build/src/unstable.d.ts +2 -2
  497. package/build/src/unstable.js +2 -1
  498. package/build/src/unstable.js.map +1 -1
  499. package/build/src/utils/cli.d.ts +2 -0
  500. package/build/src/utils/cli.js +29 -2
  501. package/build/src/utils/cli.js.map +1 -1
  502. package/build/src/utils/config.d.ts +1 -0
  503. package/build/src/utils/config.js +6 -1
  504. package/build/src/utils/config.js.map +1 -1
  505. package/build/src/utils/crypto.d.ts +1 -0
  506. package/build/src/utils/crypto.js +2 -1
  507. package/build/src/utils/crypto.js.map +1 -1
  508. package/build/src/utils/eight-bit-rgba-to-png.d.ts +3 -0
  509. package/build/src/utils/eight-bit-rgba-to-png.js +61 -0
  510. package/build/src/utils/eight-bit-rgba-to-png.js.map +1 -0
  511. package/build/src/utils/ipc.d.ts +1 -1
  512. package/build/src/utils/ipc.js +15 -1
  513. package/build/src/utils/ipc.js.map +1 -1
  514. package/build/src/utils/logger.d.ts +9 -0
  515. package/build/src/utils/logger.js +27 -3
  516. package/build/src/utils/logger.js.map +1 -1
  517. package/build/src/utils/preload-utils.d.ts +1 -0
  518. package/build/src/utils/preload-utils.js +4 -4
  519. package/build/src/utils/preload-utils.js.map +1 -1
  520. package/build/src/utils/processor.js +15 -6
  521. package/build/src/utils/processor.js.map +1 -1
  522. package/build/src/utils/repl-instrumentation/index.d.ts +1 -0
  523. package/build/src/utils/repl-instrumentation/index.js +46 -0
  524. package/build/src/utils/repl-instrumentation/index.js.map +1 -0
  525. package/build/src/utils/repl-instrumentation/typescript.d.ts +7 -0
  526. package/build/src/utils/repl-instrumentation/typescript.js +307 -0
  527. package/build/src/utils/repl-instrumentation/typescript.js.map +1 -0
  528. package/build/src/utils/repl-module-hooks.d.ts +1 -0
  529. package/build/src/utils/repl-module-hooks.js +111 -0
  530. package/build/src/utils/repl-module-hooks.js.map +1 -0
  531. package/build/src/utils/typescript.d.ts +3 -0
  532. package/build/src/utils/typescript.js +142 -36
  533. package/build/src/utils/typescript.js.map +1 -1
  534. package/build/src/utils/worker-error-serialization.d.ts +13 -0
  535. package/build/src/utils/worker-error-serialization.js +125 -0
  536. package/build/src/utils/worker-error-serialization.js.map +1 -0
  537. package/build/src/utils/workers-registry.d.ts +2 -2
  538. package/build/src/utils/workers-registry.js +53 -3
  539. package/build/src/utils/workers-registry.js.map +1 -1
  540. package/build/src/vendors/expect-webdriverio/matchers-overrides.d.ts +49 -0
  541. package/build/src/vendors/expect-webdriverio/matchers-overrides.js +3 -0
  542. package/build/src/vendors/expect-webdriverio/matchers-overrides.js.map +1 -0
  543. package/build/src/worker/browser-env/runner/test-runner/index.js +16 -0
  544. package/build/src/worker/browser-env/runner/test-runner/index.js.map +1 -1
  545. package/build/src/worker/runner/browser-pool.js +5 -2
  546. package/build/src/worker/runner/browser-pool.js.map +1 -1
  547. package/build/src/worker/runner/index.d.ts +1 -0
  548. package/build/src/worker/runner/index.js +27 -6
  549. package/build/src/worker/runner/index.js.map +1 -1
  550. package/build/src/worker/runner/sequence-test-parser.js +5 -7
  551. package/build/src/worker/runner/sequence-test-parser.js.map +1 -1
  552. package/build/src/worker/runner/test-runner/capture-fail-screenshot.d.ts +10 -0
  553. package/build/src/worker/runner/test-runner/capture-fail-screenshot.js +68 -0
  554. package/build/src/worker/runner/test-runner/capture-fail-screenshot.js.map +1 -0
  555. package/build/src/worker/runner/test-runner/execution-thread.d.ts +2 -4
  556. package/build/src/worker/runner/test-runner/execution-thread.js +11 -18
  557. package/build/src/worker/runner/test-runner/execution-thread.js.map +1 -1
  558. package/build/src/worker/runner/test-runner/index.d.ts +3 -2
  559. package/build/src/worker/runner/test-runner/index.js +72 -12
  560. package/build/src/worker/runner/test-runner/index.js.map +1 -1
  561. package/build/src/worker/runner/test-runner/types.d.ts +1 -2
  562. package/build/src/worker/testplane-facade.js +5 -3
  563. package/build/src/worker/testplane-facade.js.map +1 -1
  564. package/build/src/worker/testplane.d.ts +2 -0
  565. package/build/src/worker/testplane.js +4 -1
  566. package/build/src/worker/testplane.js.map +1 -1
  567. package/build/src/ws-connection/constants.d.ts +13 -0
  568. package/build/src/ws-connection/constants.js +17 -0
  569. package/build/src/ws-connection/constants.js.map +1 -0
  570. package/build/src/ws-connection/error.d.ts +52 -0
  571. package/build/src/ws-connection/error.js +84 -0
  572. package/build/src/ws-connection/error.js.map +1 -0
  573. package/build/src/ws-connection/index.d.ts +83 -0
  574. package/build/src/ws-connection/index.js +397 -0
  575. package/build/src/ws-connection/index.js.map +1 -0
  576. package/build/src/ws-connection/utils.d.ts +6 -0
  577. package/build/src/ws-connection/utils.js +9 -0
  578. package/build/src/ws-connection/utils.js.map +1 -0
  579. package/package.json +41 -25
  580. package/build/src/browser/client-bridge/client-bridge.d.ts +0 -12
  581. package/build/src/browser/client-bridge/client-bridge.js +0 -45
  582. package/build/src/browser/client-bridge/client-bridge.js.map +0 -1
  583. package/build/src/browser/client-scripts/bundle.compat.js +0 -23
  584. package/build/src/browser/client-scripts/bundle.native.js +0 -15
  585. package/build/src/browser/client-scripts/ignore-areas.js +0 -7
  586. package/build/src/browser/client-scripts/index.js +0 -850
  587. package/build/src/browser/client-scripts/lib.compat.js +0 -28
  588. package/build/src/browser/client-scripts/lib.native.js +0 -28
  589. package/build/src/browser/client-scripts/rect.js +0 -251
  590. package/build/src/browser/client-scripts/util.js +0 -319
  591. package/build/src/browser/screen-shooter/index.d.ts +0 -22
  592. package/build/src/browser/screen-shooter/index.js +0 -117
  593. package/build/src/browser/screen-shooter/index.js.map +0 -1
  594. package/build/src/browser/screen-shooter/types.d.ts +0 -14
  595. package/build/src/browser/screen-shooter/types.js.map +0 -1
  596. package/build/src/browser/screen-shooter/utils.d.ts +0 -18
  597. package/build/src/browser/screen-shooter/utils.js +0 -198
  598. package/build/src/browser/screen-shooter/utils.js.map +0 -1
  599. package/build/src/browser/standalone.d.ts +0 -6
  600. package/build/src/browser/standalone.js.map +0 -1
  601. package/build/src/runner/browser-env/index.d.ts +0 -12
  602. package/build/src/runner/browser-env/index.js +0 -39
  603. package/build/src/runner/browser-env/index.js.map +0 -1
  604. package/build/src/worker/runner/test-runner/one-time-screenshooter.d.ts +0 -35
  605. package/build/src/worker/runner/test-runner/one-time-screenshooter.js +0 -86
  606. package/build/src/worker/runner/test-runner/one-time-screenshooter.js.map +0 -1
  607. /package/build/src/browser/{screen-shooter → cdp}/types.js +0 -0
@@ -26,7 +26,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
26
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.ExistingBrowser = void 0;
29
+ exports.ExistingBrowser = exports.getActivePuppeteerPage = void 0;
30
30
  const url_1 = __importDefault(require("url"));
31
31
  const lodash_1 = __importDefault(require("lodash"));
32
32
  const webdriverio_1 = require("@testplane/webdriverio");
@@ -42,36 +42,61 @@ const browser_2 = require("../constants/browser");
42
42
  const browser_3 = require("../utils/browser");
43
43
  const config_2 = require("../utils/config");
44
44
  const help_1 = require("../constants/help");
45
- const history_1 = require("./history");
45
+ const cdp_1 = require("./cdp");
46
+ const wsdriver_1 = require("./wsdriver");
46
47
  const OPTIONAL_SESSION_OPTS = ["transformRequest", "transformResponse"];
47
48
  const BROWSER_SESSION_HINT = "browser session";
48
- const CLIENT_BRIDGE_HINT = "client bridge";
49
+ const CDP_CONNECTION_HINT = "cdp connection";
49
50
  function ensure(value, hint) {
50
51
  if (!value) {
51
52
  throw new Error(`Execution can't proceed, because a crucial component was not initialized${hint ? " (" + hint + ")" : ""}. This is likely due to a bug on our side.\n` +
52
53
  `\nPlease file an issue at ${help_1.NEW_ISSUE_LINK}, we will try to fix it as soon as possible.`);
53
54
  }
54
55
  }
55
- const isClientBridgeErrorData = (data) => {
56
- return Boolean(data && data.error && data.message);
56
+ const getActivePuppeteerPage = async (session) => {
57
+ const puppeteer = await session.getPuppeteer();
58
+ if (!puppeteer) {
59
+ return;
60
+ }
61
+ const pages = await puppeteer.pages();
62
+ if (!pages.length) {
63
+ return;
64
+ }
65
+ const active = await session.getWindowHandle();
66
+ for (const page of pages) {
67
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
68
+ // @ts-expect-error need private _targetId
69
+ if (page.target()._targetId === active) {
70
+ return page;
71
+ }
72
+ }
73
+ return pages[pages.length - 1];
57
74
  };
75
+ exports.getActivePuppeteerPage = getActivePuppeteerPage;
58
76
  class ExistingBrowser extends browser_1.Browser {
59
77
  constructor(config, opts) {
60
78
  super(config, opts);
79
+ this._cdp = null;
80
+ this._wsDriver = null;
81
+ this._tags = new Set();
61
82
  this._camera = camera_1.Camera.create(this._config.screenshotMode, () => this._takeScreenshot());
62
83
  this._meta = this._initMeta();
63
84
  }
64
85
  async init({ sessionId, sessionCaps, sessionOpts }, calibrator) {
65
86
  this._session = await this._attachSession({ sessionId, sessionCaps, sessionOpts });
87
+ const cdpPromise = cdp_1.CDP.create(this).then(cdp => {
88
+ this._cdp = cdp;
89
+ });
66
90
  if (!(0, config_2.isRunInNodeJsEnv)(this._config)) {
67
91
  this._startCollectingCustomCommands();
68
92
  }
69
- const isolationPromise = this._performIsolation({ sessionCaps, sessionOpts });
93
+ const isolationPromise = cdpPromise.then(() => this._performIsolation({ sessionCaps, sessionOpts }));
70
94
  this._extendStacktrace();
71
95
  this._addSteps();
72
96
  this._addHistory();
73
97
  await history.runGroup({
74
98
  session: this._session,
99
+ snapshotsPromiseRef: this._snapshotsPromiseRef,
75
100
  callstack: this._callstackHistory,
76
101
  config: this._config,
77
102
  }, "testplane: init browser", async () => {
@@ -86,45 +111,24 @@ class ExistingBrowser extends browser_1.Browser {
86
111
  }
87
112
  await this._prepareSession();
88
113
  await this._performCalibration(calibrator);
89
- await this._buildClientScripts();
114
+ await this._initBrowserSideUtils();
90
115
  });
91
116
  return this;
92
117
  }
93
- markAsBroken() {
118
+ markAsBroken({ stubBrowserCommands = false } = {}) {
94
119
  if (this.state.isBroken) {
95
120
  return;
96
121
  }
97
122
  this.applyState({ isBroken: true });
98
- this._stubCommands();
123
+ if (stubBrowserCommands) {
124
+ this._stubCommands();
125
+ }
99
126
  }
100
127
  quit() {
128
+ this._cdp?.close();
129
+ this._wsDriver?.close();
101
130
  this._meta = this._initMeta();
102
131
  }
103
- async prepareScreenshot(selectors, opts = {}) {
104
- // Running this fragment with history causes rrweb snapshots to break on pages with iframes
105
- return (0, history_1.runWithoutHistory)({ callstack: this._callstackHistory }, async () => {
106
- opts = lodash_1.default.extend(opts, {
107
- usePixelRatio: this._calibration ? this._calibration.usePixelRatio : true,
108
- });
109
- ensure(this._clientBridge, CLIENT_BRIDGE_HINT);
110
- const result = await this._clientBridge.call("prepareScreenshot", [selectors, opts]);
111
- if (isClientBridgeErrorData(result)) {
112
- throw new Error(`Prepare screenshot failed with error type '${result.error}' and error message: ${result.message}`);
113
- }
114
- // https://github.com/webdriverio/webdriverio/issues/11396
115
- if (this._config.automationProtocol === config_1.WEBDRIVER_PROTOCOL && opts.disableAnimation) {
116
- await this._disableIframeAnimations();
117
- }
118
- return result;
119
- });
120
- }
121
- async cleanupScreenshot(opts = {}) {
122
- if (opts.disableAnimation) {
123
- return (0, history_1.runWithoutHistory)({ callstack: this._callstackHistory }, async () => {
124
- await this._cleanupPageAnimations();
125
- });
126
- }
127
- }
128
132
  open(url) {
129
133
  ensure(this._session, BROWSER_SESSION_HINT);
130
134
  return this._session.url(url);
@@ -137,11 +141,17 @@ class ExistingBrowser extends browser_1.Browser {
137
141
  ensure(this._session, BROWSER_SESSION_HINT);
138
142
  return this._session.execute(script);
139
143
  }
140
- async captureViewportImage(page, screenshotDelay) {
141
- if (screenshotDelay) {
142
- await new Promise(resolve => setTimeout(resolve, screenshotDelay));
143
- }
144
- return this._camera.captureViewportImage(page);
144
+ get shouldUsePixelRatio() {
145
+ return this._calibration ? this._calibration.usePixelRatio : true;
146
+ }
147
+ get isWebdriverProtocol() {
148
+ return this._config.automationProtocol === config_1.WEBDRIVER_PROTOCOL;
149
+ }
150
+ get needsCompatLib() {
151
+ return this._calibration ? this._calibration.needsCompatLib : false;
152
+ }
153
+ async captureViewportImage(opts) {
154
+ return this._camera.captureViewportImage(opts);
145
155
  }
146
156
  scrollBy(params) {
147
157
  ensure(this._session, BROWSER_SESSION_HINT);
@@ -181,6 +191,18 @@ class ExistingBrowser extends browser_1.Browser {
181
191
  capabilities: { ...sessionOpts.capabilities, ...sessionCaps },
182
192
  requestedCapabilities: sessionOpts.capabilities,
183
193
  };
194
+ if (this._config.useWsDriver && sessionCaps && sessionCaps["se:wsdriver"]) {
195
+ const supportsWsDriverV1 = sessionCaps["se:wsdriverVersion"]?.split(", ").includes("1");
196
+ if (supportsWsDriverV1) {
197
+ this._wsDriver = wsdriver_1.WSDriverRequestAgent.create({
198
+ sessionId,
199
+ sessionCaps: sessionCaps,
200
+ headers: sessionOpts.headers,
201
+ browserConfig: this._config,
202
+ });
203
+ opts.customWdRequestAgent = this._wsDriver;
204
+ }
205
+ }
184
206
  return (0, webdriverio_1.attach)(opts);
185
207
  }
186
208
  _initMeta() {
@@ -227,9 +249,17 @@ class ExistingBrowser extends browser_1.Browser {
227
249
  _addMetaAccessCommands(session) {
228
250
  session.addCommand("setMeta", (key, value) => (this._meta[key] = value));
229
251
  session.addCommand("getMeta", key => (key ? this._meta[key] : this._meta));
252
+ session.addCommand("addTag", (tag) => {
253
+ if (Array.isArray(tag)) {
254
+ tag.forEach(element => this._tags?.add(element));
255
+ }
256
+ else {
257
+ this._tags?.add(tag);
258
+ }
259
+ });
230
260
  }
231
261
  _decorateUrlMethod(session) {
232
- session.overwriteCommand("url", async (origUrlFn, uri) => {
262
+ session.overwriteCommand("url", async (origUrlFn, uri, params) => {
233
263
  if (!uri) {
234
264
  return session.getUrl();
235
265
  }
@@ -238,12 +268,12 @@ class ExistingBrowser extends browser_1.Browser {
238
268
  if (this._config.urlHttpTimeout) {
239
269
  this.setHttpTimeout(this._config.urlHttpTimeout);
240
270
  }
241
- const result = await origUrlFn(newUri);
271
+ const result = await origUrlFn(newUri, this._session?.isBidi ? params : undefined);
242
272
  if (this._config.urlHttpTimeout) {
243
273
  this.restoreHttpTimeout();
244
274
  }
245
- if (this._clientBridge) {
246
- await this._clientBridge.call("resetZoom");
275
+ if (this._browserSideUtils) {
276
+ await this._browserSideUtils.call("resetZoom", []);
247
277
  }
248
278
  return result;
249
279
  });
@@ -251,17 +281,8 @@ class ExistingBrowser extends browser_1.Browser {
251
281
  _resolveUrl(uri) {
252
282
  return this._config.baseUrl ? url_1.default.resolve(this._config.baseUrl, uri) : uri;
253
283
  }
254
- async _performIsolation({ sessionCaps, sessionOpts, }) {
284
+ async _performBidiIsolation(sessionOpts) {
255
285
  ensure(this._session, BROWSER_SESSION_HINT);
256
- if (!this._config.isolation) {
257
- return;
258
- }
259
- const { browserName, browserVersion = "", version = "", } = sessionCaps || {};
260
- if (!(0, browser_3.isSupportIsolation)(browserName, browserVersion)) {
261
- logger.warn(`WARN: test isolation works only with chrome@${browser_2.MIN_CHROME_VERSION_SUPPORT_ISOLATION} and higher, ` +
262
- `but got ${browserName}@${browserVersion || version}`);
263
- return;
264
- }
265
286
  const puppeteer = await this._session.getPuppeteer();
266
287
  const browserCtxs = puppeteer.browserContexts();
267
288
  const incognitoCtx = await puppeteer.createIncognitoBrowserContext();
@@ -270,7 +291,7 @@ class ExistingBrowser extends browser_1.Browser {
270
291
  const windowIds = await this._session.getWindowHandles();
271
292
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
272
293
  const incognitoWindowId = windowIds.find(id => id.includes(page.target()._targetId));
273
- await this._session.switchToWindow(incognitoWindowId);
294
+ await Promise.all([this._session.switchToWindow(incognitoWindowId), page.bringToFront()]);
274
295
  }
275
296
  if (this._session.isBidi) {
276
297
  return;
@@ -285,6 +306,51 @@ class ExistingBrowser extends browser_1.Browser {
285
306
  }
286
307
  }
287
308
  }
309
+ async _performCdpIsolation(sessionOpts) {
310
+ ensure(this._session, BROWSER_SESSION_HINT);
311
+ ensure(this._cdp, CDP_CONNECTION_HINT);
312
+ const session = this._session;
313
+ const cdpTarget = this._cdp.target;
314
+ const [browserContextIds, currentTargets, browserContextId] = await Promise.all([
315
+ cdpTarget.getBrowserContexts().then(res => res.browserContextIds),
316
+ cdpTarget.getTargets().then(res => res.targetInfos),
317
+ cdpTarget.createBrowserContext().then(res => res.browserContextId),
318
+ ]);
319
+ const incognitoWindowId = await cdpTarget.createTarget({ browserContextId }).then(res => res.targetId);
320
+ const switchWindowPromise = sessionOpts?.automationProtocol === config_1.WEBDRIVER_PROTOCOL
321
+ ? session
322
+ .getWindowHandles()
323
+ .then(ids => session.switchToWindow(ids.find(id => id.includes(incognitoWindowId))))
324
+ : null;
325
+ const browserContextIdsToClose = browserContextIds.filter(id => id !== browserContextId);
326
+ await Promise.all([
327
+ switchWindowPromise,
328
+ cdpTarget.activateTarget(incognitoWindowId),
329
+ ...browserContextIdsToClose.map(contextId => cdpTarget.disposeBrowserContext(contextId)),
330
+ ...currentTargets.map(target => cdpTarget.closeTarget(target.targetId).catch(() => { })),
331
+ ]);
332
+ }
333
+ async _performIsolation({ sessionCaps, sessionOpts, }) {
334
+ ensure(this._session, BROWSER_SESSION_HINT);
335
+ if (!this._config.isolation) {
336
+ return;
337
+ }
338
+ const { browserName, browserVersion = "", version = "", } = sessionCaps || {};
339
+ if (!(0, browser_3.isSupportIsolation)(browserName, browserVersion)) {
340
+ logger.warn(`WARN: test isolation works only with chrome@${browser_2.MIN_CHROME_VERSION_SUPPORT_ISOLATION} and higher, ` +
341
+ `but got ${browserName}@${browserVersion || version}`);
342
+ return;
343
+ }
344
+ if (this._session.isBidi) {
345
+ return this._performBidiIsolation(sessionOpts);
346
+ }
347
+ else if (this._cdp) {
348
+ return this._performCdpIsolation(sessionOpts);
349
+ }
350
+ else {
351
+ logger.warn("Unable to get CDP endpoint, skip performing isolation");
352
+ }
353
+ }
288
354
  async _prepareSession() {
289
355
  await this._setOrientation(this.config.orientation);
290
356
  await this._setWindowSize(this.config.windowSize);
@@ -298,7 +364,13 @@ class ExistingBrowser extends browser_1.Browser {
298
364
  async _setWindowSize(size) {
299
365
  if (size) {
300
366
  ensure(this._session, BROWSER_SESSION_HINT);
301
- await this._session.setWindowSize(size.width, size.height);
367
+ if (typeof size === "string") {
368
+ const [width, height] = size.split("x").map(v => parseInt(v, 10));
369
+ await this._session.setWindowSize(width, height);
370
+ }
371
+ else {
372
+ await this._session.setWindowSize(size.width, size.height);
373
+ }
302
374
  }
303
375
  }
304
376
  async _performCalibration(calibrator) {
@@ -307,51 +379,13 @@ class ExistingBrowser extends browser_1.Browser {
307
379
  }
308
380
  return calibrator.calibrate(this).then(calibration => {
309
381
  this._calibration = calibration;
310
- this._camera.calibrate(calibration);
382
+ this._camera.calibrate(calibration.viewportArea, calibration.screenshotSize);
311
383
  });
312
384
  }
313
- async _buildClientScripts() {
314
- return (0, client_bridge_1.build)(this, { calibration: this._calibration }).then(clientBridge => (this._clientBridge = clientBridge));
315
- }
316
- async _runInEachIframe(cb) {
317
- ensure(this._session, BROWSER_SESSION_HINT);
318
- const iframes = await this._session.findElements("css selector", "iframe");
319
- try {
320
- for (const iframe of iframes) {
321
- await this._session.switchToFrame(iframe);
322
- await cb();
323
- // switchToParentFrame does not work in ios - https://github.com/appium/appium/issues/14882
324
- await this._session.switchToFrame(null);
325
- }
326
- }
327
- catch (e) {
328
- await this._session.switchToFrame(null);
329
- throw e;
330
- }
331
- }
332
- async _disableFrameAnimations() {
333
- ensure(this._clientBridge, CLIENT_BRIDGE_HINT);
334
- const result = await this._clientBridge.call("disableFrameAnimations");
335
- if (isClientBridgeErrorData(result)) {
336
- throw new Error(`Disable animations failed with error type '${result.error}' and error message: ${result.message}`);
337
- }
338
- return result;
339
- }
340
- async _disableIframeAnimations() {
341
- await this._runInEachIframe(() => this._disableFrameAnimations());
342
- }
343
- async _cleanupFrameAnimations() {
344
- ensure(this._clientBridge, CLIENT_BRIDGE_HINT);
345
- return this._clientBridge.call("cleanupFrameAnimations");
346
- }
347
- async _cleanupIframeAnimations() {
348
- await this._runInEachIframe(() => this._cleanupFrameAnimations());
349
- }
350
- async _cleanupPageAnimations() {
351
- await this._cleanupFrameAnimations();
352
- if (this._config.automationProtocol === config_1.WEBDRIVER_PROTOCOL) {
353
- await this._cleanupIframeAnimations();
354
- }
385
+ async _initBrowserSideUtils() {
386
+ return client_bridge_1.ClientBridge.create(this._session, "browser-utils", {
387
+ needsCompatLib: this._calibration?.needsCompatLib,
388
+ }).then(clientBridge => (this._browserSideUtils = clientBridge));
355
389
  }
356
390
  _stubCommands() {
357
391
  if (!this._session) {
@@ -369,6 +403,15 @@ class ExistingBrowser extends browser_1.Browser {
369
403
  get meta() {
370
404
  return this._meta;
371
405
  }
406
+ get tags() {
407
+ return [...this._tags];
408
+ }
409
+ get cdp() {
410
+ return this._cdp;
411
+ }
412
+ get camera() {
413
+ return this._camera;
414
+ }
372
415
  }
373
416
  exports.ExistingBrowser = ExistingBrowser;
374
417
  //# sourceMappingURL=existing-browser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"existing-browser.js","sourceRoot":"","sources":["../../../src/browser/existing-browser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"existing-browser.js","sourceRoot":"","sources":["../../../src/browser/existing-browser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export interface HistoryContext {
2
+ shouldBypassHistory: boolean;
3
+ }
4
+ export declare const runWithHistoryContext: (contextData: HistoryContext, fn: () => unknown) => unknown;
5
+ export declare const getHistoryContext: () => HistoryContext | undefined;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getHistoryContext = exports.runWithHistoryContext = void 0;
4
+ const async_hooks_1 = require("async_hooks");
5
+ const historyContext = new async_hooks_1.AsyncLocalStorage();
6
+ const runWithHistoryContext = (contextData, fn) => {
7
+ return historyContext.run(contextData, fn);
8
+ };
9
+ exports.runWithHistoryContext = runWithHistoryContext;
10
+ const getHistoryContext = () => {
11
+ return historyContext.getStore();
12
+ };
13
+ exports.getHistoryContext = getHistoryContext;
14
+ //# sourceMappingURL=async-local-storage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"async-local-storage.js","sourceRoot":"","sources":["../../../../src/browser/history/async-local-storage.ts"],"names":[],"mappings":";;;AAAA,6CAAgD;AAMhD,MAAM,cAAc,GAAG,IAAI,+BAAiB,EAAkB,CAAC;AAExD,MAAM,qBAAqB,GAAG,CAAC,WAA2B,EAAE,EAAiB,EAAW,EAAE;IAC7F,OAAO,cAAc,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;AAC/C,CAAC,CAAC;AAFW,QAAA,qBAAqB,yBAEhC;AAEK,MAAM,iBAAiB,GAAG,GAA+B,EAAE;IAC9D,OAAO,cAAc,CAAC,QAAQ,EAAE,CAAC;AACrC,CAAC,CAAC;AAFW,QAAA,iBAAiB,qBAE5B"}
@@ -2,11 +2,7 @@ import { TestStepKey, TestStep } from "../../types";
2
2
  export declare class Callstack {
3
3
  private _history;
4
4
  private _stack;
5
- private _isInBypassMode;
6
5
  constructor();
7
- /** Bypass mode indicates that no hooks should be invoked (e.g. `before()` / `after()`). Useful for system commands that should be run bypassing hooks. */
8
- get isInBypassMode(): boolean;
9
- setIsInBypassMode(flag: boolean): void;
10
6
  enter(data: Omit<TestStep, TestStepKey.TimeStart | TestStepKey.Children>): void;
11
7
  leave(key: symbol): void;
12
8
  markError(shouldPropagateFn: (parentNode: TestStep, currentNode: TestStep) => boolean): void;
@@ -8,17 +8,9 @@ const lodash_1 = __importDefault(require("lodash"));
8
8
  const types_1 = require("../../types");
9
9
  class Callstack {
10
10
  constructor() {
11
- this._isInBypassMode = false;
12
11
  this._history = [];
13
12
  this._stack = [];
14
13
  }
15
- /** Bypass mode indicates that no hooks should be invoked (e.g. `before()` / `after()`). Useful for system commands that should be run bypassing hooks. */
16
- get isInBypassMode() {
17
- return this._isInBypassMode;
18
- }
19
- setIsInBypassMode(flag) {
20
- this._isInBypassMode = flag;
21
- }
22
14
  enter(data) {
23
15
  this._stack.push({
24
16
  ...data,
@@ -1 +1 @@
1
- {"version":3,"file":"callstack.js","sourceRoot":"","sources":["../../../../src/browser/history/callstack.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"callstack.js","sourceRoot":"","sources":["../../../../src/browser/history/callstack.ts"],"names":[],"mappings":";;;;;;AAAA,oDAAuB;AACvB,uCAAoD;AAEpD,MAAa,SAAS;IAIlB;QACI,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,IAAkE;QACpE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;YACb,GAAG,IAAI;YACP,CAAC,mBAAW,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE;YACnC,CAAC,mBAAW,CAAC,QAAQ,CAAC,EAAE,EAAE;SAC7B,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,GAAW;QACb,MAAM,gBAAgB,GAAG,gBAAC,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,mBAAW,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC;QAC7F,MAAM,kBAAkB,GAAG,gBAAgB,KAAK,CAAC,CAAC,CAAC;QAEnD,IAAI,kBAAkB,EAAE,CAAC;YACrB,OAAO;QACX,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAC1D,MAAM,WAAW,GAAG,gBAAC,CAAC,KAAK,CAAC,YAAY,CAAa,CAAC;QACtD,MAAM,UAAU,GAAG,gBAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAyB,CAAC;QAC/D,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC;QAEnD,WAAW,CAAC,mBAAW,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC9C,WAAW,CAAC,mBAAW,CAAC,QAAQ,CAAC,GAAG,WAAW,CAAC,mBAAW,CAAC,OAAO,CAAC,GAAG,WAAW,CAAC,mBAAW,CAAC,SAAS,CAAC,CAAC;QAE1G,IAAI,iBAAiB,EAAE,CAAC;YACpB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACpC,CAAC;aAAM,CAAC;YACJ,UAAW,CAAC,mBAAW,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxD,CAAC;IACL,CAAC;IAED,SAAS,CAAC,iBAA2E;QACjF,IAAI,UAAU,GAAoB,IAAI,CAAC;QACvC,IAAI,WAAW,GAAyB,gBAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7D,IAAI,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;QAE1C,OAAO,cAAc,IAAI,WAAW,EAAE,CAAC;YACnC,WAAW,CAAC,mBAAW,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;YAEzC,UAAU,GAAG,WAAW,CAAC;YACzB,WAAW,GAAG,gBAAC,CAAC,IAAI,CAAC,WAAW,CAAC,mBAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;YACxD,cAAc,GAAG,OAAO,CAAC,WAAW,IAAI,iBAAiB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC;QACxF,CAAC;IACL,CAAC;IAED,KAAK;QACD,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;IACvB,CAAC;IAED,OAAO;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC;QAE9B,IAAI,CAAC,KAAK,EAAE,CAAC;QAEb,OAAO,OAAO,CAAC;IACnB,CAAC;CACJ;AAlED,8BAkEC"}
@@ -1,15 +1,28 @@
1
1
  import { Callstack } from "./callstack";
2
2
  import { BrowserConfig } from "../../config/browser-config";
3
- import { TestStep } from "../../types";
3
+ import type { Test, TestStep } from "../../types";
4
+ export interface PromiseRef<T = unknown> {
5
+ current: Promise<T>;
6
+ }
4
7
  export declare const shouldPropagateFn: (parentNode: TestStep, currentNode: TestStep) => boolean;
5
8
  interface HooksData {
6
9
  session: WebdriverIO.Browser;
10
+ snapshotsPromiseRef: PromiseRef;
7
11
  callstack: Callstack;
8
12
  config: BrowserConfig;
9
13
  }
10
- export declare const runWithoutHistory: <T>({ callstack }: {
11
- callstack: HooksData["callstack"];
12
- }, fn: () => T) => Promise<T>;
13
- export declare const runGroup: <T>({ session, callstack, config }: HooksData, name: string, fn: () => T) => T;
14
- export declare const initCommandHistory: (session: WebdriverIO.Browser, config: BrowserConfig) => Callstack;
14
+ interface RequestDomSnapshotsData extends HooksData {
15
+ attempt?: number;
16
+ currentTest?: Test;
17
+ }
18
+ export declare const runWithoutHistory: <T>(_: unknown, fn: () => T) => Promise<T>;
19
+ export declare const requestDomSnapshots: ({ session, callstack, snapshotsPromiseRef, config, attempt, currentTest, }: RequestDomSnapshotsData) => void;
20
+ type CleanupDomSnapshotsData = Pick<HooksData, "session" | "callstack">;
21
+ export declare const cleanupDomSnapshots: ({ session, callstack }: CleanupDomSnapshotsData) => Promise<void>;
22
+ export declare const runGroup: <T>({ session, callstack, snapshotsPromiseRef, config }: HooksData, name: string, fn: () => T) => T;
23
+ interface InitHistoryResult {
24
+ callstack: Callstack;
25
+ snapshotsPromiseRef: PromiseRef;
26
+ }
27
+ export declare const initCommandHistory: (session: WebdriverIO.Browser, config: BrowserConfig) => InitHistoryResult;
15
28
  export {};