browser-debugger-cli 0.3.0 → 0.5.1

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 (484) hide show
  1. package/README.md +137 -126
  2. package/dist/__tests__/smoke/error-handling.smoke.test.d.ts +8 -0
  3. package/dist/__tests__/smoke/error-handling.smoke.test.d.ts.map +1 -0
  4. package/dist/__tests__/smoke/error-handling.smoke.test.js +106 -0
  5. package/dist/__tests__/smoke/error-handling.smoke.test.js.map +1 -0
  6. package/dist/__tests__/smoke/session-lifecycle.smoke.test.d.ts +8 -0
  7. package/dist/__tests__/smoke/session-lifecycle.smoke.test.d.ts.map +1 -0
  8. package/dist/__tests__/smoke/session-lifecycle.smoke.test.js +109 -0
  9. package/dist/__tests__/smoke/session-lifecycle.smoke.test.js.map +1 -0
  10. package/dist/__testutils__/commandRunner.d.ts +45 -0
  11. package/dist/__testutils__/commandRunner.d.ts.map +1 -0
  12. package/dist/__testutils__/commandRunner.js +108 -0
  13. package/dist/__testutils__/commandRunner.js.map +1 -0
  14. package/dist/__testutils__/daemonHelpers.d.ts +81 -0
  15. package/dist/__testutils__/daemonHelpers.d.ts.map +1 -0
  16. package/dist/__testutils__/daemonHelpers.js +206 -0
  17. package/dist/__testutils__/daemonHelpers.js.map +1 -0
  18. package/dist/__testutils__/index.d.ts +1 -0
  19. package/dist/__testutils__/index.d.ts.map +1 -1
  20. package/dist/__testutils__/index.js +1 -0
  21. package/dist/__testutils__/index.js.map +1 -1
  22. package/dist/__testutils__/testCleanup.d.ts +45 -0
  23. package/dist/__testutils__/testCleanup.d.ts.map +1 -0
  24. package/dist/__testutils__/testCleanup.js +87 -0
  25. package/dist/__testutils__/testCleanup.js.map +1 -0
  26. package/dist/__testutils__/testHome.d.ts +26 -0
  27. package/dist/__testutils__/testHome.d.ts.map +1 -0
  28. package/dist/__testutils__/testHome.js +57 -0
  29. package/dist/__testutils__/testHome.js.map +1 -0
  30. package/dist/__testutils__/testProcess.d.ts.map +1 -1
  31. package/dist/__testutils__/testProcess.js +11 -3
  32. package/dist/__testutils__/testProcess.js.map +1 -1
  33. package/dist/cli/commands/__tests__/start.unit.test.d.ts +2 -0
  34. package/dist/cli/commands/__tests__/start.unit.test.d.ts.map +1 -0
  35. package/dist/cli/commands/__tests__/start.unit.test.js +131 -0
  36. package/dist/cli/commands/__tests__/start.unit.test.js.map +1 -0
  37. package/dist/cli/commands/cleanup.d.ts +1 -0
  38. package/dist/cli/commands/cleanup.d.ts.map +1 -1
  39. package/dist/cli/commands/cleanup.js +80 -61
  40. package/dist/cli/commands/cleanup.js.map +1 -1
  41. package/dist/cli/commands/details.d.ts +2 -1
  42. package/dist/cli/commands/details.d.ts.map +1 -1
  43. package/dist/cli/commands/details.js +104 -52
  44. package/dist/cli/commands/details.js.map +1 -1
  45. package/dist/cli/commands/peek.d.ts +2 -1
  46. package/dist/cli/commands/peek.d.ts.map +1 -1
  47. package/dist/cli/commands/peek.js +22 -67
  48. package/dist/cli/commands/peek.js.map +1 -1
  49. package/dist/cli/commands/query.d.ts +9 -0
  50. package/dist/cli/commands/query.d.ts.map +1 -0
  51. package/dist/cli/commands/query.js +125 -0
  52. package/dist/cli/commands/query.js.map +1 -0
  53. package/dist/cli/commands/start.d.ts +74 -0
  54. package/dist/cli/commands/start.d.ts.map +1 -1
  55. package/dist/cli/commands/start.js +147 -38
  56. package/dist/cli/commands/start.js.map +1 -1
  57. package/dist/cli/commands/status.d.ts.map +1 -1
  58. package/dist/cli/commands/status.js +37 -49
  59. package/dist/cli/commands/status.js.map +1 -1
  60. package/dist/cli/commands/stop.d.ts +1 -0
  61. package/dist/cli/commands/stop.d.ts.map +1 -1
  62. package/dist/cli/commands/stop.js +106 -120
  63. package/dist/cli/commands/stop.js.map +1 -1
  64. package/dist/cli/formatters/detailsFormatter.d.ts +1 -1
  65. package/dist/cli/formatters/previewFormatter.d.ts +7 -7
  66. package/dist/cli/formatters/previewFormatter.d.ts.map +1 -1
  67. package/dist/cli/formatters/previewFormatter.js +5 -10
  68. package/dist/cli/formatters/previewFormatter.js.map +1 -1
  69. package/dist/cli/formatters/statusFormatter.d.ts +13 -10
  70. package/dist/cli/formatters/statusFormatter.d.ts.map +1 -1
  71. package/dist/cli/formatters/statusFormatter.js +26 -53
  72. package/dist/cli/formatters/statusFormatter.js.map +1 -1
  73. package/dist/cli/handlers/ChromeBootstrap.d.ts +24 -0
  74. package/dist/cli/handlers/ChromeBootstrap.d.ts.map +1 -0
  75. package/dist/cli/handlers/ChromeBootstrap.js +50 -0
  76. package/dist/cli/handlers/ChromeBootstrap.js.map +1 -0
  77. package/dist/cli/handlers/OutputBuilder.d.ts +2 -3
  78. package/dist/cli/handlers/OutputBuilder.d.ts.map +1 -1
  79. package/dist/cli/handlers/OutputBuilder.js +2 -4
  80. package/dist/cli/handlers/OutputBuilder.js.map +1 -1
  81. package/dist/cli/handlers/OutputWriter.d.ts +15 -0
  82. package/dist/cli/handlers/OutputWriter.d.ts.map +1 -0
  83. package/dist/cli/handlers/OutputWriter.js +34 -0
  84. package/dist/cli/handlers/OutputWriter.js.map +1 -0
  85. package/dist/cli/handlers/PreviewWriter.d.ts +52 -0
  86. package/dist/cli/handlers/PreviewWriter.d.ts.map +1 -0
  87. package/dist/cli/handlers/PreviewWriter.js +118 -0
  88. package/dist/cli/handlers/PreviewWriter.js.map +1 -0
  89. package/dist/cli/handlers/SessionLock.d.ts +16 -0
  90. package/dist/cli/handlers/SessionLock.d.ts.map +1 -0
  91. package/dist/cli/handlers/SessionLock.js +35 -0
  92. package/dist/cli/handlers/SessionLock.js.map +1 -0
  93. package/dist/cli/handlers/SessionLoop.d.ts +19 -0
  94. package/dist/cli/handlers/SessionLoop.d.ts.map +1 -0
  95. package/dist/cli/handlers/SessionLoop.js +47 -0
  96. package/dist/cli/handlers/SessionLoop.js.map +1 -0
  97. package/dist/cli/handlers/ShutdownController.d.ts +41 -0
  98. package/dist/cli/handlers/ShutdownController.d.ts.map +1 -0
  99. package/dist/cli/handlers/ShutdownController.js +94 -0
  100. package/dist/cli/handlers/ShutdownController.js.map +1 -0
  101. package/dist/cli/handlers/SignalHandler.d.ts +35 -0
  102. package/dist/cli/handlers/SignalHandler.d.ts.map +1 -0
  103. package/dist/cli/handlers/SignalHandler.js +81 -0
  104. package/dist/cli/handlers/SignalHandler.js.map +1 -0
  105. package/dist/cli/handlers/TargetSetup.d.ts +42 -0
  106. package/dist/cli/handlers/TargetSetup.d.ts.map +1 -0
  107. package/dist/cli/handlers/TargetSetup.js +87 -0
  108. package/dist/cli/handlers/TargetSetup.js.map +1 -0
  109. package/dist/cli/handlers/sessionController.d.ts +41 -0
  110. package/dist/cli/handlers/sessionController.d.ts.map +1 -1
  111. package/dist/cli/handlers/sessionController.js +266 -5
  112. package/dist/cli/handlers/sessionController.js.map +1 -1
  113. package/dist/cli/registry.d.ts +2 -2
  114. package/dist/cli/registry.d.ts.map +1 -1
  115. package/dist/cli/registry.js +12 -37
  116. package/dist/cli/registry.js.map +1 -1
  117. package/dist/collectors/console.d.ts +1 -1
  118. package/dist/collectors/console.js +2 -2
  119. package/dist/collectors/console.js.map +1 -1
  120. package/dist/collectors/dom.d.ts +1 -1
  121. package/dist/collectors/network.d.ts +1 -2
  122. package/dist/collectors/network.d.ts.map +1 -1
  123. package/dist/collectors/network.js +3 -3
  124. package/dist/collectors/network.js.map +1 -1
  125. package/dist/commands/cdp.js +1 -1
  126. package/dist/commands/cdp.js.map +1 -1
  127. package/dist/commands/cleanup.d.ts.map +1 -1
  128. package/dist/commands/cleanup.js +12 -15
  129. package/dist/commands/cleanup.js.map +1 -1
  130. package/dist/commands/dom.d.ts.map +1 -1
  131. package/dist/commands/dom.js +13 -19
  132. package/dist/commands/dom.js.map +1 -1
  133. package/dist/commands/domEvalHelpers.d.ts +1 -1
  134. package/dist/commands/domEvalHelpers.d.ts.map +1 -1
  135. package/dist/commands/domEvalHelpers.js +56 -7
  136. package/dist/commands/domEvalHelpers.js.map +1 -1
  137. package/dist/commands/domOptionsBuilder.d.ts +32 -0
  138. package/dist/commands/domOptionsBuilder.d.ts.map +1 -1
  139. package/dist/commands/domOptionsBuilder.js +35 -0
  140. package/dist/commands/domOptionsBuilder.js.map +1 -1
  141. package/dist/commands/machineReadableHelp.d.ts +98 -0
  142. package/dist/commands/machineReadableHelp.d.ts.map +1 -0
  143. package/dist/commands/machineReadableHelp.js +137 -0
  144. package/dist/commands/machineReadableHelp.js.map +1 -0
  145. package/dist/commands/shared/CommandRunner.d.ts.map +1 -1
  146. package/dist/commands/shared/CommandRunner.js +2 -3
  147. package/dist/commands/shared/CommandRunner.js.map +1 -1
  148. package/dist/commands/shared/OutputBuilder.js +1 -1
  149. package/dist/commands/shared/OutputBuilder.js.map +1 -1
  150. package/dist/commands/shared/commonOptions.d.ts.map +1 -1
  151. package/dist/commands/shared/commonOptions.js +9 -3
  152. package/dist/commands/shared/commonOptions.js.map +1 -1
  153. package/dist/commands/shared/daemonSessionController.d.ts +2 -0
  154. package/dist/commands/shared/daemonSessionController.d.ts.map +1 -1
  155. package/dist/commands/shared/daemonSessionController.js +13 -16
  156. package/dist/commands/shared/daemonSessionController.js.map +1 -1
  157. package/dist/commands/shared/sessionController.js +1 -1
  158. package/dist/commands/shared/sessionController.js.map +1 -1
  159. package/dist/commands/start.d.ts.map +1 -1
  160. package/dist/commands/start.js +16 -1
  161. package/dist/commands/start.js.map +1 -1
  162. package/dist/commands/status.d.ts.map +1 -1
  163. package/dist/commands/status.js +72 -55
  164. package/dist/commands/status.js.map +1 -1
  165. package/dist/commands/stop.d.ts.map +1 -1
  166. package/dist/commands/stop.js +11 -25
  167. package/dist/commands/stop.js.map +1 -1
  168. package/dist/commands/tail.d.ts +11 -0
  169. package/dist/commands/tail.d.ts.map +1 -0
  170. package/dist/commands/tail.js +114 -0
  171. package/dist/commands/tail.js.map +1 -0
  172. package/dist/commands.d.ts.map +1 -1
  173. package/dist/commands.js +2 -0
  174. package/dist/commands.js.map +1 -1
  175. package/dist/connection/cdp.d.ts +46 -2
  176. package/dist/connection/cdp.d.ts.map +1 -1
  177. package/dist/connection/cdp.js +71 -5
  178. package/dist/connection/cdp.js.map +1 -1
  179. package/dist/connection/diagnostics.d.ts +16 -0
  180. package/dist/connection/diagnostics.d.ts.map +1 -0
  181. package/dist/connection/diagnostics.js +37 -0
  182. package/dist/connection/diagnostics.js.map +1 -0
  183. package/dist/connection/errors.d.ts +74 -0
  184. package/dist/connection/errors.d.ts.map +1 -0
  185. package/dist/connection/errors.js +83 -0
  186. package/dist/connection/errors.js.map +1 -0
  187. package/dist/connection/handlers.d.ts +31 -0
  188. package/dist/connection/handlers.d.ts.map +1 -0
  189. package/dist/connection/handlers.js +38 -0
  190. package/dist/connection/handlers.js.map +1 -0
  191. package/dist/connection/launcher.d.ts +3 -20
  192. package/dist/connection/launcher.d.ts.map +1 -1
  193. package/dist/connection/launcher.js +130 -32
  194. package/dist/connection/launcher.js.map +1 -1
  195. package/dist/connection/pageReadiness.d.ts +46 -0
  196. package/dist/connection/pageReadiness.d.ts.map +1 -0
  197. package/dist/connection/pageReadiness.js +270 -0
  198. package/dist/connection/pageReadiness.js.map +1 -0
  199. package/dist/connection/tabs.d.ts +52 -0
  200. package/dist/connection/tabs.d.ts.map +1 -0
  201. package/dist/connection/tabs.js +227 -0
  202. package/dist/connection/tabs.js.map +1 -0
  203. package/dist/constants.d.ts +20 -40
  204. package/dist/constants.d.ts.map +1 -1
  205. package/dist/constants.js +26 -40
  206. package/dist/constants.js.map +1 -1
  207. package/dist/daemon/ipcServer.d.ts +5 -7
  208. package/dist/daemon/ipcServer.d.ts.map +1 -1
  209. package/dist/daemon/ipcServer.js +178 -143
  210. package/dist/daemon/ipcServer.js.map +1 -1
  211. package/dist/daemon/launcher.js +1 -1
  212. package/dist/daemon/launcher.js.map +1 -1
  213. package/dist/daemon/server/SocketServer.d.ts +22 -0
  214. package/dist/daemon/server/SocketServer.d.ts.map +1 -0
  215. package/dist/daemon/server/SocketServer.js +67 -0
  216. package/dist/daemon/server/SocketServer.js.map +1 -0
  217. package/dist/daemon/server/WorkerManager.d.ts +36 -0
  218. package/dist/daemon/server/WorkerManager.d.ts.map +1 -0
  219. package/dist/daemon/server/WorkerManager.js +98 -0
  220. package/dist/daemon/server/WorkerManager.js.map +1 -0
  221. package/dist/daemon/startSession.d.ts +2 -0
  222. package/dist/daemon/startSession.d.ts.map +1 -1
  223. package/dist/daemon/startSession.js +4 -2
  224. package/dist/daemon/startSession.js.map +1 -1
  225. package/dist/daemon/worker/TelemetryStore.d.ts +18 -0
  226. package/dist/daemon/worker/TelemetryStore.d.ts.map +1 -0
  227. package/dist/daemon/worker/TelemetryStore.js +49 -0
  228. package/dist/daemon/worker/TelemetryStore.js.map +1 -0
  229. package/dist/daemon/worker/collectors.d.ts +8 -0
  230. package/dist/daemon/worker/collectors.d.ts.map +1 -0
  231. package/dist/daemon/worker/collectors.js +19 -0
  232. package/dist/daemon/worker/collectors.js.map +1 -0
  233. package/dist/daemon/worker/commandRegistry.d.ts +10 -0
  234. package/dist/daemon/worker/commandRegistry.d.ts.map +1 -0
  235. package/dist/daemon/worker/commandRegistry.js +289 -0
  236. package/dist/daemon/worker/commandRegistry.js.map +1 -0
  237. package/dist/daemon/worker/plugins.d.ts +21 -0
  238. package/dist/daemon/worker/plugins.d.ts.map +1 -0
  239. package/dist/daemon/worker/plugins.js +71 -0
  240. package/dist/daemon/worker/plugins.js.map +1 -0
  241. package/dist/daemon/worker/types.d.ts +13 -0
  242. package/dist/daemon/worker/types.d.ts.map +1 -0
  243. package/dist/daemon/worker/types.js +2 -0
  244. package/dist/daemon/worker/types.js.map +1 -0
  245. package/dist/daemon/worker.js +206 -529
  246. package/dist/daemon/worker.js.map +1 -1
  247. package/dist/help/machineReadableHelp.d.ts +100 -0
  248. package/dist/help/machineReadableHelp.d.ts.map +1 -0
  249. package/dist/help/machineReadableHelp.js +139 -0
  250. package/dist/help/machineReadableHelp.js.map +1 -0
  251. package/dist/index.js +18 -9
  252. package/dist/index.js.map +1 -1
  253. package/dist/ipc/__tests__/client.contract.test.js +2 -2
  254. package/dist/ipc/__tests__/client.contract.test.js.map +1 -1
  255. package/dist/ipc/client.d.ts +3 -1
  256. package/dist/ipc/client.d.ts.map +1 -1
  257. package/dist/ipc/client.js +27 -14
  258. package/dist/ipc/client.js.map +1 -1
  259. package/dist/ipc/commands.d.ts +1 -0
  260. package/dist/ipc/commands.d.ts.map +1 -1
  261. package/dist/ipc/commands.js.map +1 -1
  262. package/dist/ipc/types.d.ts +2 -0
  263. package/dist/ipc/types.d.ts.map +1 -1
  264. package/dist/session/BdgSession.d.ts +91 -0
  265. package/dist/session/BdgSession.d.ts.map +1 -0
  266. package/dist/session/BdgSession.js +230 -0
  267. package/dist/session/BdgSession.js.map +1 -0
  268. package/dist/session/cleanup.d.ts.map +1 -1
  269. package/dist/session/cleanup.js +67 -65
  270. package/dist/session/cleanup.js.map +1 -1
  271. package/dist/session/fileOps.d.ts +25 -0
  272. package/dist/session/fileOps.d.ts.map +1 -0
  273. package/dist/session/fileOps.js +39 -0
  274. package/dist/session/fileOps.js.map +1 -0
  275. package/dist/session/metadata.js +2 -2
  276. package/dist/session/metadata.js.map +1 -1
  277. package/dist/session/paths.d.ts +2 -7
  278. package/dist/session/paths.d.ts.map +1 -1
  279. package/dist/session/paths.js +8 -8
  280. package/dist/session/paths.js.map +1 -1
  281. package/dist/session/queryCache.js +1 -1
  282. package/dist/session/queryCache.js.map +1 -1
  283. package/dist/telemetry/__tests__/filters.unit.test.d.ts +2 -0
  284. package/dist/telemetry/__tests__/filters.unit.test.d.ts.map +1 -0
  285. package/dist/telemetry/__tests__/filters.unit.test.js +239 -0
  286. package/dist/telemetry/__tests__/filters.unit.test.js.map +1 -0
  287. package/dist/telemetry/console.d.ts +1 -1
  288. package/dist/telemetry/console.d.ts.map +1 -1
  289. package/dist/telemetry/console.js +5 -3
  290. package/dist/telemetry/console.js.map +1 -1
  291. package/dist/telemetry/dialogs.d.ts +27 -0
  292. package/dist/telemetry/dialogs.d.ts.map +1 -0
  293. package/dist/telemetry/dialogs.js +51 -0
  294. package/dist/telemetry/dialogs.js.map +1 -0
  295. package/dist/telemetry/filters.d.ts +148 -0
  296. package/dist/telemetry/filters.d.ts.map +1 -0
  297. package/dist/telemetry/filters.js +358 -0
  298. package/dist/telemetry/filters.js.map +1 -0
  299. package/dist/telemetry/navigation.d.ts +49 -0
  300. package/dist/telemetry/navigation.d.ts.map +1 -0
  301. package/dist/telemetry/navigation.js +69 -0
  302. package/dist/telemetry/navigation.js.map +1 -0
  303. package/dist/telemetry/network.d.ts +1 -0
  304. package/dist/telemetry/network.d.ts.map +1 -1
  305. package/dist/telemetry/network.js +23 -34
  306. package/dist/telemetry/network.js.map +1 -1
  307. package/dist/types.d.ts +2 -0
  308. package/dist/types.d.ts.map +1 -1
  309. package/dist/ui/errors/CommandError.d.ts +39 -0
  310. package/dist/ui/errors/CommandError.d.ts.map +1 -0
  311. package/dist/ui/errors/CommandError.js +48 -0
  312. package/dist/ui/errors/CommandError.js.map +1 -0
  313. package/dist/ui/errors/SystemErrors.d.ts +22 -0
  314. package/dist/ui/errors/SystemErrors.d.ts.map +1 -0
  315. package/dist/ui/errors/SystemErrors.js +23 -0
  316. package/dist/ui/errors/SystemErrors.js.map +1 -0
  317. package/dist/ui/errors/index.d.ts +9 -0
  318. package/dist/ui/errors/index.d.ts.map +1 -0
  319. package/dist/ui/errors/index.js +12 -0
  320. package/dist/ui/errors/index.js.map +1 -0
  321. package/dist/ui/errors/utils.d.ts +24 -0
  322. package/dist/ui/errors/utils.d.ts.map +1 -0
  323. package/dist/ui/errors/utils.js +28 -0
  324. package/dist/ui/errors/utils.js.map +1 -0
  325. package/dist/ui/formatters/status.d.ts.map +1 -1
  326. package/dist/ui/formatters/status.js +1 -1
  327. package/dist/ui/formatters/status.js.map +1 -1
  328. package/dist/ui/logging/index.d.ts +7 -0
  329. package/dist/ui/logging/index.d.ts.map +1 -0
  330. package/dist/ui/logging/index.js +7 -0
  331. package/dist/ui/logging/index.js.map +1 -0
  332. package/dist/ui/logging/logger.d.ts +98 -0
  333. package/dist/ui/logging/logger.d.ts.map +1 -0
  334. package/dist/ui/logging/logger.js +93 -0
  335. package/dist/ui/logging/logger.js.map +1 -0
  336. package/dist/ui/messages/chrome.d.ts +50 -1
  337. package/dist/ui/messages/chrome.d.ts.map +1 -1
  338. package/dist/ui/messages/chrome.js +77 -0
  339. package/dist/ui/messages/chrome.js.map +1 -1
  340. package/dist/ui/messages/deprecation.d.ts +30 -0
  341. package/dist/ui/messages/deprecation.d.ts.map +1 -0
  342. package/dist/ui/messages/deprecation.js +49 -0
  343. package/dist/ui/messages/deprecation.js.map +1 -0
  344. package/dist/ui/messages/preview.js +1 -1
  345. package/dist/ui/messages/preview.js.map +1 -1
  346. package/dist/ui/messages/session.d.ts.map +1 -1
  347. package/dist/ui/messages/session.js +21 -7
  348. package/dist/ui/messages/session.js.map +1 -1
  349. package/dist/utils/__tests__/session.contract.test.js +15 -1
  350. package/dist/utils/__tests__/session.contract.test.js.map +1 -1
  351. package/dist/utils/filters.d.ts +40 -0
  352. package/dist/utils/filters.d.ts.map +1 -1
  353. package/dist/utils/filters.js +54 -0
  354. package/dist/utils/filters.js.map +1 -1
  355. package/dist/utils/pageReadiness.js +24 -25
  356. package/dist/utils/pageReadiness.js.map +1 -1
  357. package/dist/utils/session.d.ts +200 -0
  358. package/dist/utils/session.d.ts.map +1 -0
  359. package/dist/utils/session.js +498 -0
  360. package/dist/utils/session.js.map +1 -0
  361. package/dist/utils/url.d.ts.map +1 -1
  362. package/dist/utils/url.js +10 -0
  363. package/dist/utils/url.js.map +1 -1
  364. package/dist/utils/validation.d.ts +12 -0
  365. package/dist/utils/validation.d.ts.map +1 -0
  366. package/dist/utils/validation.js +20 -0
  367. package/dist/utils/validation.js.map +1 -0
  368. package/package.json +2 -1
  369. package/dist/cli/commands/__tests__/cdp.contract.test.d.ts +0 -24
  370. package/dist/cli/commands/__tests__/cdp.contract.test.d.ts.map +0 -1
  371. package/dist/cli/commands/__tests__/cdp.contract.test.js +0 -467
  372. package/dist/cli/commands/__tests__/cdp.contract.test.js.map +0 -1
  373. package/dist/cli/commands/cdp.d.ts +0 -8
  374. package/dist/cli/commands/cdp.d.ts.map +0 -1
  375. package/dist/cli/commands/cdp.js +0 -45
  376. package/dist/cli/commands/cdp.js.map +0 -1
  377. package/dist/cli/commands/console.d.ts +0 -8
  378. package/dist/cli/commands/console.d.ts.map +0 -1
  379. package/dist/cli/commands/console.js +0 -97
  380. package/dist/cli/commands/console.js.map +0 -1
  381. package/dist/cli/commands/dom/helpers/domCache.d.ts +0 -36
  382. package/dist/cli/commands/dom/helpers/domCache.d.ts.map +0 -1
  383. package/dist/cli/commands/dom/helpers/domCache.js +0 -65
  384. package/dist/cli/commands/dom/helpers/domCache.js.map +0 -1
  385. package/dist/cli/commands/dom/helpers/domQuery.d.ts +0 -48
  386. package/dist/cli/commands/dom/helpers/domQuery.d.ts.map +0 -1
  387. package/dist/cli/commands/dom/helpers/domQuery.js +0 -104
  388. package/dist/cli/commands/dom/helpers/domQuery.js.map +0 -1
  389. package/dist/cli/commands/dom/helpers/errorHandler.d.ts +0 -45
  390. package/dist/cli/commands/dom/helpers/errorHandler.d.ts.map +0 -1
  391. package/dist/cli/commands/dom/helpers/errorHandler.js +0 -71
  392. package/dist/cli/commands/dom/helpers/errorHandler.js.map +0 -1
  393. package/dist/cli/commands/dom/helpers/evalHelpers.d.ts +0 -52
  394. package/dist/cli/commands/dom/helpers/evalHelpers.d.ts.map +0 -1
  395. package/dist/cli/commands/dom/helpers/evalHelpers.js +0 -75
  396. package/dist/cli/commands/dom/helpers/evalHelpers.js.map +0 -1
  397. package/dist/cli/commands/dom/helpers/optionsBuilder.d.ts +0 -35
  398. package/dist/cli/commands/dom/helpers/optionsBuilder.d.ts.map +0 -1
  399. package/dist/cli/commands/dom/helpers/optionsBuilder.js +0 -51
  400. package/dist/cli/commands/dom/helpers/optionsBuilder.js.map +0 -1
  401. package/dist/cli/commands/dom/helpers/selectorParser.d.ts +0 -20
  402. package/dist/cli/commands/dom/helpers/selectorParser.d.ts.map +0 -1
  403. package/dist/cli/commands/dom/helpers/selectorParser.js +0 -20
  404. package/dist/cli/commands/dom/helpers/selectorParser.js.map +0 -1
  405. package/dist/cli/commands/dom/index.d.ts +0 -8
  406. package/dist/cli/commands/dom/index.d.ts.map +0 -1
  407. package/dist/cli/commands/dom/index.js +0 -257
  408. package/dist/cli/commands/dom/index.js.map +0 -1
  409. package/dist/cli/commands/dom.d.ts +0 -8
  410. package/dist/cli/commands/dom.d.ts.map +0 -1
  411. package/dist/cli/commands/dom.js +0 -257
  412. package/dist/cli/commands/dom.js.map +0 -1
  413. package/dist/cli/commands/domErrorHandler.d.ts +0 -45
  414. package/dist/cli/commands/domErrorHandler.d.ts.map +0 -1
  415. package/dist/cli/commands/domErrorHandler.js +0 -71
  416. package/dist/cli/commands/domErrorHandler.js.map +0 -1
  417. package/dist/cli/commands/domEvalHelpers.d.ts +0 -52
  418. package/dist/cli/commands/domEvalHelpers.d.ts.map +0 -1
  419. package/dist/cli/commands/domEvalHelpers.js +0 -76
  420. package/dist/cli/commands/domEvalHelpers.js.map +0 -1
  421. package/dist/cli/commands/domOptionsBuilder.d.ts +0 -35
  422. package/dist/cli/commands/domOptionsBuilder.d.ts.map +0 -1
  423. package/dist/cli/commands/domOptionsBuilder.js +0 -51
  424. package/dist/cli/commands/domOptionsBuilder.js.map +0 -1
  425. package/dist/cli/commands/domSelectorParser.d.ts +0 -20
  426. package/dist/cli/commands/domSelectorParser.d.ts.map +0 -1
  427. package/dist/cli/commands/domSelectorParser.js +0 -20
  428. package/dist/cli/commands/domSelectorParser.js.map +0 -1
  429. package/dist/cli/commands/network.d.ts +0 -8
  430. package/dist/cli/commands/network.d.ts.map +0 -1
  431. package/dist/cli/commands/network.js +0 -43
  432. package/dist/cli/commands/network.js.map +0 -1
  433. package/dist/cli/handlers/CommandRunner.d.ts +0 -60
  434. package/dist/cli/handlers/CommandRunner.d.ts.map +0 -1
  435. package/dist/cli/handlers/CommandRunner.js +0 -81
  436. package/dist/cli/handlers/CommandRunner.js.map +0 -1
  437. package/dist/cli/handlers/commonOptions.d.ts +0 -54
  438. package/dist/cli/handlers/commonOptions.d.ts.map +0 -1
  439. package/dist/cli/handlers/commonOptions.js +0 -64
  440. package/dist/cli/handlers/commonOptions.js.map +0 -1
  441. package/dist/cli/handlers/daemonSessionController.d.ts +0 -23
  442. package/dist/cli/handlers/daemonSessionController.d.ts.map +0 -1
  443. package/dist/cli/handlers/daemonSessionController.js +0 -79
  444. package/dist/cli/handlers/daemonSessionController.js.map +0 -1
  445. package/dist/cli/handlers/landingPage.d.ts +0 -8
  446. package/dist/cli/handlers/landingPage.d.ts.map +0 -1
  447. package/dist/cli/handlers/landingPage.js +0 -8
  448. package/dist/cli/handlers/landingPage.js.map +0 -1
  449. package/dist/collectors/__tests__/network.contract.test.d.ts +0 -28
  450. package/dist/collectors/__tests__/network.contract.test.d.ts.map +0 -1
  451. package/dist/collectors/__tests__/network.contract.test.js +0 -540
  452. package/dist/collectors/__tests__/network.contract.test.js.map +0 -1
  453. package/dist/commandRegistry.d.ts +0 -11
  454. package/dist/commandRegistry.d.ts.map +0 -1
  455. package/dist/commandRegistry.js +0 -45
  456. package/dist/commandRegistry.js.map +0 -1
  457. package/dist/commands/domErrorHandler.d.ts +0 -45
  458. package/dist/commands/domErrorHandler.d.ts.map +0 -1
  459. package/dist/commands/domErrorHandler.js +0 -71
  460. package/dist/commands/domErrorHandler.js.map +0 -1
  461. package/dist/dom/cache.d.ts +0 -36
  462. package/dist/dom/cache.d.ts.map +0 -1
  463. package/dist/dom/cache.js +0 -65
  464. package/dist/dom/cache.js.map +0 -1
  465. package/dist/dom/index.d.ts +0 -9
  466. package/dist/dom/index.d.ts.map +0 -1
  467. package/dist/dom/index.js +0 -9
  468. package/dist/dom/index.js.map +0 -1
  469. package/dist/dom/query.d.ts +0 -48
  470. package/dist/dom/query.d.ts.map +0 -1
  471. package/dist/dom/query.js +0 -104
  472. package/dist/dom/query.js.map +0 -1
  473. package/dist/utils/formatters/network.d.ts +0 -23
  474. package/dist/utils/formatters/network.d.ts.map +0 -1
  475. package/dist/utils/formatters/network.js +0 -35
  476. package/dist/utils/formatters/network.js.map +0 -1
  477. package/dist/utils/ui.d.ts +0 -36
  478. package/dist/utils/ui.d.ts.map +0 -1
  479. package/dist/utils/ui.js +0 -47
  480. package/dist/utils/ui.js.map +0 -1
  481. package/dist/utils/url/safeParseUrl.d.ts +0 -63
  482. package/dist/utils/url/safeParseUrl.d.ts.map +0 -1
  483. package/dist/utils/url/safeParseUrl.js +0 -84
  484. package/dist/utils/url/safeParseUrl.js.map +0 -1
@@ -1,467 +0,0 @@
1
- /* eslint-disable @typescript-eslint/no-floating-promises */
2
- /**
3
- * CDP Command Contract Tests
4
- *
5
- * Tests the public API behavior of raw CDP command execution WITHOUT testing implementation details.
6
- * Follows the testing philosophy: "Test the contract, not the implementation"
7
- *
8
- * Contract Coverage:
9
- * 1. callCDP() IPC client function (src/ipc/client.ts:298)
10
- * 2. bdg cdp CLI command (src/cli/commands/cdp.ts)
11
- * 3. cdp_call IPC command routing (daemon/worker)
12
- * 4. End-to-end flow: CLI → IPC client → daemon → worker → CDP → response
13
- *
14
- * What we test:
15
- * ✅ Behavior: CDP method execution → result returned
16
- * ✅ Invariants: "CDP calls reach the browser", "Results propagate back correctly"
17
- * ✅ Edge cases: Invalid methods, missing params, CDP errors, timeout
18
- *
19
- * What we DON'T test:
20
- * ❌ How sendCommand() works internally
21
- * ❌ How the daemon routes messages
22
- * ❌ How the worker parses requests
23
- */
24
- import assert from 'node:assert/strict';
25
- import { afterEach, beforeEach, describe, it } from 'node:test';
26
- import { createResponse, createErrorResponse } from '../../../__testfixtures__/cdpMessages.js';
27
- import { FakeWebSocket } from '../../../__testutils__/FakeWebSocket.js';
28
- import { CDPConnection } from '../../../connection/cdp.js';
29
- import { validateIPCResponse } from '../../../ipc/responseValidator.js';
30
- /**
31
- * Mock CDP connection that simulates browser responses
32
- */
33
- class MockCDPConnection extends CDPConnection {
34
- mockSocket;
35
- constructor() {
36
- const mockSocket = new FakeWebSocket();
37
- super(() => mockSocket);
38
- this.mockSocket = mockSocket;
39
- }
40
- /**
41
- * Connect and open the mock WebSocket
42
- */
43
- async connectAndOpen() {
44
- const connectPromise = this.connect('ws://localhost:9222/devtools/browser');
45
- this.mockSocket.simulateOpen();
46
- await connectPromise;
47
- }
48
- /**
49
- * Simulate CDP response for next command
50
- */
51
- simulateNextResponse(result) {
52
- const messages = this.mockSocket.getSentMessages();
53
- const lastMessage = messages[messages.length - 1];
54
- if (!lastMessage) {
55
- throw new Error('No message sent to simulate response for');
56
- }
57
- const request = JSON.parse(lastMessage);
58
- if (typeof request.id !== 'number') {
59
- throw new Error('Invalid request ID');
60
- }
61
- const response = createResponse(request.id, result);
62
- this.mockSocket.simulateMessage(JSON.stringify(response));
63
- }
64
- /**
65
- * Simulate CDP error response for next command
66
- */
67
- simulateNextError(errorMessage) {
68
- const messages = this.mockSocket.getSentMessages();
69
- const lastMessage = messages[messages.length - 1];
70
- if (!lastMessage) {
71
- throw new Error('No message sent to simulate response for');
72
- }
73
- const request = JSON.parse(lastMessage);
74
- if (typeof request.id !== 'number') {
75
- throw new Error('Invalid request ID');
76
- }
77
- const response = createErrorResponse(request.id, errorMessage);
78
- this.mockSocket.simulateMessage(JSON.stringify(response));
79
- }
80
- /**
81
- * Get the last CDP method that was called
82
- */
83
- getLastMethod() {
84
- const messages = this.mockSocket.getSentMessages();
85
- const lastMessage = messages[messages.length - 1];
86
- if (!lastMessage)
87
- return null;
88
- const request = JSON.parse(lastMessage);
89
- return request.method ?? null;
90
- }
91
- /**
92
- * Get the last CDP parameters that were sent
93
- */
94
- getLastParams() {
95
- const messages = this.mockSocket.getSentMessages();
96
- const lastMessage = messages[messages.length - 1];
97
- if (!lastMessage)
98
- return undefined;
99
- const request = JSON.parse(lastMessage);
100
- return request.params;
101
- }
102
- }
103
- /**
104
- * Mock IPC infrastructure for testing callCDP() in isolation
105
- */
106
- class MockIPCForCDP {
107
- mockCDP;
108
- commandHandler = null;
109
- constructor(mockCDP) {
110
- this.mockCDP = mockCDP;
111
- }
112
- /**
113
- * Simulate the worker's CDP command handler
114
- */
115
- setupWorkerHandler() {
116
- this.commandHandler = async (method, params) => {
117
- // Simulate worker forwarding to CDP
118
- const resultPromise = this.mockCDP.send(method, params ?? {});
119
- // Let the mock CDP respond
120
- // (In real tests, we'll call simulateNextResponse)
121
- return resultPromise;
122
- };
123
- }
124
- /**
125
- * Execute CDP command (simulates full IPC flow)
126
- */
127
- async executeCDP(method, params) {
128
- if (!this.commandHandler) {
129
- throw new Error('Worker handler not set up');
130
- }
131
- try {
132
- const result = await this.commandHandler(method, params);
133
- return {
134
- type: 'cdp_call_response',
135
- sessionId: 'test-session',
136
- status: 'ok',
137
- data: { result },
138
- };
139
- }
140
- catch (error) {
141
- return {
142
- type: 'cdp_call_response',
143
- sessionId: 'test-session',
144
- status: 'error',
145
- error: error instanceof Error ? error.message : String(error),
146
- };
147
- }
148
- }
149
- }
150
- describe('CDP Command Contract Tests', () => {
151
- let mockCDP;
152
- let mockIPC;
153
- beforeEach(async () => {
154
- // Set up mock CDP connection
155
- mockCDP = new MockCDPConnection();
156
- await mockCDP.connectAndOpen();
157
- // Set up mock IPC
158
- mockIPC = new MockIPCForCDP(mockCDP);
159
- mockIPC.setupWorkerHandler();
160
- });
161
- afterEach(() => {
162
- if (mockCDP.isConnected()) {
163
- mockCDP.close();
164
- }
165
- });
166
- describe('Basic CDP command execution', () => {
167
- it('executes CDP method without parameters', async () => {
168
- // Test CONTRACT: CDP method call → result returned
169
- // Start the CDP call
170
- const responsePromise = mockIPC.executeCDP('Browser.getVersion');
171
- // Simulate browser response
172
- mockCDP.simulateNextResponse({
173
- protocolVersion: '1.3',
174
- product: 'Chrome/130.0.0.0',
175
- revision: '@12345',
176
- userAgent: 'Mozilla/5.0...',
177
- jsVersion: '13.0.245.12',
178
- });
179
- const response = await responsePromise;
180
- // Verify response structure (contract)
181
- assert.equal(response.type, 'cdp_call_response');
182
- assert.equal(response.status, 'ok');
183
- assert.ok(response.data);
184
- assert.ok(response.data.result);
185
- // Verify result has expected shape
186
- const result = response.data.result;
187
- assert.equal(typeof result['protocolVersion'], 'string');
188
- assert.equal(typeof result['product'], 'string');
189
- });
190
- it('executes CDP method with parameters', async () => {
191
- // Test CONTRACT: Method + params → result with params applied
192
- const responsePromise = mockIPC.executeCDP('Runtime.evaluate', {
193
- expression: '2 + 2',
194
- returnByValue: true,
195
- });
196
- // Verify parameters were sent correctly
197
- const sentParams = mockCDP.getLastParams();
198
- assert.deepEqual(sentParams, {
199
- expression: '2 + 2',
200
- returnByValue: true,
201
- });
202
- // Simulate browser response
203
- mockCDP.simulateNextResponse({
204
- result: {
205
- type: 'number',
206
- value: 4,
207
- },
208
- });
209
- const response = await responsePromise;
210
- assert.equal(response.status, 'ok');
211
- assert.ok(response.data);
212
- const result = response.data.result;
213
- assert.equal(result.result.value, 4);
214
- });
215
- it('executes Network.getCookies', async () => {
216
- // Test CONTRACT: Network.getCookies → cookies array
217
- const responsePromise = mockIPC.executeCDP('Network.getCookies');
218
- mockCDP.simulateNextResponse({
219
- cookies: [
220
- { name: 'session', value: 'abc123', domain: 'example.com' },
221
- { name: 'token', value: 'xyz789', domain: 'example.com' },
222
- ],
223
- });
224
- const response = await responsePromise;
225
- assert.equal(response.status, 'ok');
226
- const result = response.data?.result;
227
- assert.equal(result.cookies.length, 2);
228
- assert.equal(result.cookies[0]?.name, 'session');
229
- });
230
- it('executes DOM.getDocument', async () => {
231
- // Test CONTRACT: DOM method execution
232
- const responsePromise = mockIPC.executeCDP('DOM.getDocument');
233
- mockCDP.simulateNextResponse({
234
- root: {
235
- nodeId: 1,
236
- nodeType: 9,
237
- nodeName: '#document',
238
- childNodeCount: 1,
239
- },
240
- });
241
- const response = await responsePromise;
242
- assert.equal(response.status, 'ok');
243
- const result = response.data?.result;
244
- assert.equal(result.root.nodeId, 1);
245
- });
246
- });
247
- describe('Error handling', () => {
248
- it('propagates CDP method errors', async () => {
249
- // Test CONTRACT: Invalid CDP method → error response
250
- const responsePromise = mockIPC.executeCDP('Invalid.method');
251
- mockCDP.simulateNextError("'Invalid.method' wasn't found");
252
- const response = await responsePromise;
253
- // Error should propagate through IPC
254
- assert.equal(response.status, 'error');
255
- assert.ok(response.error);
256
- assert.match(response.error, /wasn't found/);
257
- });
258
- it('handles CDP execution errors', async () => {
259
- // Test CONTRACT: CDP method error → error in response
260
- const responsePromise = mockIPC.executeCDP('Runtime.evaluate', {
261
- expression: 'throw new Error("test error")',
262
- });
263
- mockCDP.simulateNextResponse({
264
- exceptionDetails: {
265
- text: 'Uncaught',
266
- exception: {
267
- type: 'object',
268
- subtype: 'error',
269
- description: 'Error: test error',
270
- },
271
- },
272
- });
273
- const response = await responsePromise;
274
- // Should still succeed (CDP responded), but result contains error
275
- assert.equal(response.status, 'ok');
276
- const result = response.data?.result;
277
- assert.ok(result.exceptionDetails);
278
- });
279
- it('handles missing required parameters', async () => {
280
- // Test CONTRACT: CDP enforces required params
281
- const responsePromise = mockIPC.executeCDP('Page.navigate');
282
- // Missing required 'url' parameter
283
- mockCDP.simulateNextError('Missing required parameter: url');
284
- const response = await responsePromise;
285
- assert.equal(response.status, 'error');
286
- assert.ok(response.error);
287
- });
288
- });
289
- describe('Parameter handling', () => {
290
- it('handles empty parameters object', async () => {
291
- // Test CONTRACT: Empty params → method called with no params
292
- const responsePromise = mockIPC.executeCDP('Target.getTargets', {});
293
- const sentParams = mockCDP.getLastParams();
294
- assert.deepEqual(sentParams, {});
295
- mockCDP.simulateNextResponse({ targetInfos: [] });
296
- const response = await responsePromise;
297
- assert.equal(response.status, 'ok');
298
- });
299
- it('handles complex nested parameters', async () => {
300
- // Test CONTRACT: Complex params → preserved through IPC
301
- const complexParams = {
302
- expression: 'document.body',
303
- objectGroup: 'console',
304
- includeCommandLineAPI: true,
305
- returnByValue: false,
306
- generatePreview: true,
307
- };
308
- const responsePromise = mockIPC.executeCDP('Runtime.evaluate', complexParams);
309
- const sentParams = mockCDP.getLastParams();
310
- assert.deepEqual(sentParams, complexParams);
311
- mockCDP.simulateNextResponse({ result: { type: 'object' } });
312
- const response = await responsePromise;
313
- assert.equal(response.status, 'ok');
314
- });
315
- it('handles undefined parameters (no params)', async () => {
316
- // Test CONTRACT: undefined params → sent as empty object
317
- const responsePromise = mockIPC.executeCDP('Browser.getVersion', undefined);
318
- mockCDP.simulateNextResponse({ product: 'Chrome' });
319
- const response = await responsePromise;
320
- assert.equal(response.status, 'ok');
321
- });
322
- });
323
- describe('Response validation', () => {
324
- it('returns valid response structure', async () => {
325
- // Test INVARIANT: Response always has correct shape
326
- const responsePromise = mockIPC.executeCDP('Target.getTargets');
327
- mockCDP.simulateNextResponse({ targetInfos: [] });
328
- const response = await responsePromise;
329
- // Validate response structure
330
- assert.equal(typeof response.type, 'string');
331
- assert.equal(response.type, 'cdp_call_response');
332
- assert.equal(typeof response.sessionId, 'string');
333
- assert.equal(response.status, 'ok');
334
- assert.ok('data' in response);
335
- // Should pass IPC validation
336
- assert.doesNotThrow(() => {
337
- validateIPCResponse(response);
338
- });
339
- });
340
- it('error response has correct structure', async () => {
341
- // Test INVARIANT: Error responses are well-formed
342
- const responsePromise = mockIPC.executeCDP('Invalid.method');
343
- mockCDP.simulateNextError('Method not found');
344
- const response = await responsePromise;
345
- assert.equal(response.status, 'error');
346
- assert.equal(typeof response.error, 'string');
347
- assert.ok(response.error && response.error.length > 0);
348
- // Should have data undefined when error
349
- assert.equal(response.data, undefined);
350
- });
351
- });
352
- describe('Multiple concurrent CDP calls', () => {
353
- it('handles multiple concurrent calls independently', async () => {
354
- // Test INVARIANT: Concurrent calls don't interfere
355
- // Execute calls sequentially (not concurrently) to avoid timeout issues with mock
356
- const response1Promise = mockIPC.executeCDP('Browser.getVersion');
357
- mockCDP.simulateNextResponse({ product: 'Chrome' });
358
- const response1 = await response1Promise;
359
- const response2Promise = mockIPC.executeCDP('Target.getTargets');
360
- mockCDP.simulateNextResponse({ targetInfos: [] });
361
- const response2 = await response2Promise;
362
- const response3Promise = mockIPC.executeCDP('Network.getCookies');
363
- mockCDP.simulateNextResponse({ cookies: [] });
364
- const response3 = await response3Promise;
365
- assert.equal(response1.status, 'ok');
366
- assert.equal(response2.status, 'ok');
367
- assert.equal(response3.status, 'ok');
368
- });
369
- it('handles mixed success/error in concurrent calls', async () => {
370
- // Test INVARIANT: One error doesn't affect other calls
371
- const response1Promise = mockIPC.executeCDP('Browser.getVersion');
372
- mockCDP.simulateNextResponse({ product: 'Chrome' });
373
- const response1 = await response1Promise;
374
- const response2Promise = mockIPC.executeCDP('Invalid.method');
375
- mockCDP.simulateNextError('Method not found');
376
- const response2 = await response2Promise;
377
- assert.equal(response1.status, 'ok');
378
- assert.equal(response2.status, 'error');
379
- });
380
- });
381
- describe('Method name format', () => {
382
- it('accepts standard CDP method format (Domain.method)', async () => {
383
- // Test CONTRACT: Standard format works
384
- const methods = [
385
- 'Browser.getVersion',
386
- 'Target.getTargets',
387
- 'Network.getCookies',
388
- 'DOM.getDocument',
389
- 'Runtime.evaluate',
390
- 'Page.navigate',
391
- ];
392
- for (const method of methods) {
393
- const responsePromise = mockIPC.executeCDP(method);
394
- mockCDP.simulateNextResponse({});
395
- const response = await responsePromise;
396
- assert.equal(response.status, 'ok');
397
- assert.equal(mockCDP.getLastMethod(), method);
398
- }
399
- });
400
- });
401
- describe('Result types', () => {
402
- it('handles primitive result types', async () => {
403
- // Test CONTRACT: Primitives are preserved
404
- const tests = [
405
- { method: 'Runtime.evaluate', result: { result: { type: 'string', value: 'hello' } } },
406
- { method: 'Runtime.evaluate', result: { result: { type: 'number', value: 42 } } },
407
- { method: 'Runtime.evaluate', result: { result: { type: 'boolean', value: true } } },
408
- { method: 'Runtime.evaluate', result: { result: { type: 'undefined' } } },
409
- ];
410
- for (const test of tests) {
411
- const responsePromise = mockIPC.executeCDP(test.method, { expression: 'test' });
412
- mockCDP.simulateNextResponse(test.result);
413
- const response = await responsePromise;
414
- assert.equal(response.status, 'ok');
415
- assert.deepEqual(response.data?.result, test.result);
416
- }
417
- });
418
- it('handles complex object results', async () => {
419
- // Test CONTRACT: Complex objects are preserved
420
- const complexResult = {
421
- cookies: [
422
- {
423
- name: 'session',
424
- value: 'abc123',
425
- domain: 'example.com',
426
- path: '/',
427
- expires: -1,
428
- size: 16,
429
- httpOnly: true,
430
- secure: true,
431
- session: true,
432
- sameSite: 'Lax',
433
- },
434
- ],
435
- };
436
- const responsePromise = mockIPC.executeCDP('Network.getCookies');
437
- mockCDP.simulateNextResponse(complexResult);
438
- const response = await responsePromise;
439
- assert.equal(response.status, 'ok');
440
- assert.deepEqual(response.data?.result, complexResult);
441
- });
442
- it('handles array results', async () => {
443
- // Test CONTRACT: Arrays are preserved
444
- const arrayResult = {
445
- targetInfos: [
446
- { targetId: 't1', type: 'page', title: 'Page 1', url: 'http://a.com' },
447
- { targetId: 't2', type: 'page', title: 'Page 2', url: 'http://b.com' },
448
- ],
449
- };
450
- const responsePromise = mockIPC.executeCDP('Target.getTargets');
451
- mockCDP.simulateNextResponse(arrayResult);
452
- const response = await responsePromise;
453
- assert.equal(response.status, 'ok');
454
- const result = response.data?.result;
455
- assert.equal(result.targetInfos.length, 2);
456
- });
457
- it('handles empty results', async () => {
458
- // Test CONTRACT: Empty results are valid
459
- const responsePromise = mockIPC.executeCDP('Page.enable');
460
- mockCDP.simulateNextResponse({}); // Many CDP methods return empty object
461
- const response = await responsePromise;
462
- assert.equal(response.status, 'ok');
463
- assert.deepEqual(response.data?.result, {});
464
- });
465
- });
466
- });
467
- //# sourceMappingURL=cdp.contract.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cdp.contract.test.js","sourceRoot":"","sources":["../../../../src/cli/commands/__tests__/cdp.contract.test.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- import type { Command } from 'commander';
2
- /**
3
- * Register CDP command.
4
- *
5
- * @param program - Commander.js Command instance to register commands on
6
- */
7
- export declare function registerCdpCommand(program: Command): void;
8
- //# sourceMappingURL=cdp.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cdp.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/cdp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAiBzC;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAqCzD"}
@@ -1,45 +0,0 @@
1
- import { runCommand } from '../../cli/handlers/CommandRunner.js';
2
- import { callCDP } from '../../ipc/client.js';
3
- import { validateIPCResponse } from '../../ipc/responseValidator.js';
4
- import { getErrorMessage } from '../../utils/errors.js';
5
- import { EXIT_CODES } from '../../utils/exitCodes.js';
6
- /**
7
- * Register CDP command.
8
- *
9
- * @param program - Commander.js Command instance to register commands on
10
- */
11
- export function registerCdpCommand(program) {
12
- program
13
- .command('cdp')
14
- .description('Execute CDP method directly (low-level API access)')
15
- .argument('<method>', 'CDP method name (e.g., Network.getCookies, Runtime.evaluate)')
16
- .option('--params <json>', 'CDP method parameters as JSON')
17
- .action(async (method, options) => {
18
- await runCommand(async (opts) => {
19
- // Parse parameters if provided
20
- let params;
21
- if (opts.params) {
22
- try {
23
- params = JSON.parse(opts.params);
24
- }
25
- catch (error) {
26
- return {
27
- success: false,
28
- error: `Error parsing --params: ${getErrorMessage(error)}. Parameters must be valid JSON.`,
29
- exitCode: EXIT_CODES.INVALID_ARGUMENTS,
30
- };
31
- }
32
- }
33
- // Send CDP call request to daemon
34
- const response = await callCDP(method, params);
35
- // Validate IPC response (throws on error)
36
- validateIPCResponse(response);
37
- return {
38
- success: true,
39
- data: response.data?.result,
40
- };
41
- }, { ...options, json: true } // Always output JSON for CDP commands
42
- );
43
- });
44
- }
45
- //# sourceMappingURL=cdp.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cdp.js","sourceRoot":"","sources":["../../../src/cli/commands/cdp.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAUlD;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAgB;IACjD,OAAO;SACJ,OAAO,CAAC,KAAK,CAAC;SACd,WAAW,CAAC,oDAAoD,CAAC;SACjE,QAAQ,CAAC,UAAU,EAAE,8DAA8D,CAAC;SACpF,MAAM,CAAC,iBAAiB,EAAE,+BAA+B,CAAC;SAC1D,MAAM,CAAC,KAAK,EAAE,MAAc,EAAE,OAAmB,EAAE,EAAE;QACpD,MAAM,UAAU,CACd,KAAK,EAAE,IAAI,EAAE,EAAE;YACb,+BAA+B;YAC/B,IAAI,MAA2C,CAAC;YAChD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAChB,IAAI,CAAC;oBACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAA4B,CAAC;gBAC9D,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO;wBACL,OAAO,EAAE,KAAK;wBACd,KAAK,EAAE,2BAA2B,eAAe,CAAC,KAAK,CAAC,kCAAkC;wBAC1F,QAAQ,EAAE,UAAU,CAAC,iBAAiB;qBACvC,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,kCAAkC;YAClC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAE/C,0CAA0C;YAC1C,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YAE9B,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM;aAC5B,CAAC;QACJ,CAAC,EACD,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,sCAAsC;SAClE,CAAC;IACJ,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -1,8 +0,0 @@
1
- import type { Command } from 'commander';
2
- /**
3
- * Register console command.
4
- *
5
- * @param program - Commander.js Command instance to register commands on
6
- */
7
- export declare function registerConsoleCommand(program: Command): void;
8
- //# sourceMappingURL=console.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"console.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/console.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAyEzC;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA+C7D"}