browser-debugger-cli 0.0.1-alpha.0 → 0.1.0-alpha.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.
- package/LICENSE +21 -0
- package/README.md +167 -52
- package/dist/__testfixtures__/cdpMessages.d.ts +43 -0
- package/dist/__testfixtures__/cdpMessages.d.ts.map +1 -0
- package/dist/__testfixtures__/cdpMessages.js +118 -0
- package/dist/__testfixtures__/cdpMessages.js.map +1 -0
- package/dist/__testfixtures__/connectionTargets.d.ts +21 -0
- package/dist/__testfixtures__/connectionTargets.d.ts.map +1 -0
- package/dist/__testfixtures__/connectionTargets.js +59 -0
- package/dist/__testfixtures__/connectionTargets.js.map +1 -0
- package/dist/__tests__/integration/session-files.integration.test.d.ts +2 -0
- package/dist/__tests__/integration/session-files.integration.test.d.ts.map +1 -0
- package/dist/__tests__/integration/session-files.integration.test.js +66 -0
- package/dist/__tests__/integration/session-files.integration.test.js.map +1 -0
- package/dist/__testutils__/FakeClock.d.ts +67 -0
- package/dist/__testutils__/FakeClock.d.ts.map +1 -0
- package/dist/__testutils__/FakeClock.js +132 -0
- package/dist/__testutils__/FakeClock.js.map +1 -0
- package/dist/__testutils__/FakeWebSocket.d.ts +106 -0
- package/dist/__testutils__/FakeWebSocket.d.ts.map +1 -0
- package/dist/__testutils__/FakeWebSocket.js +213 -0
- package/dist/__testutils__/FakeWebSocket.js.map +1 -0
- package/dist/__testutils__/assertions.d.ts +33 -0
- package/dist/__testutils__/assertions.d.ts.map +1 -0
- package/dist/__testutils__/assertions.js +57 -0
- package/dist/__testutils__/assertions.js.map +1 -0
- package/dist/__testutils__/index.d.ts +15 -0
- package/dist/__testutils__/index.d.ts.map +1 -0
- package/dist/__testutils__/index.js +15 -0
- package/dist/__testutils__/index.js.map +1 -0
- package/dist/__testutils__/testClock.d.ts +28 -0
- package/dist/__testutils__/testClock.d.ts.map +1 -0
- package/dist/__testutils__/testClock.js +81 -0
- package/dist/__testutils__/testClock.js.map +1 -0
- package/dist/__testutils__/testFixtures.d.ts +15 -0
- package/dist/__testutils__/testFixtures.d.ts.map +1 -0
- package/dist/__testutils__/testFixtures.js +23 -0
- package/dist/__testutils__/testFixtures.js.map +1 -0
- package/dist/__testutils__/testProcess.d.ts +46 -0
- package/dist/__testutils__/testProcess.d.ts.map +1 -0
- package/dist/__testutils__/testProcess.js +77 -0
- package/dist/__testutils__/testProcess.js.map +1 -0
- package/dist/cli/collectors/dom.d.ts +8 -0
- package/dist/cli/collectors/dom.d.ts.map +1 -0
- package/dist/cli/collectors/dom.js +361 -0
- package/dist/cli/collectors/dom.js.map +1 -0
- package/dist/cli/collectors/helpers/domCache.d.ts +40 -0
- package/dist/cli/collectors/helpers/domCache.d.ts.map +1 -0
- package/dist/cli/collectors/helpers/domCache.js +79 -0
- package/dist/cli/collectors/helpers/domCache.js.map +1 -0
- package/dist/cli/collectors/helpers/domQuery.d.ts +45 -0
- package/dist/cli/collectors/helpers/domQuery.d.ts.map +1 -0
- package/dist/cli/collectors/helpers/domQuery.js +100 -0
- package/dist/cli/collectors/helpers/domQuery.js.map +1 -0
- package/dist/cli/collectors/helpers/selectorParser.d.ts +20 -0
- package/dist/cli/collectors/helpers/selectorParser.d.ts.map +1 -0
- package/dist/cli/collectors/helpers/selectorParser.js +20 -0
- package/dist/cli/collectors/helpers/selectorParser.js.map +1 -0
- package/dist/cli/commands/__tests__/cdp.contract.test.d.ts +24 -0
- package/dist/cli/commands/__tests__/cdp.contract.test.d.ts.map +1 -0
- package/dist/cli/commands/__tests__/cdp.contract.test.js +467 -0
- package/dist/cli/commands/__tests__/cdp.contract.test.js.map +1 -0
- package/dist/cli/commands/__tests__/ipcTest.test.d.ts +2 -0
- package/dist/cli/commands/__tests__/ipcTest.test.d.ts.map +1 -0
- package/dist/cli/commands/__tests__/ipcTest.test.js +37 -0
- package/dist/cli/commands/__tests__/ipcTest.test.js.map +1 -0
- package/dist/cli/commands/cdp.d.ts +8 -0
- package/dist/cli/commands/cdp.d.ts.map +1 -0
- package/dist/cli/commands/cdp.js +45 -0
- package/dist/cli/commands/cdp.js.map +1 -0
- package/dist/cli/commands/cleanup.d.ts +8 -0
- package/dist/cli/commands/cleanup.d.ts.map +1 -0
- package/dist/cli/commands/cleanup.js +130 -0
- package/dist/cli/commands/cleanup.js.map +1 -0
- package/dist/cli/commands/console.d.ts +8 -0
- package/dist/cli/commands/console.d.ts.map +1 -0
- package/dist/cli/commands/console.js +97 -0
- package/dist/cli/commands/console.js.map +1 -0
- package/dist/cli/commands/details.d.ts +8 -0
- package/dist/cli/commands/details.d.ts.map +1 -0
- package/dist/cli/commands/details.js +68 -0
- package/dist/cli/commands/details.js.map +1 -0
- package/dist/cli/commands/dom/helpers/domCache.d.ts +36 -0
- package/dist/cli/commands/dom/helpers/domCache.d.ts.map +1 -0
- package/dist/cli/commands/dom/helpers/domCache.js +65 -0
- package/dist/cli/commands/dom/helpers/domCache.js.map +1 -0
- package/dist/cli/commands/dom/helpers/domQuery.d.ts +48 -0
- package/dist/cli/commands/dom/helpers/domQuery.d.ts.map +1 -0
- package/dist/cli/commands/dom/helpers/domQuery.js +104 -0
- package/dist/cli/commands/dom/helpers/domQuery.js.map +1 -0
- package/dist/cli/commands/dom/helpers/errorHandler.d.ts +45 -0
- package/dist/cli/commands/dom/helpers/errorHandler.d.ts.map +1 -0
- package/dist/cli/commands/dom/helpers/errorHandler.js +70 -0
- package/dist/cli/commands/dom/helpers/errorHandler.js.map +1 -0
- package/dist/cli/commands/dom/helpers/evalHelpers.d.ts +52 -0
- package/dist/cli/commands/dom/helpers/evalHelpers.d.ts.map +1 -0
- package/dist/cli/commands/dom/helpers/evalHelpers.js +75 -0
- package/dist/cli/commands/dom/helpers/evalHelpers.js.map +1 -0
- package/dist/cli/commands/dom/helpers/optionsBuilder.d.ts +35 -0
- package/dist/cli/commands/dom/helpers/optionsBuilder.d.ts.map +1 -0
- package/dist/cli/commands/dom/helpers/optionsBuilder.js +51 -0
- package/dist/cli/commands/dom/helpers/optionsBuilder.js.map +1 -0
- package/dist/cli/commands/dom/helpers/selectorParser.d.ts +20 -0
- package/dist/cli/commands/dom/helpers/selectorParser.d.ts.map +1 -0
- package/dist/cli/commands/dom/helpers/selectorParser.js +20 -0
- package/dist/cli/commands/dom/helpers/selectorParser.js.map +1 -0
- package/dist/cli/commands/dom/index.d.ts +8 -0
- package/dist/cli/commands/dom/index.d.ts.map +1 -0
- package/dist/cli/commands/dom/index.js +257 -0
- package/dist/cli/commands/dom/index.js.map +1 -0
- package/dist/cli/commands/ipcTest.d.ts +23 -0
- package/dist/cli/commands/ipcTest.d.ts.map +1 -0
- package/dist/cli/commands/ipcTest.js +181 -0
- package/dist/cli/commands/ipcTest.js.map +1 -0
- package/dist/cli/commands/network.d.ts +8 -0
- package/dist/cli/commands/network.d.ts.map +1 -0
- package/dist/cli/commands/network.js +40 -0
- package/dist/cli/commands/network.js.map +1 -0
- package/dist/cli/commands/peek.d.ts +8 -0
- package/dist/cli/commands/peek.d.ts.map +1 -0
- package/dist/cli/commands/peek.js +109 -0
- package/dist/cli/commands/peek.js.map +1 -0
- package/dist/cli/commands/query.d.ts +9 -0
- package/dist/cli/commands/query.d.ts.map +1 -0
- package/dist/cli/commands/query.js +127 -0
- package/dist/cli/commands/query.js.map +1 -0
- package/dist/cli/commands/start.d.ts +9 -0
- package/dist/cli/commands/start.d.ts.map +1 -0
- package/dist/cli/commands/start.js +78 -0
- package/dist/cli/commands/start.js.map +1 -0
- package/dist/cli/commands/status.d.ts +9 -0
- package/dist/cli/commands/status.d.ts.map +1 -0
- package/dist/cli/commands/status.js +84 -0
- package/dist/cli/commands/status.js.map +1 -0
- package/dist/cli/commands/stop.d.ts +8 -0
- package/dist/cli/commands/stop.d.ts.map +1 -0
- package/dist/cli/commands/stop.js +146 -0
- package/dist/cli/commands/stop.js.map +1 -0
- package/dist/cli/formatters/detailsFormatter.d.ts +10 -0
- package/dist/cli/formatters/detailsFormatter.d.ts.map +1 -0
- package/dist/cli/formatters/detailsFormatter.js +63 -0
- package/dist/cli/formatters/detailsFormatter.js.map +1 -0
- package/dist/cli/formatters/previewFormatter.d.ts +27 -0
- package/dist/cli/formatters/previewFormatter.d.ts.map +1 -0
- package/dist/cli/formatters/previewFormatter.js +160 -0
- package/dist/cli/formatters/previewFormatter.js.map +1 -0
- package/dist/cli/formatters/statusFormatter.d.ts +34 -0
- package/dist/cli/formatters/statusFormatter.d.ts.map +1 -0
- package/dist/cli/formatters/statusFormatter.js +108 -0
- package/dist/cli/formatters/statusFormatter.js.map +1 -0
- package/dist/cli/handlers/ChromeBootstrap.d.ts +24 -0
- package/dist/cli/handlers/ChromeBootstrap.d.ts.map +1 -0
- package/dist/cli/handlers/ChromeBootstrap.js +50 -0
- package/dist/cli/handlers/ChromeBootstrap.js.map +1 -0
- package/dist/cli/handlers/CommandRunner.d.ts +60 -0
- package/dist/cli/handlers/CommandRunner.d.ts.map +1 -0
- package/dist/cli/handlers/CommandRunner.js +81 -0
- package/dist/cli/handlers/CommandRunner.js.map +1 -0
- package/dist/cli/handlers/OutputBuilder.d.ts +60 -0
- package/dist/cli/handlers/OutputBuilder.d.ts.map +1 -0
- package/dist/cli/handlers/OutputBuilder.js +138 -0
- package/dist/cli/handlers/OutputBuilder.js.map +1 -0
- package/dist/cli/handlers/OutputWriter.d.ts +15 -0
- package/dist/cli/handlers/OutputWriter.d.ts.map +1 -0
- package/dist/cli/handlers/OutputWriter.js +34 -0
- package/dist/cli/handlers/OutputWriter.js.map +1 -0
- package/dist/cli/handlers/PreviewWriter.d.ts +52 -0
- package/dist/cli/handlers/PreviewWriter.d.ts.map +1 -0
- package/dist/cli/handlers/PreviewWriter.js +119 -0
- package/dist/cli/handlers/PreviewWriter.js.map +1 -0
- package/dist/cli/handlers/SessionLock.d.ts +16 -0
- package/dist/cli/handlers/SessionLock.d.ts.map +1 -0
- package/dist/cli/handlers/SessionLock.js +38 -0
- package/dist/cli/handlers/SessionLock.js.map +1 -0
- package/dist/cli/handlers/SessionLoop.d.ts +19 -0
- package/dist/cli/handlers/SessionLoop.d.ts.map +1 -0
- package/dist/cli/handlers/SessionLoop.js +47 -0
- package/dist/cli/handlers/SessionLoop.js.map +1 -0
- package/dist/cli/handlers/ShutdownController.d.ts +38 -0
- package/dist/cli/handlers/ShutdownController.d.ts.map +1 -0
- package/dist/cli/handlers/ShutdownController.js +83 -0
- package/dist/cli/handlers/ShutdownController.js.map +1 -0
- package/dist/cli/handlers/SignalHandler.d.ts +35 -0
- package/dist/cli/handlers/SignalHandler.d.ts.map +1 -0
- package/dist/cli/handlers/SignalHandler.js +81 -0
- package/dist/cli/handlers/SignalHandler.js.map +1 -0
- package/dist/cli/handlers/TargetSetup.d.ts +42 -0
- package/dist/cli/handlers/TargetSetup.d.ts.map +1 -0
- package/dist/cli/handlers/TargetSetup.js +87 -0
- package/dist/cli/handlers/TargetSetup.js.map +1 -0
- package/dist/cli/handlers/commonOptions.d.ts +54 -0
- package/dist/cli/handlers/commonOptions.d.ts.map +1 -0
- package/dist/cli/handlers/commonOptions.js +64 -0
- package/dist/cli/handlers/commonOptions.js.map +1 -0
- package/dist/cli/handlers/daemonSessionController.d.ts +23 -0
- package/dist/cli/handlers/daemonSessionController.d.ts.map +1 -0
- package/dist/cli/handlers/daemonSessionController.js +108 -0
- package/dist/cli/handlers/daemonSessionController.js.map +1 -0
- package/dist/cli/handlers/sessionController.d.ts +21 -0
- package/dist/cli/handlers/sessionController.d.ts.map +1 -0
- package/dist/cli/handlers/sessionController.js +55 -0
- package/dist/cli/handlers/sessionController.js.map +1 -0
- package/dist/cli/registry.d.ts +11 -0
- package/dist/cli/registry.d.ts.map +1 -0
- package/dist/cli/registry.js +46 -0
- package/dist/cli/registry.js.map +1 -0
- package/dist/collectors/__tests__/network.contract.test.d.ts +28 -0
- package/dist/collectors/__tests__/network.contract.test.d.ts.map +1 -0
- package/dist/collectors/__tests__/network.contract.test.js +525 -0
- package/dist/collectors/__tests__/network.contract.test.js.map +1 -0
- package/dist/collectors/console.d.ts +5 -3
- package/dist/collectors/console.d.ts.map +1 -1
- package/dist/collectors/console.js +48 -26
- package/dist/collectors/console.js.map +1 -1
- package/dist/collectors/dom.d.ts +2 -2
- package/dist/collectors/dom.d.ts.map +1 -1
- package/dist/collectors/dom.js +23 -12
- package/dist/collectors/dom.js.map +1 -1
- package/dist/collectors/network.d.ts +18 -4
- package/dist/collectors/network.d.ts.map +1 -1
- package/dist/collectors/network.js +111 -34
- package/dist/collectors/network.js.map +1 -1
- package/dist/connection/__tests__/cdp.contract.test.d.ts +16 -0
- package/dist/connection/__tests__/cdp.contract.test.d.ts.map +1 -0
- package/dist/connection/__tests__/cdp.contract.test.js +378 -0
- package/dist/connection/__tests__/cdp.contract.test.js.map +1 -0
- package/dist/connection/__tests__/finder.contract.test.d.ts +2 -0
- package/dist/connection/__tests__/finder.contract.test.d.ts.map +1 -0
- package/dist/connection/__tests__/finder.contract.test.js +239 -0
- package/dist/connection/__tests__/finder.contract.test.js.map +1 -0
- package/dist/connection/__tests__/tabs.contract.test.d.ts +2 -0
- package/dist/connection/__tests__/tabs.contract.test.d.ts.map +1 -0
- package/dist/connection/__tests__/tabs.contract.test.js +137 -0
- package/dist/connection/__tests__/tabs.contract.test.js.map +1 -0
- package/dist/connection/cdp.d.ts +165 -16
- package/dist/connection/cdp.d.ts.map +1 -1
- package/dist/connection/cdp.js +342 -122
- package/dist/connection/cdp.js.map +1 -1
- package/dist/connection/finder.d.ts +5 -4
- package/dist/connection/finder.d.ts.map +1 -1
- package/dist/connection/finder.js +10 -16
- package/dist/connection/finder.js.map +1 -1
- package/dist/connection/launcher.d.ts +18 -11
- package/dist/connection/launcher.d.ts.map +1 -1
- package/dist/connection/launcher.js +148 -82
- package/dist/connection/launcher.js.map +1 -1
- package/dist/connection/tabs.d.ts +47 -14
- package/dist/connection/tabs.d.ts.map +1 -1
- package/dist/connection/tabs.js +493 -132
- package/dist/connection/tabs.js.map +1 -1
- package/dist/constants.d.ts +209 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +232 -0
- package/dist/constants.js.map +1 -0
- package/dist/daemon/__tests__/ipcServer.contract.test.d.ts +23 -0
- package/dist/daemon/__tests__/ipcServer.contract.test.d.ts.map +1 -0
- package/dist/daemon/__tests__/ipcServer.contract.test.js +401 -0
- package/dist/daemon/__tests__/ipcServer.contract.test.js.map +1 -0
- package/dist/daemon/__tests__/launcher.unit.test.d.ts +8 -0
- package/dist/daemon/__tests__/launcher.unit.test.d.ts.map +1 -0
- package/dist/daemon/__tests__/launcher.unit.test.js +20 -0
- package/dist/daemon/__tests__/launcher.unit.test.js.map +1 -0
- package/dist/daemon/ipcServer.d.ts +83 -0
- package/dist/daemon/ipcServer.d.ts.map +1 -0
- package/dist/daemon/ipcServer.js +670 -0
- package/dist/daemon/ipcServer.js.map +1 -0
- package/dist/daemon/launcher.d.ts +31 -0
- package/dist/daemon/launcher.d.ts.map +1 -0
- package/dist/daemon/launcher.js +137 -0
- package/dist/daemon/launcher.js.map +1 -0
- package/dist/daemon/startSession.d.ts +51 -0
- package/dist/daemon/startSession.d.ts.map +1 -0
- package/dist/daemon/startSession.js +149 -0
- package/dist/daemon/startSession.js.map +1 -0
- package/dist/daemon/worker.d.ts +18 -0
- package/dist/daemon/worker.d.ts.map +1 -0
- package/dist/daemon/worker.js +623 -0
- package/dist/daemon/worker.js.map +1 -0
- package/dist/daemon/workerIpc.d.ts +33 -0
- package/dist/daemon/workerIpc.d.ts.map +1 -0
- package/dist/daemon/workerIpc.js +8 -0
- package/dist/daemon/workerIpc.js.map +1 -0
- package/dist/daemon.d.ts +10 -0
- package/dist/daemon.d.ts.map +1 -0
- package/dist/daemon.js +32 -0
- package/dist/daemon.js.map +1 -0
- package/dist/index.js +41 -420
- package/dist/index.js.map +1 -1
- package/dist/ipc/__tests__/client.contract.test.d.ts +23 -0
- package/dist/ipc/__tests__/client.contract.test.d.ts.map +1 -0
- package/dist/ipc/__tests__/client.contract.test.js +466 -0
- package/dist/ipc/__tests__/client.contract.test.js.map +1 -0
- package/dist/ipc/client.d.ts +109 -0
- package/dist/ipc/client.d.ts.map +1 -0
- package/dist/ipc/client.js +220 -0
- package/dist/ipc/client.js.map +1 -0
- package/dist/ipc/commands.d.ts +208 -0
- package/dist/ipc/commands.d.ts.map +1 -0
- package/dist/ipc/commands.js +69 -0
- package/dist/ipc/commands.js.map +1 -0
- package/dist/ipc/responseValidator.d.ts +40 -0
- package/dist/ipc/responseValidator.d.ts.map +1 -0
- package/dist/ipc/responseValidator.js +28 -0
- package/dist/ipc/responseValidator.js.map +1 -0
- package/dist/ipc/types.d.ts +193 -0
- package/dist/ipc/types.d.ts.map +1 -0
- package/dist/ipc/types.js +21 -0
- package/dist/ipc/types.js.map +1 -0
- package/dist/session/BdgSession.d.ts +71 -4
- package/dist/session/BdgSession.d.ts.map +1 -1
- package/dist/session/BdgSession.js +173 -75
- package/dist/session/BdgSession.js.map +1 -1
- package/dist/session/chrome.d.ts +46 -0
- package/dist/session/chrome.d.ts.map +1 -0
- package/dist/session/chrome.js +92 -0
- package/dist/session/chrome.js.map +1 -0
- package/dist/session/cleanup.d.ts +45 -0
- package/dist/session/cleanup.d.ts.map +1 -0
- package/dist/session/cleanup.js +230 -0
- package/dist/session/cleanup.js.map +1 -0
- package/dist/session/index.d.ts +15 -0
- package/dist/session/index.d.ts.map +1 -0
- package/dist/session/index.js +23 -0
- package/dist/session/index.js.map +1 -0
- package/dist/session/lock.d.ts +57 -0
- package/dist/session/lock.d.ts.map +1 -0
- package/dist/session/lock.js +154 -0
- package/dist/session/lock.js.map +1 -0
- package/dist/session/metadata.d.ts +59 -0
- package/dist/session/metadata.d.ts.map +1 -0
- package/dist/session/metadata.js +71 -0
- package/dist/session/metadata.js.map +1 -0
- package/dist/session/output.d.ts +18 -0
- package/dist/session/output.d.ts.map +1 -0
- package/dist/session/output.js +24 -0
- package/dist/session/output.js.map +1 -0
- package/dist/session/paths.d.ts +73 -0
- package/dist/session/paths.d.ts.map +1 -0
- package/dist/session/paths.js +84 -0
- package/dist/session/paths.js.map +1 -0
- package/dist/session/pid.d.ts +40 -0
- package/dist/session/pid.d.ts.map +1 -0
- package/dist/session/pid.js +73 -0
- package/dist/session/pid.js.map +1 -0
- package/dist/session/process.d.ts +45 -0
- package/dist/session/process.d.ts.map +1 -0
- package/dist/session/process.js +88 -0
- package/dist/session/process.js.map +1 -0
- package/dist/types.d.ts +114 -38
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/__tests__/filters.unit.test.d.ts +2 -0
- package/dist/utils/__tests__/filters.unit.test.d.ts.map +1 -0
- package/dist/utils/__tests__/filters.unit.test.js +239 -0
- package/dist/utils/__tests__/filters.unit.test.js.map +1 -0
- package/dist/utils/__tests__/session.contract.test.d.ts +2 -0
- package/dist/utils/__tests__/session.contract.test.d.ts.map +1 -0
- package/dist/utils/__tests__/session.contract.test.js +234 -0
- package/dist/utils/__tests__/session.contract.test.js.map +1 -0
- package/dist/utils/atomicFile.d.ts +38 -0
- package/dist/utils/atomicFile.d.ts.map +1 -0
- package/dist/utils/atomicFile.js +71 -0
- package/dist/utils/atomicFile.js.map +1 -0
- package/dist/utils/cdpHandlers.d.ts +31 -0
- package/dist/utils/cdpHandlers.d.ts.map +1 -0
- package/dist/utils/cdpHandlers.js +38 -0
- package/dist/utils/cdpHandlers.js.map +1 -0
- package/dist/utils/chromeDiagnostics.d.ts +28 -0
- package/dist/utils/chromeDiagnostics.d.ts.map +1 -0
- package/dist/utils/chromeDiagnostics.js +88 -0
- package/dist/utils/chromeDiagnostics.js.map +1 -0
- package/dist/utils/errors.d.ts +82 -0
- package/dist/utils/errors.d.ts.map +1 -0
- package/dist/utils/errors.js +88 -0
- package/dist/utils/errors.js.map +1 -0
- package/dist/utils/exitCodes.d.ts +32 -0
- package/dist/utils/exitCodes.d.ts.map +1 -0
- package/dist/utils/exitCodes.js +36 -0
- package/dist/utils/exitCodes.js.map +1 -0
- package/dist/utils/filters.d.ts +108 -0
- package/dist/utils/filters.d.ts.map +1 -0
- package/dist/utils/filters.js +304 -0
- package/dist/utils/filters.js.map +1 -0
- package/dist/utils/formatters/network.d.ts +23 -0
- package/dist/utils/formatters/network.d.ts.map +1 -0
- package/dist/utils/formatters/network.js +35 -0
- package/dist/utils/formatters/network.js.map +1 -0
- package/dist/utils/http.d.ts +34 -0
- package/dist/utils/http.d.ts.map +1 -0
- package/dist/utils/http.js +48 -0
- package/dist/utils/http.js.map +1 -0
- package/dist/utils/logger.d.ts +42 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +43 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/objects.d.ts +23 -0
- package/dist/utils/objects.d.ts.map +1 -0
- package/dist/utils/objects.js +25 -0
- package/dist/utils/objects.js.map +1 -0
- package/dist/utils/url/safeParseUrl.d.ts +63 -0
- package/dist/utils/url/safeParseUrl.d.ts.map +1 -0
- package/dist/utils/url/safeParseUrl.js +84 -0
- package/dist/utils/url/safeParseUrl.js.map +1 -0
- package/dist/utils/url.d.ts +63 -1
- package/dist/utils/url.d.ts.map +1 -1
- package/dist/utils/url.js +152 -2
- package/dist/utils/url.js.map +1 -1
- package/dist/utils/validation.d.ts +1 -1
- package/dist/utils/validation.d.ts.map +1 -1
- package/dist/utils/version.d.ts +3 -0
- package/dist/utils/version.d.ts.map +1 -0
- package/dist/utils/version.js +27 -0
- package/dist/utils/version.js.map +1 -0
- package/package.json +57 -10
- package/dist/utils/pageLoad.d.ts +0 -21
- package/dist/utils/pageLoad.d.ts.map +0 -1
- package/dist/utils/pageLoad.js +0 -85
- package/dist/utils/pageLoad.js.map +0 -1
- package/dist/utils/session.d.ts +0 -104
- package/dist/utils/session.d.ts.map +0 -1
- package/dist/utils/session.js +0 -244
- package/dist/utils/session.js.map +0 -1
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { startSession as sendStartSessionRequest } from '../../ipc/client.js';
|
|
2
|
+
import { IPCErrorCode } from '../../ipc/types.js';
|
|
3
|
+
import { getErrorMessage } from '../../utils/errors.js';
|
|
4
|
+
import { EXIT_CODES } from '../../utils/exitCodes.js';
|
|
5
|
+
/**
|
|
6
|
+
* Start a session via the daemon using IPC.
|
|
7
|
+
*
|
|
8
|
+
* This replaces the in-process sessionController.startSession() by:
|
|
9
|
+
* 1. Sending a start_session_request to the daemon
|
|
10
|
+
* 2. Waiting for the worker to launch and report readiness
|
|
11
|
+
* 3. Outputting metadata about the running session
|
|
12
|
+
* 4. Keeping the process alive while the session runs
|
|
13
|
+
*
|
|
14
|
+
* @param url - Target URL to navigate to
|
|
15
|
+
* @param options - Session configuration options
|
|
16
|
+
* @param collectors - Array of collector types to enable
|
|
17
|
+
*/
|
|
18
|
+
export async function startSessionViaDaemon(url, options, collectors) {
|
|
19
|
+
try {
|
|
20
|
+
console.error('[bdg] Connecting to daemon...');
|
|
21
|
+
// Send start_session_request to daemon
|
|
22
|
+
const requestOptions = {};
|
|
23
|
+
if (options.port !== undefined)
|
|
24
|
+
requestOptions.port = options.port;
|
|
25
|
+
if (options.timeout !== undefined)
|
|
26
|
+
requestOptions.timeout = options.timeout;
|
|
27
|
+
if (collectors.length > 0)
|
|
28
|
+
requestOptions.collectors = collectors;
|
|
29
|
+
if (options.includeAll !== undefined)
|
|
30
|
+
requestOptions.includeAll = options.includeAll;
|
|
31
|
+
if (options.userDataDir !== undefined)
|
|
32
|
+
requestOptions.userDataDir = options.userDataDir;
|
|
33
|
+
if (options.maxBodySize !== undefined)
|
|
34
|
+
requestOptions.maxBodySize = options.maxBodySize;
|
|
35
|
+
const response = await sendStartSessionRequest(url, requestOptions);
|
|
36
|
+
// Check for errors
|
|
37
|
+
if (response.status === 'error') {
|
|
38
|
+
// Special handling for SESSION_ALREADY_RUNNING with helpful context
|
|
39
|
+
if (response.errorCode === IPCErrorCode.SESSION_ALREADY_RUNNING && response.existingSession) {
|
|
40
|
+
const { pid, targetUrl, duration } = response.existingSession;
|
|
41
|
+
const durationStr = duration
|
|
42
|
+
? duration < 60
|
|
43
|
+
? `${duration}s`
|
|
44
|
+
: `${Math.floor(duration / 60)}m ${duration % 60}s`
|
|
45
|
+
: 'unknown';
|
|
46
|
+
console.error(`\nError: Session already running`);
|
|
47
|
+
console.error(` PID: ${pid}`);
|
|
48
|
+
if (targetUrl) {
|
|
49
|
+
console.error(` Target: ${targetUrl}`);
|
|
50
|
+
}
|
|
51
|
+
console.error(` Duration: ${durationStr}`);
|
|
52
|
+
console.error(``);
|
|
53
|
+
console.error(`Suggestions:`);
|
|
54
|
+
console.error(` View session: bdg status`);
|
|
55
|
+
console.error(` Stop and restart: bdg stop && bdg ${url}`);
|
|
56
|
+
console.error(``);
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
console.error(`[bdg] Daemon error: ${response.message ?? 'Unknown error'}`);
|
|
60
|
+
}
|
|
61
|
+
process.exit(EXIT_CODES.UNHANDLED_EXCEPTION);
|
|
62
|
+
}
|
|
63
|
+
// Extract metadata from response
|
|
64
|
+
const { data } = response;
|
|
65
|
+
if (!data) {
|
|
66
|
+
console.error('[bdg] Invalid response from daemon: missing data');
|
|
67
|
+
process.exit(EXIT_CODES.UNHANDLED_EXCEPTION);
|
|
68
|
+
}
|
|
69
|
+
// Output session information
|
|
70
|
+
console.error(`[bdg] Session started via daemon`);
|
|
71
|
+
console.error(`[bdg] Worker PID: ${data.workerPid}`);
|
|
72
|
+
console.error(`[bdg] Chrome PID: ${data.chromePid}`);
|
|
73
|
+
console.error(`[bdg] Target: ${data.targetUrl}`);
|
|
74
|
+
if (data.targetTitle) {
|
|
75
|
+
console.error(`[bdg] Title: ${data.targetTitle}`);
|
|
76
|
+
}
|
|
77
|
+
const collectorNames = collectors.length === 3 ? 'network, console, and DOM' : collectors.join(', ');
|
|
78
|
+
if (options.timeout) {
|
|
79
|
+
console.error(`[bdg] Collecting ${collectorNames} for ${options.timeout}s... ` +
|
|
80
|
+
`(auto-stop on timeout, or use 'bdg stop' to stop early)`);
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
console.error(`[bdg] Collecting ${collectorNames}... ` + `(use 'bdg stop' when ready to stop and output)`);
|
|
84
|
+
}
|
|
85
|
+
console.error('');
|
|
86
|
+
console.error('Available commands:');
|
|
87
|
+
console.error(' bdg status Show session status');
|
|
88
|
+
console.error(' bdg peek Preview collected data');
|
|
89
|
+
console.error(' bdg query <script> Execute JavaScript in browser');
|
|
90
|
+
console.error(' bdg stop Stop session and output results');
|
|
91
|
+
console.error('');
|
|
92
|
+
// Session runs in background worker - CLI exits immediately
|
|
93
|
+
// This allows user to run other commands in the same terminal
|
|
94
|
+
process.exit(0);
|
|
95
|
+
}
|
|
96
|
+
catch (error) {
|
|
97
|
+
// Handle connection errors
|
|
98
|
+
const errorMessage = getErrorMessage(error);
|
|
99
|
+
if (errorMessage.includes('ENOENT') || errorMessage.includes('ECONNREFUSED')) {
|
|
100
|
+
console.error('[bdg] Daemon not running');
|
|
101
|
+
console.error('[bdg] Try running the command again or check daemon status with: bdg status');
|
|
102
|
+
process.exit(EXIT_CODES.UNHANDLED_EXCEPTION);
|
|
103
|
+
}
|
|
104
|
+
console.error(`[bdg] Error: ${errorMessage}`);
|
|
105
|
+
process.exit(EXIT_CODES.UNHANDLED_EXCEPTION);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
//# sourceMappingURL=daemonSessionController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"daemonSessionController.js","sourceRoot":"","sources":["../../../src/cli/handlers/daemonSessionController.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Aggressively cleanup stale Chrome processes launched by bdg.
|
|
3
|
+
*
|
|
4
|
+
* This function kills Chrome instances that were launched by bdg by:
|
|
5
|
+
* 1. Reading the Chrome PID from persistent cache (~/.bdg/chrome.pid)
|
|
6
|
+
* 2. Killing that specific Chrome process using cross-platform kill logic
|
|
7
|
+
*
|
|
8
|
+
* The cache survives session cleanup, so this works even after a normal session end.
|
|
9
|
+
*
|
|
10
|
+
* Cross-platform killing:
|
|
11
|
+
* - Windows: Uses `taskkill /pid <pid> /T /F` to kill process tree
|
|
12
|
+
* - Unix/macOS: Uses `process.kill(-pid, 'SIGKILL')` to kill process group
|
|
13
|
+
*
|
|
14
|
+
* Note: We can't use chromeLauncher.killAll() because it only tracks instances
|
|
15
|
+
* created via chromeLauncher.launch(), but we use new chromeLauncher.Launcher()
|
|
16
|
+
* which doesn't register in that tracking set.
|
|
17
|
+
*
|
|
18
|
+
* @returns Number of errors encountered during cleanup
|
|
19
|
+
*/
|
|
20
|
+
export declare function cleanupStaleChrome(): Promise<number>;
|
|
21
|
+
//# sourceMappingURL=sessionController.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sessionController.d.ts","sourceRoot":"","sources":["../../../src/cli/handlers/sessionController.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC,CAuC1D"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { getErrorMessage } from '../../utils/errors.js';
|
|
2
|
+
/**
|
|
3
|
+
* Aggressively cleanup stale Chrome processes launched by bdg.
|
|
4
|
+
*
|
|
5
|
+
* This function kills Chrome instances that were launched by bdg by:
|
|
6
|
+
* 1. Reading the Chrome PID from persistent cache (~/.bdg/chrome.pid)
|
|
7
|
+
* 2. Killing that specific Chrome process using cross-platform kill logic
|
|
8
|
+
*
|
|
9
|
+
* The cache survives session cleanup, so this works even after a normal session end.
|
|
10
|
+
*
|
|
11
|
+
* Cross-platform killing:
|
|
12
|
+
* - Windows: Uses `taskkill /pid <pid> /T /F` to kill process tree
|
|
13
|
+
* - Unix/macOS: Uses `process.kill(-pid, 'SIGKILL')` to kill process group
|
|
14
|
+
*
|
|
15
|
+
* Note: We can't use chromeLauncher.killAll() because it only tracks instances
|
|
16
|
+
* created via chromeLauncher.launch(), but we use new chromeLauncher.Launcher()
|
|
17
|
+
* which doesn't register in that tracking set.
|
|
18
|
+
*
|
|
19
|
+
* @returns Number of errors encountered during cleanup
|
|
20
|
+
*/
|
|
21
|
+
export async function cleanupStaleChrome() {
|
|
22
|
+
console.error('\nAttempting to kill stale Chrome processes...');
|
|
23
|
+
try {
|
|
24
|
+
// Import session utilities (dynamic import for ES modules)
|
|
25
|
+
const { readChromePid, clearChromePid } = await import('../../session/chrome.js');
|
|
26
|
+
const { killChromeProcess } = await import('../../session/process.js');
|
|
27
|
+
// Read Chrome PID from persistent cache
|
|
28
|
+
const chromePid = readChromePid();
|
|
29
|
+
if (!chromePid) {
|
|
30
|
+
console.error('Warning: No Chrome PID found in cache');
|
|
31
|
+
console.error(' Either Chrome was already running, or no Chrome was launched by bdg\n');
|
|
32
|
+
return 0;
|
|
33
|
+
}
|
|
34
|
+
// Kill Chrome process (cross-platform)
|
|
35
|
+
console.error(`Killing Chrome process (PID: ${chromePid})...`);
|
|
36
|
+
try {
|
|
37
|
+
// Use SIGKILL for aggressive cleanup (force kill)
|
|
38
|
+
killChromeProcess(chromePid, 'SIGKILL');
|
|
39
|
+
console.error('Chrome process killed successfully');
|
|
40
|
+
// Clear the cache after successful kill
|
|
41
|
+
clearChromePid();
|
|
42
|
+
return 0;
|
|
43
|
+
}
|
|
44
|
+
catch (killError) {
|
|
45
|
+
console.error(`Error: Failed to kill Chrome process: ${getErrorMessage(killError)}`);
|
|
46
|
+
console.error(' Try manually killing Chrome processes if issues persist\n');
|
|
47
|
+
return 1;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
catch (error) {
|
|
51
|
+
console.error(`Error: Failed to cleanup Chrome processes: ${getErrorMessage(error)}\n`);
|
|
52
|
+
return 1;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=sessionController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sessionController.js","sourceRoot":"","sources":["../../../src/cli/handlers/sessionController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACtC,OAAO,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;IAEhE,IAAI,CAAC;QACH,2DAA2D;QAC3D,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;QAC9E,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;QAEnE,wCAAwC;QACxC,MAAM,SAAS,GAAG,aAAa,EAAE,CAAC;QAElC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;YACvD,OAAO,CAAC,KAAK,CAAC,0EAA0E,CAAC,CAAC;YAC1F,OAAO,CAAC,CAAC;QACX,CAAC;QAED,uCAAuC;QACvC,OAAO,CAAC,KAAK,CAAC,gCAAgC,SAAS,MAAM,CAAC,CAAC;QAE/D,IAAI,CAAC;YACH,kDAAkD;YAClD,iBAAiB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAExC,OAAO,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;YAEpD,wCAAwC;YACxC,cAAc,EAAE,CAAC;YAEjB,OAAO,CAAC,CAAC;QACX,CAAC;QAAC,OAAO,SAAS,EAAE,CAAC;YACnB,OAAO,CAAC,KAAK,CAAC,yCAAyC,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YACrF,OAAO,CAAC,KAAK,CAAC,8DAA8D,CAAC,CAAC;YAC9E,OAAO,CAAC,CAAC;QACX,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,8CAA8C,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACxF,OAAO,CAAC,CAAC;IACX,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Command } from 'commander';
|
|
2
|
+
/**
|
|
3
|
+
* Command registration function type
|
|
4
|
+
*/
|
|
5
|
+
export type CommandRegistrar = (program: Command) => void;
|
|
6
|
+
/**
|
|
7
|
+
* Registry of all CLI commands with grouping
|
|
8
|
+
* Order matters: groups organize commands in help output
|
|
9
|
+
*/
|
|
10
|
+
export declare const commandRegistry: CommandRegistrar[];
|
|
11
|
+
//# sourceMappingURL=registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/cli/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAazC;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;AAW1D;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,gBAAgB,EA2B7C,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { registerCdpCommand } from './commands/cdp.js';
|
|
2
|
+
import { registerCleanupCommand } from './commands/cleanup.js';
|
|
3
|
+
import { registerConsoleCommand } from './commands/console.js';
|
|
4
|
+
import { registerDetailsCommand } from './commands/details.js';
|
|
5
|
+
import { registerDomCommands } from './commands/dom/index.js';
|
|
6
|
+
import { registerNetworkCommands } from './commands/network.js';
|
|
7
|
+
import { registerPeekCommand } from './commands/peek.js';
|
|
8
|
+
import { registerStartCommands } from './commands/start.js';
|
|
9
|
+
import { registerStatusCommand } from './commands/status.js';
|
|
10
|
+
import { registerStopCommand } from './commands/stop.js';
|
|
11
|
+
/**
|
|
12
|
+
* Helper to add a command group
|
|
13
|
+
*/
|
|
14
|
+
const addCommandGroup = (groupName) => {
|
|
15
|
+
return (program) => {
|
|
16
|
+
program.commandsGroup(groupName);
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Registry of all CLI commands with grouping
|
|
21
|
+
* Order matters: groups organize commands in help output
|
|
22
|
+
*/
|
|
23
|
+
export const commandRegistry = [
|
|
24
|
+
// Default command (no group)
|
|
25
|
+
registerStartCommands, // Default + dom/network/console
|
|
26
|
+
// Session Management Commands
|
|
27
|
+
addCommandGroup('Session Management:'),
|
|
28
|
+
registerStatusCommand,
|
|
29
|
+
registerStopCommand,
|
|
30
|
+
registerCleanupCommand,
|
|
31
|
+
// Data Inspection Commands
|
|
32
|
+
addCommandGroup('Data Inspection:'),
|
|
33
|
+
registerPeekCommand,
|
|
34
|
+
registerDetailsCommand,
|
|
35
|
+
registerDomCommands,
|
|
36
|
+
// CDP Commands
|
|
37
|
+
addCommandGroup('CDP Commands:'),
|
|
38
|
+
registerCdpCommand,
|
|
39
|
+
// Network Commands
|
|
40
|
+
addCommandGroup('Network Commands:'),
|
|
41
|
+
registerNetworkCommands,
|
|
42
|
+
// Console Commands
|
|
43
|
+
addCommandGroup('Console Commands:'),
|
|
44
|
+
registerConsoleCommand,
|
|
45
|
+
];
|
|
46
|
+
//# sourceMappingURL=registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/cli/registry.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAO7D;;GAEG;AACH,MAAM,eAAe,GAAG,CAAC,SAAiB,EAAoB,EAAE;IAC9D,OAAO,CAAC,OAAgB,EAAE,EAAE;QAC1B,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;IACnC,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAuB;IACjD,6BAA6B;IAC7B,qBAAqB,EAAE,gCAAgC;IAEvD,8BAA8B;IAC9B,eAAe,CAAC,qBAAqB,CAAC;IACtC,qBAAqB;IACrB,mBAAmB;IACnB,sBAAsB;IAEtB,2BAA2B;IAC3B,eAAe,CAAC,kBAAkB,CAAC;IACnC,mBAAmB;IACnB,sBAAsB;IACtB,mBAAmB;IAEnB,eAAe;IACf,eAAe,CAAC,eAAe,CAAC;IAChC,kBAAkB;IAElB,mBAAmB;IACnB,eAAe,CAAC,mBAAmB,CAAC;IACpC,uBAAuB;IAEvB,mBAAmB;IACnB,eAAe,CAAC,mBAAmB,CAAC;IACpC,sBAAsB;CACvB,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Network collector contract tests
|
|
3
|
+
*
|
|
4
|
+
* Tests the public API behavior of startNetworkCollection WITHOUT testing implementation details.
|
|
5
|
+
* Follows the testing philosophy: "Test the contract, not the implementation"
|
|
6
|
+
*
|
|
7
|
+
* Coverage:
|
|
8
|
+
* 1. Request/response pairing - Normal flow with matching IDs
|
|
9
|
+
* 2. Out-of-order events - Response arrives before request
|
|
10
|
+
* 3. Stale requests - Incomplete requests after timeout
|
|
11
|
+
* 4. Failed requests - Network.loadingFailed events
|
|
12
|
+
* 5. Request limits - MAX_NETWORK_REQUESTS enforcement
|
|
13
|
+
* 6. Cleanup - Handler removal and state cleanup
|
|
14
|
+
* 7. Domain filtering - Tracking/analytics exclusion
|
|
15
|
+
* 8. Body fetching - Size limits and MIME type handling
|
|
16
|
+
*
|
|
17
|
+
* What we test:
|
|
18
|
+
* ✅ Behavior: Given CDP events → expect NetworkRequest array contents
|
|
19
|
+
* ✅ Invariants: "Requests are paired with responses", "Cleanup removes all handlers"
|
|
20
|
+
* ✅ Edge cases: Out-of-order, stale, limits, failures
|
|
21
|
+
*
|
|
22
|
+
* What we DON'T test:
|
|
23
|
+
* ❌ Internal requestMap structure
|
|
24
|
+
* ❌ Internal function calls (tryExactMatch, normalizeUrl, etc.)
|
|
25
|
+
* ❌ Implementation details (Map vs Set, event handler IDs)
|
|
26
|
+
*/
|
|
27
|
+
export {};
|
|
28
|
+
//# sourceMappingURL=network.contract.test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"network.contract.test.d.ts","sourceRoot":"","sources":["../../../src/collectors/__tests__/network.contract.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG"}
|