@metamask/client-mcp-core 0.1.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.
- package/CHANGELOG.md +17 -0
- package/LICENSE +6 -0
- package/LICENSE.APACHE2 +201 -0
- package/LICENSE.MIT +21 -0
- package/README.md +1459 -0
- package/dist/capabilities/context.cjs +34 -0
- package/dist/capabilities/context.cjs.map +1 -0
- package/dist/capabilities/context.d.cts +101 -0
- package/dist/capabilities/context.d.cts.map +1 -0
- package/dist/capabilities/context.d.mts +101 -0
- package/dist/capabilities/context.d.mts.map +1 -0
- package/dist/capabilities/context.mjs +29 -0
- package/dist/capabilities/context.mjs.map +1 -0
- package/dist/capabilities/index.cjs +18 -0
- package/dist/capabilities/index.cjs.map +1 -0
- package/dist/capabilities/index.d.cts +3 -0
- package/dist/capabilities/index.d.cts.map +1 -0
- package/dist/capabilities/index.d.mts +3 -0
- package/dist/capabilities/index.d.mts.map +1 -0
- package/dist/capabilities/index.mjs +2 -0
- package/dist/capabilities/index.mjs.map +1 -0
- package/dist/capabilities/types.cjs +3 -0
- package/dist/capabilities/types.cjs.map +1 -0
- package/dist/capabilities/types.d.cts +152 -0
- package/dist/capabilities/types.d.cts.map +1 -0
- package/dist/capabilities/types.d.mts +152 -0
- package/dist/capabilities/types.d.mts.map +1 -0
- package/dist/capabilities/types.mjs +2 -0
- package/dist/capabilities/types.mjs.map +1 -0
- package/dist/index.cjs +59 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +33 -0
- package/dist/index.d.cts.map +1 -0
- package/dist/index.d.mts +33 -0
- package/dist/index.d.mts.map +1 -0
- package/dist/index.mjs +43 -0
- package/dist/index.mjs.map +1 -0
- package/dist/launcher/console-error-buffer.cjs +72 -0
- package/dist/launcher/console-error-buffer.cjs.map +1 -0
- package/dist/launcher/console-error-buffer.d.cts +43 -0
- package/dist/launcher/console-error-buffer.d.cts.map +1 -0
- package/dist/launcher/console-error-buffer.d.mts +43 -0
- package/dist/launcher/console-error-buffer.d.mts.map +1 -0
- package/dist/launcher/console-error-buffer.mjs +68 -0
- package/dist/launcher/console-error-buffer.mjs.map +1 -0
- package/dist/launcher/extension-id-resolver.cjs +177 -0
- package/dist/launcher/extension-id-resolver.cjs.map +1 -0
- package/dist/launcher/extension-id-resolver.d.cts +32 -0
- package/dist/launcher/extension-id-resolver.d.cts.map +1 -0
- package/dist/launcher/extension-id-resolver.d.mts +32 -0
- package/dist/launcher/extension-id-resolver.d.mts.map +1 -0
- package/dist/launcher/extension-id-resolver.mjs +173 -0
- package/dist/launcher/extension-id-resolver.mjs.map +1 -0
- package/dist/launcher/extension-readiness.cjs +50 -0
- package/dist/launcher/extension-readiness.cjs.map +1 -0
- package/dist/launcher/extension-readiness.d.cts +37 -0
- package/dist/launcher/extension-readiness.d.cts.map +1 -0
- package/dist/launcher/extension-readiness.d.mts +37 -0
- package/dist/launcher/extension-readiness.d.mts.map +1 -0
- package/dist/launcher/extension-readiness.mjs +43 -0
- package/dist/launcher/extension-readiness.mjs.map +1 -0
- package/dist/launcher/index.cjs +21 -0
- package/dist/launcher/index.cjs.map +1 -0
- package/dist/launcher/index.d.cts +5 -0
- package/dist/launcher/index.d.cts.map +1 -0
- package/dist/launcher/index.d.mts +5 -0
- package/dist/launcher/index.d.mts.map +1 -0
- package/dist/launcher/index.mjs +5 -0
- package/dist/launcher/index.mjs.map +1 -0
- package/dist/launcher/retry.cjs +35 -0
- package/dist/launcher/retry.cjs.map +1 -0
- package/dist/launcher/retry.d.cts +20 -0
- package/dist/launcher/retry.d.cts.map +1 -0
- package/dist/launcher/retry.d.mts +20 -0
- package/dist/launcher/retry.d.mts.map +1 -0
- package/dist/launcher/retry.mjs +31 -0
- package/dist/launcher/retry.mjs.map +1 -0
- package/dist/mcp-server/constants.cjs +22 -0
- package/dist/mcp-server/constants.cjs.map +1 -0
- package/dist/mcp-server/constants.d.cts +13 -0
- package/dist/mcp-server/constants.d.cts.map +1 -0
- package/dist/mcp-server/constants.d.mts +13 -0
- package/dist/mcp-server/constants.d.mts.map +1 -0
- package/dist/mcp-server/constants.mjs +19 -0
- package/dist/mcp-server/constants.mjs.map +1 -0
- package/dist/mcp-server/discovery.cjs +299 -0
- package/dist/mcp-server/discovery.cjs.map +1 -0
- package/dist/mcp-server/discovery.d.cts +56 -0
- package/dist/mcp-server/discovery.d.cts.map +1 -0
- package/dist/mcp-server/discovery.d.mts +56 -0
- package/dist/mcp-server/discovery.d.mts.map +1 -0
- package/dist/mcp-server/discovery.mjs +292 -0
- package/dist/mcp-server/discovery.mjs.map +1 -0
- package/dist/mcp-server/knowledge-store.cjs +1196 -0
- package/dist/mcp-server/knowledge-store.cjs.map +1 -0
- package/dist/mcp-server/knowledge-store.d.cts +249 -0
- package/dist/mcp-server/knowledge-store.d.cts.map +1 -0
- package/dist/mcp-server/knowledge-store.d.mts +249 -0
- package/dist/mcp-server/knowledge-store.d.mts.map +1 -0
- package/dist/mcp-server/knowledge-store.mjs +1154 -0
- package/dist/mcp-server/knowledge-store.mjs.map +1 -0
- package/dist/mcp-server/schemas.cjs +433 -0
- package/dist/mcp-server/schemas.cjs.map +1 -0
- package/dist/mcp-server/schemas.d.cts +557 -0
- package/dist/mcp-server/schemas.d.cts.map +1 -0
- package/dist/mcp-server/schemas.d.mts +557 -0
- package/dist/mcp-server/schemas.d.mts.map +1 -0
- package/dist/mcp-server/schemas.mjs +430 -0
- package/dist/mcp-server/schemas.mjs.map +1 -0
- package/dist/mcp-server/server.cjs +161 -0
- package/dist/mcp-server/server.cjs.map +1 -0
- package/dist/mcp-server/server.d.cts +24 -0
- package/dist/mcp-server/server.d.cts.map +1 -0
- package/dist/mcp-server/server.d.mts +24 -0
- package/dist/mcp-server/server.d.mts.map +1 -0
- package/dist/mcp-server/server.mjs +158 -0
- package/dist/mcp-server/server.mjs.map +1 -0
- package/dist/mcp-server/session-manager.cjs +53 -0
- package/dist/mcp-server/session-manager.cjs.map +1 -0
- package/dist/mcp-server/session-manager.d.cts +240 -0
- package/dist/mcp-server/session-manager.d.cts.map +1 -0
- package/dist/mcp-server/session-manager.d.mts +240 -0
- package/dist/mcp-server/session-manager.d.mts.map +1 -0
- package/dist/mcp-server/session-manager.mjs +48 -0
- package/dist/mcp-server/session-manager.mjs.map +1 -0
- package/dist/mcp-server/test-utils/flush-promises.cjs +10 -0
- package/dist/mcp-server/test-utils/flush-promises.cjs.map +1 -0
- package/dist/mcp-server/test-utils/flush-promises.d.cts +2 -0
- package/dist/mcp-server/test-utils/flush-promises.d.cts.map +1 -0
- package/dist/mcp-server/test-utils/flush-promises.d.mts +2 -0
- package/dist/mcp-server/test-utils/flush-promises.d.mts.map +1 -0
- package/dist/mcp-server/test-utils/flush-promises.mjs +7 -0
- package/dist/mcp-server/test-utils/flush-promises.mjs.map +1 -0
- package/dist/mcp-server/test-utils/index.cjs +13 -0
- package/dist/mcp-server/test-utils/index.cjs.map +1 -0
- package/dist/mcp-server/test-utils/index.d.cts +4 -0
- package/dist/mcp-server/test-utils/index.d.cts.map +1 -0
- package/dist/mcp-server/test-utils/index.d.mts +4 -0
- package/dist/mcp-server/test-utils/index.d.mts.map +1 -0
- package/dist/mcp-server/test-utils/index.mjs +4 -0
- package/dist/mcp-server/test-utils/index.mjs.map +1 -0
- package/dist/mcp-server/test-utils/mock-factories.cjs +129 -0
- package/dist/mcp-server/test-utils/mock-factories.cjs.map +1 -0
- package/dist/mcp-server/test-utils/mock-factories.d.cts +89 -0
- package/dist/mcp-server/test-utils/mock-factories.d.cts.map +1 -0
- package/dist/mcp-server/test-utils/mock-factories.d.mts +89 -0
- package/dist/mcp-server/test-utils/mock-factories.d.mts.map +1 -0
- package/dist/mcp-server/test-utils/mock-factories.mjs +125 -0
- package/dist/mcp-server/test-utils/mock-factories.mjs.map +1 -0
- package/dist/mcp-server/test-utils/mock-playwright.cjs +205 -0
- package/dist/mcp-server/test-utils/mock-playwright.cjs.map +1 -0
- package/dist/mcp-server/test-utils/mock-playwright.d.cts +69 -0
- package/dist/mcp-server/test-utils/mock-playwright.d.cts.map +1 -0
- package/dist/mcp-server/test-utils/mock-playwright.d.mts +69 -0
- package/dist/mcp-server/test-utils/mock-playwright.d.mts.map +1 -0
- package/dist/mcp-server/test-utils/mock-playwright.mjs +200 -0
- package/dist/mcp-server/test-utils/mock-playwright.mjs.map +1 -0
- package/dist/mcp-server/tokenization.cjs +117 -0
- package/dist/mcp-server/tokenization.cjs.map +1 -0
- package/dist/mcp-server/tokenization.d.cts +22 -0
- package/dist/mcp-server/tokenization.d.cts.map +1 -0
- package/dist/mcp-server/tokenization.d.mts +22 -0
- package/dist/mcp-server/tokenization.d.mts.map +1 -0
- package/dist/mcp-server/tokenization.mjs +112 -0
- package/dist/mcp-server/tokenization.mjs.map +1 -0
- package/dist/mcp-server/tools/batch.cjs +199 -0
- package/dist/mcp-server/tools/batch.cjs.map +1 -0
- package/dist/mcp-server/tools/batch.d.cts +81 -0
- package/dist/mcp-server/tools/batch.d.cts.map +1 -0
- package/dist/mcp-server/tools/batch.d.mts +81 -0
- package/dist/mcp-server/tools/batch.d.mts.map +1 -0
- package/dist/mcp-server/tools/batch.mjs +191 -0
- package/dist/mcp-server/tools/batch.mjs.map +1 -0
- package/dist/mcp-server/tools/build.cjs +47 -0
- package/dist/mcp-server/tools/build.cjs.map +1 -0
- package/dist/mcp-server/tools/build.d.cts +22 -0
- package/dist/mcp-server/tools/build.d.cts.map +1 -0
- package/dist/mcp-server/tools/build.d.mts +22 -0
- package/dist/mcp-server/tools/build.d.mts.map +1 -0
- package/dist/mcp-server/tools/build.mjs +44 -0
- package/dist/mcp-server/tools/build.mjs.map +1 -0
- package/dist/mcp-server/tools/cleanup.cjs +20 -0
- package/dist/mcp-server/tools/cleanup.cjs.map +1 -0
- package/dist/mcp-server/tools/cleanup.d.cts +10 -0
- package/dist/mcp-server/tools/cleanup.d.cts.map +1 -0
- package/dist/mcp-server/tools/cleanup.d.mts +10 -0
- package/dist/mcp-server/tools/cleanup.d.mts.map +1 -0
- package/dist/mcp-server/tools/cleanup.mjs +17 -0
- package/dist/mcp-server/tools/cleanup.mjs.map +1 -0
- package/dist/mcp-server/tools/clipboard.cjs +100 -0
- package/dist/mcp-server/tools/clipboard.cjs.map +1 -0
- package/dist/mcp-server/tools/clipboard.d.cts +16 -0
- package/dist/mcp-server/tools/clipboard.d.cts.map +1 -0
- package/dist/mcp-server/tools/clipboard.d.mts +16 -0
- package/dist/mcp-server/tools/clipboard.d.mts.map +1 -0
- package/dist/mcp-server/tools/clipboard.mjs +97 -0
- package/dist/mcp-server/tools/clipboard.mjs.map +1 -0
- package/dist/mcp-server/tools/context.cjs +66 -0
- package/dist/mcp-server/tools/context.cjs.map +1 -0
- package/dist/mcp-server/tools/context.d.cts +35 -0
- package/dist/mcp-server/tools/context.d.cts.map +1 -0
- package/dist/mcp-server/tools/context.d.mts +35 -0
- package/dist/mcp-server/tools/context.d.mts.map +1 -0
- package/dist/mcp-server/tools/context.mjs +62 -0
- package/dist/mcp-server/tools/context.mjs.map +1 -0
- package/dist/mcp-server/tools/definitions.cjs +463 -0
- package/dist/mcp-server/tools/definitions.cjs.map +1 -0
- package/dist/mcp-server/tools/definitions.d.cts +97 -0
- package/dist/mcp-server/tools/definitions.d.cts.map +1 -0
- package/dist/mcp-server/tools/definitions.d.mts +97 -0
- package/dist/mcp-server/tools/definitions.d.mts.map +1 -0
- package/dist/mcp-server/tools/definitions.mjs +451 -0
- package/dist/mcp-server/tools/definitions.mjs.map +1 -0
- package/dist/mcp-server/tools/discovery-tools.cjs +162 -0
- package/dist/mcp-server/tools/discovery-tools.cjs.map +1 -0
- package/dist/mcp-server/tools/discovery-tools.d.cts +26 -0
- package/dist/mcp-server/tools/discovery-tools.d.cts.map +1 -0
- package/dist/mcp-server/tools/discovery-tools.d.mts +26 -0
- package/dist/mcp-server/tools/discovery-tools.d.mts.map +1 -0
- package/dist/mcp-server/tools/discovery-tools.mjs +157 -0
- package/dist/mcp-server/tools/discovery-tools.mjs.map +1 -0
- package/dist/mcp-server/tools/error-classification.cjs +296 -0
- package/dist/mcp-server/tools/error-classification.cjs.map +1 -0
- package/dist/mcp-server/tools/error-classification.d.cts +135 -0
- package/dist/mcp-server/tools/error-classification.d.cts.map +1 -0
- package/dist/mcp-server/tools/error-classification.d.mts +135 -0
- package/dist/mcp-server/tools/error-classification.d.mts.map +1 -0
- package/dist/mcp-server/tools/error-classification.mjs +281 -0
- package/dist/mcp-server/tools/error-classification.mjs.map +1 -0
- package/dist/mcp-server/tools/helpers.cjs +149 -0
- package/dist/mcp-server/tools/helpers.cjs.map +1 -0
- package/dist/mcp-server/tools/helpers.d.cts +149 -0
- package/dist/mcp-server/tools/helpers.d.cts.map +1 -0
- package/dist/mcp-server/tools/helpers.d.mts +149 -0
- package/dist/mcp-server/tools/helpers.d.mts.map +1 -0
- package/dist/mcp-server/tools/helpers.mjs +141 -0
- package/dist/mcp-server/tools/helpers.mjs.map +1 -0
- package/dist/mcp-server/tools/index.cjs +27 -0
- package/dist/mcp-server/tools/index.cjs.map +1 -0
- package/dist/mcp-server/tools/index.d.cts +11 -0
- package/dist/mcp-server/tools/index.d.cts.map +1 -0
- package/dist/mcp-server/tools/index.d.mts +11 -0
- package/dist/mcp-server/tools/index.d.mts.map +1 -0
- package/dist/mcp-server/tools/index.mjs +11 -0
- package/dist/mcp-server/tools/index.mjs.map +1 -0
- package/dist/mcp-server/tools/interaction.cjs +190 -0
- package/dist/mcp-server/tools/interaction.cjs.map +1 -0
- package/dist/mcp-server/tools/interaction.d.cts +26 -0
- package/dist/mcp-server/tools/interaction.d.cts.map +1 -0
- package/dist/mcp-server/tools/interaction.d.mts +26 -0
- package/dist/mcp-server/tools/interaction.d.mts.map +1 -0
- package/dist/mcp-server/tools/interaction.mjs +185 -0
- package/dist/mcp-server/tools/interaction.mjs.map +1 -0
- package/dist/mcp-server/tools/knowledge.cjs +120 -0
- package/dist/mcp-server/tools/knowledge.cjs.map +1 -0
- package/dist/mcp-server/tools/knowledge.d.cts +34 -0
- package/dist/mcp-server/tools/knowledge.d.cts.map +1 -0
- package/dist/mcp-server/tools/knowledge.d.mts +34 -0
- package/dist/mcp-server/tools/knowledge.d.mts.map +1 -0
- package/dist/mcp-server/tools/knowledge.mjs +114 -0
- package/dist/mcp-server/tools/knowledge.mjs.map +1 -0
- package/dist/mcp-server/tools/launch.cjs +51 -0
- package/dist/mcp-server/tools/launch.cjs.map +1 -0
- package/dist/mcp-server/tools/launch.d.cts +10 -0
- package/dist/mcp-server/tools/launch.d.cts.map +1 -0
- package/dist/mcp-server/tools/launch.d.mts +10 -0
- package/dist/mcp-server/tools/launch.d.mts.map +1 -0
- package/dist/mcp-server/tools/launch.mjs +48 -0
- package/dist/mcp-server/tools/launch.mjs.map +1 -0
- package/dist/mcp-server/tools/navigation.cjs +242 -0
- package/dist/mcp-server/tools/navigation.cjs.map +1 -0
- package/dist/mcp-server/tools/navigation.d.cts +34 -0
- package/dist/mcp-server/tools/navigation.d.cts.map +1 -0
- package/dist/mcp-server/tools/navigation.d.mts +34 -0
- package/dist/mcp-server/tools/navigation.d.mts.map +1 -0
- package/dist/mcp-server/tools/navigation.mjs +236 -0
- package/dist/mcp-server/tools/navigation.mjs.map +1 -0
- package/dist/mcp-server/tools/registry.cjs +10 -0
- package/dist/mcp-server/tools/registry.cjs.map +1 -0
- package/dist/mcp-server/tools/registry.d.cts +4 -0
- package/dist/mcp-server/tools/registry.d.cts.map +1 -0
- package/dist/mcp-server/tools/registry.d.mts +4 -0
- package/dist/mcp-server/tools/registry.d.mts.map +1 -0
- package/dist/mcp-server/tools/registry.mjs +4 -0
- package/dist/mcp-server/tools/registry.mjs.map +1 -0
- package/dist/mcp-server/tools/run-tool.cjs +140 -0
- package/dist/mcp-server/tools/run-tool.cjs.map +1 -0
- package/dist/mcp-server/tools/run-tool.d.cts +39 -0
- package/dist/mcp-server/tools/run-tool.d.cts.map +1 -0
- package/dist/mcp-server/tools/run-tool.d.mts +39 -0
- package/dist/mcp-server/tools/run-tool.d.mts.map +1 -0
- package/dist/mcp-server/tools/run-tool.mjs +137 -0
- package/dist/mcp-server/tools/run-tool.mjs.map +1 -0
- package/dist/mcp-server/tools/screenshot.cjs +55 -0
- package/dist/mcp-server/tools/screenshot.cjs.map +1 -0
- package/dist/mcp-server/tools/screenshot.d.cts +10 -0
- package/dist/mcp-server/tools/screenshot.d.cts.map +1 -0
- package/dist/mcp-server/tools/screenshot.d.mts +10 -0
- package/dist/mcp-server/tools/screenshot.d.mts.map +1 -0
- package/dist/mcp-server/tools/screenshot.mjs +52 -0
- package/dist/mcp-server/tools/screenshot.mjs.map +1 -0
- package/dist/mcp-server/tools/seeding.cjs +214 -0
- package/dist/mcp-server/tools/seeding.cjs.map +1 -0
- package/dist/mcp-server/tools/seeding.d.cts +38 -0
- package/dist/mcp-server/tools/seeding.d.cts.map +1 -0
- package/dist/mcp-server/tools/seeding.d.mts +38 -0
- package/dist/mcp-server/tools/seeding.d.mts.map +1 -0
- package/dist/mcp-server/tools/seeding.mjs +208 -0
- package/dist/mcp-server/tools/seeding.mjs.map +1 -0
- package/dist/mcp-server/tools/state.cjs +69 -0
- package/dist/mcp-server/tools/state.cjs.map +1 -0
- package/dist/mcp-server/tools/state.d.cts +19 -0
- package/dist/mcp-server/tools/state.d.cts.map +1 -0
- package/dist/mcp-server/tools/state.d.mts +19 -0
- package/dist/mcp-server/tools/state.d.mts.map +1 -0
- package/dist/mcp-server/tools/state.mjs +66 -0
- package/dist/mcp-server/tools/state.mjs.map +1 -0
- package/dist/mcp-server/types/discovery.cjs +24 -0
- package/dist/mcp-server/types/discovery.cjs.map +1 -0
- package/dist/mcp-server/types/discovery.d.cts +30 -0
- package/dist/mcp-server/types/discovery.d.cts.map +1 -0
- package/dist/mcp-server/types/discovery.d.mts +30 -0
- package/dist/mcp-server/types/discovery.d.mts.map +1 -0
- package/dist/mcp-server/types/discovery.mjs +21 -0
- package/dist/mcp-server/types/discovery.mjs.map +1 -0
- package/dist/mcp-server/types/errors.cjs +33 -0
- package/dist/mcp-server/types/errors.cjs.map +1 -0
- package/dist/mcp-server/types/errors.d.cts +31 -0
- package/dist/mcp-server/types/errors.d.cts.map +1 -0
- package/dist/mcp-server/types/errors.d.mts +31 -0
- package/dist/mcp-server/types/errors.d.mts.map +1 -0
- package/dist/mcp-server/types/errors.mjs +30 -0
- package/dist/mcp-server/types/errors.mjs.map +1 -0
- package/dist/mcp-server/types/index.cjs +21 -0
- package/dist/mcp-server/types/index.cjs.map +1 -0
- package/dist/mcp-server/types/index.d.cts +10 -0
- package/dist/mcp-server/types/index.d.cts.map +1 -0
- package/dist/mcp-server/types/index.d.mts +10 -0
- package/dist/mcp-server/types/index.d.mts.map +1 -0
- package/dist/mcp-server/types/index.mjs +5 -0
- package/dist/mcp-server/types/index.mjs.map +1 -0
- package/dist/mcp-server/types/knowledge.cjs +3 -0
- package/dist/mcp-server/types/knowledge.cjs.map +1 -0
- package/dist/mcp-server/types/knowledge.d.cts +116 -0
- package/dist/mcp-server/types/knowledge.d.cts.map +1 -0
- package/dist/mcp-server/types/knowledge.d.mts +116 -0
- package/dist/mcp-server/types/knowledge.d.mts.map +1 -0
- package/dist/mcp-server/types/knowledge.mjs +2 -0
- package/dist/mcp-server/types/knowledge.mjs.map +1 -0
- package/dist/mcp-server/types/responses.cjs +3 -0
- package/dist/mcp-server/types/responses.cjs.map +1 -0
- package/dist/mcp-server/types/responses.d.cts +22 -0
- package/dist/mcp-server/types/responses.d.cts.map +1 -0
- package/dist/mcp-server/types/responses.d.mts +22 -0
- package/dist/mcp-server/types/responses.d.mts.map +1 -0
- package/dist/mcp-server/types/responses.mjs +2 -0
- package/dist/mcp-server/types/responses.mjs.map +1 -0
- package/dist/mcp-server/types/seeding.cjs +34 -0
- package/dist/mcp-server/types/seeding.cjs.map +1 -0
- package/dist/mcp-server/types/seeding.d.cts +40 -0
- package/dist/mcp-server/types/seeding.d.cts.map +1 -0
- package/dist/mcp-server/types/seeding.d.mts +40 -0
- package/dist/mcp-server/types/seeding.d.mts.map +1 -0
- package/dist/mcp-server/types/seeding.mjs +31 -0
- package/dist/mcp-server/types/seeding.mjs.map +1 -0
- package/dist/mcp-server/types/session.cjs +3 -0
- package/dist/mcp-server/types/session.cjs.map +1 -0
- package/dist/mcp-server/types/session.d.cts +11 -0
- package/dist/mcp-server/types/session.d.cts.map +1 -0
- package/dist/mcp-server/types/session.d.mts +11 -0
- package/dist/mcp-server/types/session.d.mts.map +1 -0
- package/dist/mcp-server/types/session.mjs +2 -0
- package/dist/mcp-server/types/session.mjs.map +1 -0
- package/dist/mcp-server/types/step-record.cjs +20 -0
- package/dist/mcp-server/types/step-record.cjs.map +1 -0
- package/dist/mcp-server/types/step-record.d.cts +86 -0
- package/dist/mcp-server/types/step-record.d.cts.map +1 -0
- package/dist/mcp-server/types/step-record.d.mts +86 -0
- package/dist/mcp-server/types/step-record.d.mts.map +1 -0
- package/dist/mcp-server/types/step-record.mjs +17 -0
- package/dist/mcp-server/types/step-record.mjs.map +1 -0
- package/dist/mcp-server/types/tool-inputs.cjs +3 -0
- package/dist/mcp-server/types/tool-inputs.cjs.map +1 -0
- package/dist/mcp-server/types/tool-inputs.d.cts +118 -0
- package/dist/mcp-server/types/tool-inputs.d.cts.map +1 -0
- package/dist/mcp-server/types/tool-inputs.d.mts +118 -0
- package/dist/mcp-server/types/tool-inputs.d.mts.map +1 -0
- package/dist/mcp-server/types/tool-inputs.mjs +2 -0
- package/dist/mcp-server/types/tool-inputs.mjs.map +1 -0
- package/dist/mcp-server/types/tool-outputs.cjs +3 -0
- package/dist/mcp-server/types/tool-outputs.cjs.map +1 -0
- package/dist/mcp-server/types/tool-outputs.d.cts +121 -0
- package/dist/mcp-server/types/tool-outputs.d.cts.map +1 -0
- package/dist/mcp-server/types/tool-outputs.d.mts +121 -0
- package/dist/mcp-server/types/tool-outputs.d.mts.map +1 -0
- package/dist/mcp-server/types/tool-outputs.mjs +2 -0
- package/dist/mcp-server/types/tool-outputs.mjs.map +1 -0
- package/dist/mcp-server/utils/errors.cjs +14 -0
- package/dist/mcp-server/utils/errors.cjs.map +1 -0
- package/dist/mcp-server/utils/errors.d.cts +9 -0
- package/dist/mcp-server/utils/errors.d.cts.map +1 -0
- package/dist/mcp-server/utils/errors.d.mts +9 -0
- package/dist/mcp-server/utils/errors.d.mts.map +1 -0
- package/dist/mcp-server/utils/errors.mjs +11 -0
- package/dist/mcp-server/utils/errors.mjs.map +1 -0
- package/dist/mcp-server/utils/index.cjs +22 -0
- package/dist/mcp-server/utils/index.cjs.map +1 -0
- package/dist/mcp-server/utils/index.d.cts +8 -0
- package/dist/mcp-server/utils/index.d.cts.map +1 -0
- package/dist/mcp-server/utils/index.d.mts +8 -0
- package/dist/mcp-server/utils/index.d.mts.map +1 -0
- package/dist/mcp-server/utils/index.mjs +8 -0
- package/dist/mcp-server/utils/index.mjs.map +1 -0
- package/dist/mcp-server/utils/logger.cjs +25 -0
- package/dist/mcp-server/utils/logger.cjs.map +1 -0
- package/dist/mcp-server/utils/logger.d.cts +9 -0
- package/dist/mcp-server/utils/logger.d.cts.map +1 -0
- package/dist/mcp-server/utils/logger.d.mts +9 -0
- package/dist/mcp-server/utils/logger.d.mts.map +1 -0
- package/dist/mcp-server/utils/logger.mjs +22 -0
- package/dist/mcp-server/utils/logger.mjs.map +1 -0
- package/dist/mcp-server/utils/redaction.cjs +24 -0
- package/dist/mcp-server/utils/redaction.cjs.map +1 -0
- package/dist/mcp-server/utils/redaction.d.cts +9 -0
- package/dist/mcp-server/utils/redaction.d.cts.map +1 -0
- package/dist/mcp-server/utils/redaction.d.mts +9 -0
- package/dist/mcp-server/utils/redaction.d.mts.map +1 -0
- package/dist/mcp-server/utils/redaction.mjs +20 -0
- package/dist/mcp-server/utils/redaction.mjs.map +1 -0
- package/dist/mcp-server/utils/response.cjs +49 -0
- package/dist/mcp-server/utils/response.cjs.map +1 -0
- package/dist/mcp-server/utils/response.d.cts +22 -0
- package/dist/mcp-server/utils/response.d.cts.map +1 -0
- package/dist/mcp-server/utils/response.d.mts +22 -0
- package/dist/mcp-server/utils/response.d.mts.map +1 -0
- package/dist/mcp-server/utils/response.mjs +45 -0
- package/dist/mcp-server/utils/response.mjs.map +1 -0
- package/dist/mcp-server/utils/targets.cjs +32 -0
- package/dist/mcp-server/utils/targets.cjs.map +1 -0
- package/dist/mcp-server/utils/targets.d.cts +25 -0
- package/dist/mcp-server/utils/targets.d.cts.map +1 -0
- package/dist/mcp-server/utils/targets.d.mts +25 -0
- package/dist/mcp-server/utils/targets.d.mts.map +1 -0
- package/dist/mcp-server/utils/targets.mjs +29 -0
- package/dist/mcp-server/utils/targets.mjs.map +1 -0
- package/dist/mcp-server/utils/time.cjs +39 -0
- package/dist/mcp-server/utils/time.cjs.map +1 -0
- package/dist/mcp-server/utils/time.d.cts +15 -0
- package/dist/mcp-server/utils/time.d.cts.map +1 -0
- package/dist/mcp-server/utils/time.d.mts +15 -0
- package/dist/mcp-server/utils/time.d.mts.map +1 -0
- package/dist/mcp-server/utils/time.mjs +35 -0
- package/dist/mcp-server/utils/time.mjs.map +1 -0
- package/dist/mcp-server/utils/type-guards.cjs +42 -0
- package/dist/mcp-server/utils/type-guards.cjs.map +1 -0
- package/dist/mcp-server/utils/type-guards.d.cts +30 -0
- package/dist/mcp-server/utils/type-guards.d.cts.map +1 -0
- package/dist/mcp-server/utils/type-guards.d.mts +30 -0
- package/dist/mcp-server/utils/type-guards.d.mts.map +1 -0
- package/dist/mcp-server/utils/type-guards.mjs +38 -0
- package/dist/mcp-server/utils/type-guards.mjs.map +1 -0
- package/dist/utils/fetch.cjs +36 -0
- package/dist/utils/fetch.cjs.map +1 -0
- package/dist/utils/fetch.d.cts +20 -0
- package/dist/utils/fetch.d.cts.map +1 -0
- package/dist/utils/fetch.d.mts +20 -0
- package/dist/utils/fetch.d.mts.map +1 -0
- package/dist/utils/fetch.mjs +33 -0
- package/dist/utils/fetch.mjs.map +1 -0
- package/dist/utils/index.cjs +11 -0
- package/dist/utils/index.cjs.map +1 -0
- package/dist/utils/index.d.cts +6 -0
- package/dist/utils/index.d.cts.map +1 -0
- package/dist/utils/index.d.mts +6 -0
- package/dist/utils/index.d.mts.map +1 -0
- package/dist/utils/index.mjs +6 -0
- package/dist/utils/index.mjs.map +1 -0
- package/dist/utils/service-readiness.cjs +75 -0
- package/dist/utils/service-readiness.cjs.map +1 -0
- package/dist/utils/service-readiness.d.cts +61 -0
- package/dist/utils/service-readiness.d.cts.map +1 -0
- package/dist/utils/service-readiness.d.mts +61 -0
- package/dist/utils/service-readiness.d.mts.map +1 -0
- package/dist/utils/service-readiness.mjs +72 -0
- package/dist/utils/service-readiness.mjs.map +1 -0
- package/package.json +119 -0
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared mock factory utilities for unit testing.
|
|
3
|
+
*
|
|
4
|
+
* Provides factory functions that return fresh mock instances following MetaMask testing guidelines:
|
|
5
|
+
* - Each factory call returns NEW object instances (test isolation)
|
|
6
|
+
* - Each factory creates fresh vi.fn() mocks (never reused)
|
|
7
|
+
* - Factories accept options for customization
|
|
8
|
+
* - Sensible defaults so most tests need no options
|
|
9
|
+
*/
|
|
10
|
+
import type { ExtensionState } from "../../capabilities/types.cjs";
|
|
11
|
+
import type { KnowledgeStore } from "../knowledge-store.cjs";
|
|
12
|
+
import type { TrackedPage, SessionLaunchResult } from "../session-manager.cjs";
|
|
13
|
+
import type { SessionState } from "../types/session.cjs";
|
|
14
|
+
import type { SessionMetadata } from "../types/step-record.cjs";
|
|
15
|
+
/**
|
|
16
|
+
* Options for customizing mock session manager behavior
|
|
17
|
+
*/
|
|
18
|
+
export type MockSessionManagerOptions = {
|
|
19
|
+
hasActive?: boolean;
|
|
20
|
+
sessionId?: string;
|
|
21
|
+
sessionState?: SessionState;
|
|
22
|
+
sessionMetadata?: SessionMetadata;
|
|
23
|
+
launchResult?: SessionLaunchResult;
|
|
24
|
+
trackedPages?: TrackedPage[];
|
|
25
|
+
extensionState?: ExtensionState;
|
|
26
|
+
refMap?: Map<string, string>;
|
|
27
|
+
environmentMode?: 'e2e' | 'prod';
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Options for customizing mock knowledge store behavior
|
|
31
|
+
*/
|
|
32
|
+
export type MockKnowledgeStoreOptions = {
|
|
33
|
+
lastSteps?: Record<string, unknown>[];
|
|
34
|
+
searchResults?: Record<string, unknown>[];
|
|
35
|
+
sessionSummary?: Record<string, unknown>;
|
|
36
|
+
sessions?: Record<string, unknown>[];
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* Create a fresh mock ISessionManager instance.
|
|
40
|
+
*
|
|
41
|
+
* Each call returns a NEW object with fresh vi.fn() mocks.
|
|
42
|
+
* Follows the pattern from session-manager.test.ts:15-48.
|
|
43
|
+
*
|
|
44
|
+
* @param options - Customize mock behavior
|
|
45
|
+
* @returns Fresh ISessionManager mock
|
|
46
|
+
*/
|
|
47
|
+
export declare function createMockSessionManager(options?: MockSessionManagerOptions): {
|
|
48
|
+
hasActiveSession: import("vitest").Mock<(...args: any[]) => any>;
|
|
49
|
+
getSessionId: import("vitest").Mock<(...args: any[]) => any>;
|
|
50
|
+
getSessionState: import("vitest").Mock<(...args: any[]) => any>;
|
|
51
|
+
getSessionMetadata: import("vitest").Mock<(...args: any[]) => any>;
|
|
52
|
+
launch: import("vitest").Mock<(...args: any[]) => any>;
|
|
53
|
+
cleanup: import("vitest").Mock<(...args: any[]) => any>;
|
|
54
|
+
getPage: import("vitest").Mock<(...args: any[]) => any>;
|
|
55
|
+
setActivePage: import("vitest").Mock<(...args: any[]) => any>;
|
|
56
|
+
getTrackedPages: import("vitest").Mock<(...args: any[]) => any>;
|
|
57
|
+
classifyPageRole: import("vitest").Mock<(...args: any[]) => any>;
|
|
58
|
+
getContext: import("vitest").Mock<(...args: any[]) => any>;
|
|
59
|
+
getExtensionState: import("vitest").Mock<(...args: any[]) => any>;
|
|
60
|
+
setRefMap: import("vitest").Mock<(...args: any[]) => any>;
|
|
61
|
+
getRefMap: import("vitest").Mock<(...args: any[]) => any>;
|
|
62
|
+
clearRefMap: import("vitest").Mock<(...args: any[]) => any>;
|
|
63
|
+
resolveA11yRef: import("vitest").Mock<(...args: any[]) => any>;
|
|
64
|
+
navigateToHome: import("vitest").Mock<(...args: any[]) => any>;
|
|
65
|
+
navigateToSettings: import("vitest").Mock<(...args: any[]) => any>;
|
|
66
|
+
navigateToUrl: import("vitest").Mock<(...args: any[]) => any>;
|
|
67
|
+
navigateToNotification: import("vitest").Mock<(...args: any[]) => any>;
|
|
68
|
+
waitForNotificationPage: import("vitest").Mock<(...args: any[]) => any>;
|
|
69
|
+
screenshot: import("vitest").Mock<(...args: any[]) => any>;
|
|
70
|
+
getBuildCapability: import("vitest").Mock<(...args: any[]) => any>;
|
|
71
|
+
getFixtureCapability: import("vitest").Mock<(...args: any[]) => any>;
|
|
72
|
+
getChainCapability: import("vitest").Mock<(...args: any[]) => any>;
|
|
73
|
+
getContractSeedingCapability: import("vitest").Mock<(...args: any[]) => any>;
|
|
74
|
+
getStateSnapshotCapability: import("vitest").Mock<(...args: any[]) => any>;
|
|
75
|
+
getEnvironmentMode: import("vitest").Mock<(...args: any[]) => any>;
|
|
76
|
+
setContext: import("vitest").Mock<(...args: any[]) => any>;
|
|
77
|
+
getContextInfo: import("vitest").Mock<(...args: any[]) => any>;
|
|
78
|
+
};
|
|
79
|
+
/**
|
|
80
|
+
* Create a fresh mock KnowledgeStore instance.
|
|
81
|
+
*
|
|
82
|
+
* Returns an in-memory mock with sensible defaults.
|
|
83
|
+
* Each call creates fresh vi.fn() mocks.
|
|
84
|
+
*
|
|
85
|
+
* @param options - Customize mock behavior
|
|
86
|
+
* @returns Fresh KnowledgeStore mock
|
|
87
|
+
*/
|
|
88
|
+
export declare function createMockKnowledgeStore(options?: MockKnowledgeStoreOptions): Partial<KnowledgeStore>;
|
|
89
|
+
//# sourceMappingURL=mock-factories.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-factories.d.cts","sourceRoot":"","sources":["../../../src/mcp-server/test-utils/mock-factories.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,qCAAoC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,+BAA8B;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,+BAA8B;AAC9E,OAAO,KAAK,EAAE,YAAY,EAAE,6BAA4B;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,iCAAgC;AAE/D;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,YAAY,CAAC,EAAE,mBAAmB,CAAC;IACnC,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,eAAe,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;CAClC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IACtC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAC1C,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;CACtC,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,GAAE,yBAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6FxC;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,GAAE,yBAA8B,GACtC,OAAO,CAAC,cAAc,CAAC,CAgBzB"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared mock factory utilities for unit testing.
|
|
3
|
+
*
|
|
4
|
+
* Provides factory functions that return fresh mock instances following MetaMask testing guidelines:
|
|
5
|
+
* - Each factory call returns NEW object instances (test isolation)
|
|
6
|
+
* - Each factory creates fresh vi.fn() mocks (never reused)
|
|
7
|
+
* - Factories accept options for customization
|
|
8
|
+
* - Sensible defaults so most tests need no options
|
|
9
|
+
*/
|
|
10
|
+
import type { ExtensionState } from "../../capabilities/types.mjs";
|
|
11
|
+
import type { KnowledgeStore } from "../knowledge-store.mjs";
|
|
12
|
+
import type { TrackedPage, SessionLaunchResult } from "../session-manager.mjs";
|
|
13
|
+
import type { SessionState } from "../types/session.mjs";
|
|
14
|
+
import type { SessionMetadata } from "../types/step-record.mjs";
|
|
15
|
+
/**
|
|
16
|
+
* Options for customizing mock session manager behavior
|
|
17
|
+
*/
|
|
18
|
+
export type MockSessionManagerOptions = {
|
|
19
|
+
hasActive?: boolean;
|
|
20
|
+
sessionId?: string;
|
|
21
|
+
sessionState?: SessionState;
|
|
22
|
+
sessionMetadata?: SessionMetadata;
|
|
23
|
+
launchResult?: SessionLaunchResult;
|
|
24
|
+
trackedPages?: TrackedPage[];
|
|
25
|
+
extensionState?: ExtensionState;
|
|
26
|
+
refMap?: Map<string, string>;
|
|
27
|
+
environmentMode?: 'e2e' | 'prod';
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Options for customizing mock knowledge store behavior
|
|
31
|
+
*/
|
|
32
|
+
export type MockKnowledgeStoreOptions = {
|
|
33
|
+
lastSteps?: Record<string, unknown>[];
|
|
34
|
+
searchResults?: Record<string, unknown>[];
|
|
35
|
+
sessionSummary?: Record<string, unknown>;
|
|
36
|
+
sessions?: Record<string, unknown>[];
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* Create a fresh mock ISessionManager instance.
|
|
40
|
+
*
|
|
41
|
+
* Each call returns a NEW object with fresh vi.fn() mocks.
|
|
42
|
+
* Follows the pattern from session-manager.test.ts:15-48.
|
|
43
|
+
*
|
|
44
|
+
* @param options - Customize mock behavior
|
|
45
|
+
* @returns Fresh ISessionManager mock
|
|
46
|
+
*/
|
|
47
|
+
export declare function createMockSessionManager(options?: MockSessionManagerOptions): {
|
|
48
|
+
hasActiveSession: import("vitest").Mock<(...args: any[]) => any>;
|
|
49
|
+
getSessionId: import("vitest").Mock<(...args: any[]) => any>;
|
|
50
|
+
getSessionState: import("vitest").Mock<(...args: any[]) => any>;
|
|
51
|
+
getSessionMetadata: import("vitest").Mock<(...args: any[]) => any>;
|
|
52
|
+
launch: import("vitest").Mock<(...args: any[]) => any>;
|
|
53
|
+
cleanup: import("vitest").Mock<(...args: any[]) => any>;
|
|
54
|
+
getPage: import("vitest").Mock<(...args: any[]) => any>;
|
|
55
|
+
setActivePage: import("vitest").Mock<(...args: any[]) => any>;
|
|
56
|
+
getTrackedPages: import("vitest").Mock<(...args: any[]) => any>;
|
|
57
|
+
classifyPageRole: import("vitest").Mock<(...args: any[]) => any>;
|
|
58
|
+
getContext: import("vitest").Mock<(...args: any[]) => any>;
|
|
59
|
+
getExtensionState: import("vitest").Mock<(...args: any[]) => any>;
|
|
60
|
+
setRefMap: import("vitest").Mock<(...args: any[]) => any>;
|
|
61
|
+
getRefMap: import("vitest").Mock<(...args: any[]) => any>;
|
|
62
|
+
clearRefMap: import("vitest").Mock<(...args: any[]) => any>;
|
|
63
|
+
resolveA11yRef: import("vitest").Mock<(...args: any[]) => any>;
|
|
64
|
+
navigateToHome: import("vitest").Mock<(...args: any[]) => any>;
|
|
65
|
+
navigateToSettings: import("vitest").Mock<(...args: any[]) => any>;
|
|
66
|
+
navigateToUrl: import("vitest").Mock<(...args: any[]) => any>;
|
|
67
|
+
navigateToNotification: import("vitest").Mock<(...args: any[]) => any>;
|
|
68
|
+
waitForNotificationPage: import("vitest").Mock<(...args: any[]) => any>;
|
|
69
|
+
screenshot: import("vitest").Mock<(...args: any[]) => any>;
|
|
70
|
+
getBuildCapability: import("vitest").Mock<(...args: any[]) => any>;
|
|
71
|
+
getFixtureCapability: import("vitest").Mock<(...args: any[]) => any>;
|
|
72
|
+
getChainCapability: import("vitest").Mock<(...args: any[]) => any>;
|
|
73
|
+
getContractSeedingCapability: import("vitest").Mock<(...args: any[]) => any>;
|
|
74
|
+
getStateSnapshotCapability: import("vitest").Mock<(...args: any[]) => any>;
|
|
75
|
+
getEnvironmentMode: import("vitest").Mock<(...args: any[]) => any>;
|
|
76
|
+
setContext: import("vitest").Mock<(...args: any[]) => any>;
|
|
77
|
+
getContextInfo: import("vitest").Mock<(...args: any[]) => any>;
|
|
78
|
+
};
|
|
79
|
+
/**
|
|
80
|
+
* Create a fresh mock KnowledgeStore instance.
|
|
81
|
+
*
|
|
82
|
+
* Returns an in-memory mock with sensible defaults.
|
|
83
|
+
* Each call creates fresh vi.fn() mocks.
|
|
84
|
+
*
|
|
85
|
+
* @param options - Customize mock behavior
|
|
86
|
+
* @returns Fresh KnowledgeStore mock
|
|
87
|
+
*/
|
|
88
|
+
export declare function createMockKnowledgeStore(options?: MockKnowledgeStoreOptions): Partial<KnowledgeStore>;
|
|
89
|
+
//# sourceMappingURL=mock-factories.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-factories.d.mts","sourceRoot":"","sources":["../../../src/mcp-server/test-utils/mock-factories.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,qCAAoC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,+BAA8B;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,+BAA8B;AAC9E,OAAO,KAAK,EAAE,YAAY,EAAE,6BAA4B;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,iCAAgC;AAE/D;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,YAAY,CAAC,EAAE,mBAAmB,CAAC;IACnC,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,eAAe,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;CAClC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IACtC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAC1C,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;CACtC,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,GAAE,yBAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6FxC;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,GAAE,yBAA8B,GACtC,OAAO,CAAC,cAAc,CAAC,CAgBzB"}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared mock factory utilities for unit testing.
|
|
3
|
+
*
|
|
4
|
+
* Provides factory functions that return fresh mock instances following MetaMask testing guidelines:
|
|
5
|
+
* - Each factory call returns NEW object instances (test isolation)
|
|
6
|
+
* - Each factory creates fresh vi.fn() mocks (never reused)
|
|
7
|
+
* - Factories accept options for customization
|
|
8
|
+
* - Sensible defaults so most tests need no options
|
|
9
|
+
*/
|
|
10
|
+
import { vi } from "vitest";
|
|
11
|
+
/**
|
|
12
|
+
* Create a fresh mock ISessionManager instance.
|
|
13
|
+
*
|
|
14
|
+
* Each call returns a NEW object with fresh vi.fn() mocks.
|
|
15
|
+
* Follows the pattern from session-manager.test.ts:15-48.
|
|
16
|
+
*
|
|
17
|
+
* @param options - Customize mock behavior
|
|
18
|
+
* @returns Fresh ISessionManager mock
|
|
19
|
+
*/
|
|
20
|
+
export function createMockSessionManager(options = {}) {
|
|
21
|
+
return {
|
|
22
|
+
// Session Lifecycle
|
|
23
|
+
hasActiveSession: vi.fn().mockReturnValue(options.hasActive ?? false),
|
|
24
|
+
getSessionId: vi.fn().mockReturnValue(options.sessionId ?? undefined),
|
|
25
|
+
getSessionState: vi.fn().mockReturnValue(options.sessionState ?? undefined),
|
|
26
|
+
getSessionMetadata: vi
|
|
27
|
+
.fn()
|
|
28
|
+
.mockReturnValue(options.sessionMetadata ?? undefined),
|
|
29
|
+
launch: vi.fn().mockResolvedValue(options.launchResult ?? {
|
|
30
|
+
sessionId: 'test-session-123',
|
|
31
|
+
extensionId: 'ext-123',
|
|
32
|
+
state: {
|
|
33
|
+
isLoaded: true,
|
|
34
|
+
currentUrl: 'chrome-extension://ext-123/home.html',
|
|
35
|
+
extensionId: 'ext-123',
|
|
36
|
+
isUnlocked: false,
|
|
37
|
+
currentScreen: 'home',
|
|
38
|
+
accountAddress: null,
|
|
39
|
+
networkName: null,
|
|
40
|
+
chainId: null,
|
|
41
|
+
balance: null,
|
|
42
|
+
},
|
|
43
|
+
}),
|
|
44
|
+
cleanup: vi.fn().mockResolvedValue(true),
|
|
45
|
+
// Page Management
|
|
46
|
+
getPage: vi.fn(),
|
|
47
|
+
setActivePage: vi.fn(),
|
|
48
|
+
getTrackedPages: vi.fn().mockReturnValue(options.trackedPages ?? []),
|
|
49
|
+
classifyPageRole: vi.fn().mockReturnValue('extension'),
|
|
50
|
+
getContext: vi.fn(),
|
|
51
|
+
// Extension State
|
|
52
|
+
getExtensionState: vi.fn().mockResolvedValue(options.extensionState ?? {
|
|
53
|
+
isLoaded: true,
|
|
54
|
+
currentUrl: 'chrome-extension://ext-123/home.html',
|
|
55
|
+
extensionId: 'ext-123',
|
|
56
|
+
isUnlocked: false,
|
|
57
|
+
currentScreen: 'home',
|
|
58
|
+
accountAddress: null,
|
|
59
|
+
networkName: null,
|
|
60
|
+
chainId: null,
|
|
61
|
+
balance: null,
|
|
62
|
+
}),
|
|
63
|
+
// A11y Reference Map
|
|
64
|
+
setRefMap: vi.fn(),
|
|
65
|
+
getRefMap: vi.fn().mockReturnValue(options.refMap ?? new Map()),
|
|
66
|
+
clearRefMap: vi.fn(),
|
|
67
|
+
resolveA11yRef: vi.fn(),
|
|
68
|
+
// Navigation
|
|
69
|
+
navigateToHome: vi.fn().mockResolvedValue(undefined),
|
|
70
|
+
navigateToSettings: vi.fn().mockResolvedValue(undefined),
|
|
71
|
+
navigateToUrl: vi.fn(),
|
|
72
|
+
navigateToNotification: vi.fn(),
|
|
73
|
+
waitForNotificationPage: vi.fn(),
|
|
74
|
+
// Screenshots
|
|
75
|
+
screenshot: vi.fn().mockResolvedValue({
|
|
76
|
+
path: '/path/to/screenshot.png',
|
|
77
|
+
width: 1280,
|
|
78
|
+
height: 720,
|
|
79
|
+
}),
|
|
80
|
+
// Capabilities
|
|
81
|
+
getBuildCapability: vi.fn().mockReturnValue(undefined),
|
|
82
|
+
getFixtureCapability: vi.fn().mockReturnValue(undefined),
|
|
83
|
+
getChainCapability: vi.fn().mockReturnValue(undefined),
|
|
84
|
+
getContractSeedingCapability: vi.fn().mockReturnValue(undefined),
|
|
85
|
+
getStateSnapshotCapability: vi.fn().mockReturnValue(undefined),
|
|
86
|
+
// Environment
|
|
87
|
+
getEnvironmentMode: vi
|
|
88
|
+
.fn()
|
|
89
|
+
.mockReturnValue(options.environmentMode ?? 'e2e'),
|
|
90
|
+
// Context
|
|
91
|
+
setContext: vi.fn().mockReturnValue(undefined),
|
|
92
|
+
getContextInfo: vi.fn().mockReturnValue({
|
|
93
|
+
currentContext: options.environmentMode ?? 'e2e',
|
|
94
|
+
hasActiveSession: options.hasActive ?? false,
|
|
95
|
+
sessionId: options.sessionId ?? null,
|
|
96
|
+
capabilities: { available: [] },
|
|
97
|
+
canSwitchContext: !(options.hasActive ?? false),
|
|
98
|
+
}),
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Create a fresh mock KnowledgeStore instance.
|
|
103
|
+
*
|
|
104
|
+
* Returns an in-memory mock with sensible defaults.
|
|
105
|
+
* Each call creates fresh vi.fn() mocks.
|
|
106
|
+
*
|
|
107
|
+
* @param options - Customize mock behavior
|
|
108
|
+
* @returns Fresh KnowledgeStore mock
|
|
109
|
+
*/
|
|
110
|
+
export function createMockKnowledgeStore(options = {}) {
|
|
111
|
+
return {
|
|
112
|
+
recordStep: vi.fn().mockResolvedValue(undefined),
|
|
113
|
+
getLastSteps: vi.fn().mockResolvedValue(options.lastSteps ?? []),
|
|
114
|
+
searchSteps: vi.fn().mockResolvedValue(options.searchResults ?? []),
|
|
115
|
+
summarizeSession: vi.fn().mockResolvedValue(options.sessionSummary ?? {
|
|
116
|
+
sessionId: 'test-session-123',
|
|
117
|
+
stepCount: 0,
|
|
118
|
+
recipe: [],
|
|
119
|
+
}),
|
|
120
|
+
listSessions: vi.fn().mockResolvedValue(options.sessions ?? []),
|
|
121
|
+
generatePriorKnowledge: vi.fn().mockResolvedValue(undefined),
|
|
122
|
+
writeSessionMetadata: vi.fn().mockResolvedValue('test-session-123'),
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
//# sourceMappingURL=mock-factories.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-factories.mjs","sourceRoot":"","sources":["../../../src/mcp-server/test-utils/mock-factories.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Shared mock factory utilities for unit testing.\n *\n * Provides factory functions that return fresh mock instances following MetaMask testing guidelines:\n * - Each factory call returns NEW object instances (test isolation)\n * - Each factory creates fresh vi.fn() mocks (never reused)\n * - Factories accept options for customization\n * - Sensible defaults so most tests need no options\n */\n\nimport { vi } from 'vitest';\n\nimport type { ExtensionState } from '../../capabilities/types.js';\nimport type { KnowledgeStore } from '../knowledge-store.js';\nimport type { TrackedPage, SessionLaunchResult } from '../session-manager.js';\nimport type { SessionState } from '../types/session.js';\nimport type { SessionMetadata } from '../types/step-record.js';\n\n/**\n * Options for customizing mock session manager behavior\n */\nexport type MockSessionManagerOptions = {\n hasActive?: boolean;\n sessionId?: string;\n sessionState?: SessionState;\n sessionMetadata?: SessionMetadata;\n launchResult?: SessionLaunchResult;\n trackedPages?: TrackedPage[];\n extensionState?: ExtensionState;\n refMap?: Map<string, string>;\n environmentMode?: 'e2e' | 'prod';\n};\n\n/**\n * Options for customizing mock knowledge store behavior\n */\nexport type MockKnowledgeStoreOptions = {\n lastSteps?: Record<string, unknown>[];\n searchResults?: Record<string, unknown>[];\n sessionSummary?: Record<string, unknown>;\n sessions?: Record<string, unknown>[];\n};\n\n/**\n * Create a fresh mock ISessionManager instance.\n *\n * Each call returns a NEW object with fresh vi.fn() mocks.\n * Follows the pattern from session-manager.test.ts:15-48.\n *\n * @param options - Customize mock behavior\n * @returns Fresh ISessionManager mock\n */\nexport function createMockSessionManager(\n options: MockSessionManagerOptions = {},\n) {\n return {\n // Session Lifecycle\n hasActiveSession: vi.fn().mockReturnValue(options.hasActive ?? false),\n getSessionId: vi.fn().mockReturnValue(options.sessionId ?? undefined),\n getSessionState: vi.fn().mockReturnValue(options.sessionState ?? undefined),\n getSessionMetadata: vi\n .fn()\n .mockReturnValue(options.sessionMetadata ?? undefined),\n launch: vi.fn().mockResolvedValue(\n options.launchResult ?? {\n sessionId: 'test-session-123',\n extensionId: 'ext-123',\n state: {\n isLoaded: true,\n currentUrl: 'chrome-extension://ext-123/home.html',\n extensionId: 'ext-123',\n isUnlocked: false,\n currentScreen: 'home',\n accountAddress: null,\n networkName: null,\n chainId: null,\n balance: null,\n },\n },\n ),\n cleanup: vi.fn().mockResolvedValue(true),\n\n // Page Management\n getPage: vi.fn(),\n setActivePage: vi.fn(),\n getTrackedPages: vi.fn().mockReturnValue(options.trackedPages ?? []),\n classifyPageRole: vi.fn().mockReturnValue('extension'),\n getContext: vi.fn(),\n\n // Extension State\n getExtensionState: vi.fn().mockResolvedValue(\n options.extensionState ?? {\n isLoaded: true,\n currentUrl: 'chrome-extension://ext-123/home.html',\n extensionId: 'ext-123',\n isUnlocked: false,\n currentScreen: 'home',\n accountAddress: null,\n networkName: null,\n chainId: null,\n balance: null,\n },\n ),\n\n // A11y Reference Map\n setRefMap: vi.fn(),\n getRefMap: vi.fn().mockReturnValue(options.refMap ?? new Map()),\n clearRefMap: vi.fn(),\n resolveA11yRef: vi.fn(),\n\n // Navigation\n navigateToHome: vi.fn().mockResolvedValue(undefined),\n navigateToSettings: vi.fn().mockResolvedValue(undefined),\n navigateToUrl: vi.fn(),\n navigateToNotification: vi.fn(),\n waitForNotificationPage: vi.fn(),\n\n // Screenshots\n screenshot: vi.fn().mockResolvedValue({\n path: '/path/to/screenshot.png',\n width: 1280,\n height: 720,\n }),\n\n // Capabilities\n getBuildCapability: vi.fn().mockReturnValue(undefined),\n getFixtureCapability: vi.fn().mockReturnValue(undefined),\n getChainCapability: vi.fn().mockReturnValue(undefined),\n getContractSeedingCapability: vi.fn().mockReturnValue(undefined),\n getStateSnapshotCapability: vi.fn().mockReturnValue(undefined),\n\n // Environment\n getEnvironmentMode: vi\n .fn()\n .mockReturnValue(options.environmentMode ?? 'e2e'),\n\n // Context\n setContext: vi.fn().mockReturnValue(undefined),\n getContextInfo: vi.fn().mockReturnValue({\n currentContext: options.environmentMode ?? 'e2e',\n hasActiveSession: options.hasActive ?? false,\n sessionId: options.sessionId ?? null,\n capabilities: { available: [] },\n canSwitchContext: !(options.hasActive ?? false),\n }),\n };\n}\n\n/**\n * Create a fresh mock KnowledgeStore instance.\n *\n * Returns an in-memory mock with sensible defaults.\n * Each call creates fresh vi.fn() mocks.\n *\n * @param options - Customize mock behavior\n * @returns Fresh KnowledgeStore mock\n */\nexport function createMockKnowledgeStore(\n options: MockKnowledgeStoreOptions = {},\n): Partial<KnowledgeStore> {\n return {\n recordStep: vi.fn().mockResolvedValue(undefined),\n getLastSteps: vi.fn().mockResolvedValue(options.lastSteps ?? []),\n searchSteps: vi.fn().mockResolvedValue(options.searchResults ?? []),\n summarizeSession: vi.fn().mockResolvedValue(\n options.sessionSummary ?? {\n sessionId: 'test-session-123',\n stepCount: 0,\n recipe: [],\n },\n ),\n listSessions: vi.fn().mockResolvedValue(options.sessions ?? []),\n generatePriorKnowledge: vi.fn().mockResolvedValue(undefined),\n writeSessionMetadata: vi.fn().mockResolvedValue('test-session-123'),\n };\n}\n"]}
|
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Playwright mock factories for unit testing.
|
|
4
|
+
*
|
|
5
|
+
* Provides factory functions that return fresh mock Playwright objects:
|
|
6
|
+
* - createMockPage() - Mock Playwright Page with all used methods
|
|
7
|
+
* - createMockLocator() - Mock Playwright Locator with chainable methods
|
|
8
|
+
* - createMockBrowserContext() - Mock BrowserContext
|
|
9
|
+
*
|
|
10
|
+
* Each factory call returns NEW instances with fresh vi.fn() mocks.
|
|
11
|
+
*/
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
exports.createMockLocator = createMockLocator;
|
|
14
|
+
exports.createMockPage = createMockPage;
|
|
15
|
+
exports.createMockBrowserContext = createMockBrowserContext;
|
|
16
|
+
const vitest_1 = require("vitest");
|
|
17
|
+
/**
|
|
18
|
+
* Create a fresh mock Playwright Locator instance.
|
|
19
|
+
*
|
|
20
|
+
* Includes all methods used in tool handlers:
|
|
21
|
+
* - click() - async mock
|
|
22
|
+
* - fill(text) - async mock
|
|
23
|
+
* - isVisible() - async mock
|
|
24
|
+
* - getAttribute(name) - async mock
|
|
25
|
+
* - textContent() - async mock
|
|
26
|
+
* - all() - async mock
|
|
27
|
+
* - first() - returns mock locator
|
|
28
|
+
* - nth(index) - returns mock locator
|
|
29
|
+
*
|
|
30
|
+
* Methods are chainable where appropriate.
|
|
31
|
+
*
|
|
32
|
+
* @param options - Customize mock behavior
|
|
33
|
+
* @returns Fresh Locator mock
|
|
34
|
+
*/
|
|
35
|
+
function createMockLocator(options = {}) {
|
|
36
|
+
const mockLocator = {
|
|
37
|
+
click: vitest_1.vi.fn().mockResolvedValue(options.clickMock?.() ?? undefined),
|
|
38
|
+
fill: vitest_1.vi.fn().mockResolvedValue(options.fillMock?.('') ?? undefined),
|
|
39
|
+
isVisible: vitest_1.vi.fn().mockResolvedValue(options.isVisibleMock?.() ?? true),
|
|
40
|
+
getAttribute: vitest_1.vi
|
|
41
|
+
.fn()
|
|
42
|
+
.mockResolvedValue(options.getAttributeMock?.('') ?? null),
|
|
43
|
+
textContent: vitest_1.vi.fn().mockResolvedValue(options.textContentMock?.() ?? null),
|
|
44
|
+
all: vitest_1.vi.fn().mockResolvedValue(options.allMock?.() ?? []),
|
|
45
|
+
clear: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
46
|
+
check: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
47
|
+
uncheck: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
48
|
+
hover: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
49
|
+
focus: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
50
|
+
blur: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
51
|
+
type: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
52
|
+
press: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
53
|
+
selectOption: vitest_1.vi.fn().mockResolvedValue([]),
|
|
54
|
+
selectText: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
55
|
+
setInputFiles: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
56
|
+
setChecked: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
57
|
+
dragTo: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
58
|
+
screenshot: vitest_1.vi.fn().mockResolvedValue(Buffer.from('')),
|
|
59
|
+
scrollIntoViewIfNeeded: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
60
|
+
waitFor: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
61
|
+
evaluate: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
62
|
+
evaluateAll: vitest_1.vi.fn().mockResolvedValue([]),
|
|
63
|
+
evaluateHandle: vitest_1.vi.fn().mockResolvedValue({}),
|
|
64
|
+
count: vitest_1.vi.fn().mockResolvedValue(1),
|
|
65
|
+
boundingBox: vitest_1.vi.fn().mockResolvedValue(null),
|
|
66
|
+
elementHandle: vitest_1.vi.fn().mockResolvedValue(null),
|
|
67
|
+
elementHandles: vitest_1.vi.fn().mockResolvedValue([]),
|
|
68
|
+
isChecked: vitest_1.vi.fn().mockResolvedValue(false),
|
|
69
|
+
isDisabled: vitest_1.vi.fn().mockResolvedValue(false),
|
|
70
|
+
isEditable: vitest_1.vi.fn().mockResolvedValue(true),
|
|
71
|
+
isEnabled: vitest_1.vi.fn().mockResolvedValue(true),
|
|
72
|
+
innerHTML: vitest_1.vi.fn().mockResolvedValue(''),
|
|
73
|
+
inputValue: vitest_1.vi.fn().mockResolvedValue(''),
|
|
74
|
+
page: vitest_1.vi.fn(),
|
|
75
|
+
first: vitest_1.vi.fn().mockReturnValue(options.firstMock?.() ?? {}),
|
|
76
|
+
nth: vitest_1.vi.fn().mockReturnValue(options.nthMock?.(0) ?? {}),
|
|
77
|
+
};
|
|
78
|
+
return mockLocator;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Create a fresh mock Playwright Page instance.
|
|
82
|
+
*
|
|
83
|
+
* Includes all methods used in tool handlers:
|
|
84
|
+
* - locator(selector) - returns mock locator
|
|
85
|
+
* - waitForLoadState() - async mock
|
|
86
|
+
* - url() - returns string
|
|
87
|
+
* - context() - returns mock context
|
|
88
|
+
* - screenshot(options) - async mock
|
|
89
|
+
*
|
|
90
|
+
* @param options - Customize mock behavior
|
|
91
|
+
* @returns Fresh Page mock
|
|
92
|
+
*/
|
|
93
|
+
function createMockPage(options = {}) {
|
|
94
|
+
const mockLocator = options.locatorMock ?? createMockLocator();
|
|
95
|
+
const page = {
|
|
96
|
+
locator: vitest_1.vi.fn().mockReturnValue(mockLocator),
|
|
97
|
+
waitForLoadState: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
98
|
+
url: vitest_1.vi.fn().mockReturnValue(options.url ?? 'about:blank'),
|
|
99
|
+
screenshot: vitest_1.vi.fn().mockResolvedValue({
|
|
100
|
+
buffer: Buffer.from(''),
|
|
101
|
+
path: '/path/to/screenshot.png',
|
|
102
|
+
}),
|
|
103
|
+
goto: vitest_1.vi.fn().mockResolvedValue(null),
|
|
104
|
+
close: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
105
|
+
isClosed: vitest_1.vi.fn().mockReturnValue(false),
|
|
106
|
+
evaluate: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
107
|
+
evaluateHandle: vitest_1.vi.fn().mockResolvedValue({}),
|
|
108
|
+
getByTestId: vitest_1.vi.fn().mockReturnValue(mockLocator),
|
|
109
|
+
getByRole: vitest_1.vi.fn().mockReturnValue(mockLocator),
|
|
110
|
+
getByLabel: vitest_1.vi.fn().mockReturnValue(mockLocator),
|
|
111
|
+
getByPlaceholder: vitest_1.vi.fn().mockReturnValue(mockLocator),
|
|
112
|
+
getByText: vitest_1.vi.fn().mockReturnValue(mockLocator),
|
|
113
|
+
getByAltText: vitest_1.vi.fn().mockReturnValue(mockLocator),
|
|
114
|
+
getByTitle: vitest_1.vi.fn().mockReturnValue(mockLocator),
|
|
115
|
+
frameLocator: vitest_1.vi.fn().mockReturnValue(mockLocator),
|
|
116
|
+
waitForFunction: vitest_1.vi.fn().mockResolvedValue(null),
|
|
117
|
+
waitForNavigation: vitest_1.vi.fn().mockResolvedValue(null),
|
|
118
|
+
waitForURL: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
119
|
+
waitForSelector: vitest_1.vi.fn().mockResolvedValue(mockLocator),
|
|
120
|
+
title: vitest_1.vi.fn().mockResolvedValue(''),
|
|
121
|
+
content: vitest_1.vi.fn().mockResolvedValue(''),
|
|
122
|
+
reload: vitest_1.vi.fn().mockResolvedValue(null),
|
|
123
|
+
goBack: vitest_1.vi.fn().mockResolvedValue(null),
|
|
124
|
+
goForward: vitest_1.vi.fn().mockResolvedValue(null),
|
|
125
|
+
bringToFront: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
126
|
+
focus: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
127
|
+
viewportSize: vitest_1.vi.fn().mockReturnValue({ width: 1280, height: 720 }),
|
|
128
|
+
setViewportSize: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
129
|
+
emulateMedia: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
130
|
+
setExtraHTTPHeaders: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
131
|
+
addInitScript: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
132
|
+
exposeFunction: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
133
|
+
exposeBinding: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
134
|
+
removeExposedBindings: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
135
|
+
pause: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
136
|
+
pdf: vitest_1.vi.fn().mockResolvedValue(Buffer.from('')),
|
|
137
|
+
accessibility: {
|
|
138
|
+
snapshot: vitest_1.vi.fn().mockResolvedValue(null),
|
|
139
|
+
},
|
|
140
|
+
keyboard: {
|
|
141
|
+
press: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
142
|
+
type: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
143
|
+
down: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
144
|
+
up: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
145
|
+
insertText: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
146
|
+
},
|
|
147
|
+
mouse: {
|
|
148
|
+
move: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
149
|
+
click: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
150
|
+
dblclick: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
151
|
+
down: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
152
|
+
up: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
153
|
+
wheel: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
154
|
+
},
|
|
155
|
+
touchscreen: {
|
|
156
|
+
tap: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
157
|
+
},
|
|
158
|
+
context: vitest_1.vi.fn(),
|
|
159
|
+
page: vitest_1.vi.fn(),
|
|
160
|
+
};
|
|
161
|
+
page.context.mockReturnValue({
|
|
162
|
+
pages: vitest_1.vi.fn().mockReturnValue([]),
|
|
163
|
+
newPage: vitest_1.vi.fn().mockResolvedValue({}),
|
|
164
|
+
close: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
165
|
+
});
|
|
166
|
+
page.page.mockReturnValue(page);
|
|
167
|
+
return page;
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Create a fresh mock Playwright BrowserContext instance.
|
|
171
|
+
*
|
|
172
|
+
* @param options - Customize mock behavior
|
|
173
|
+
* @returns Fresh BrowserContext mock
|
|
174
|
+
*/
|
|
175
|
+
function createMockBrowserContext(options = {}) {
|
|
176
|
+
const context = {
|
|
177
|
+
pages: vitest_1.vi.fn().mockReturnValue(options.pages ?? []),
|
|
178
|
+
newPage: vitest_1.vi.fn(),
|
|
179
|
+
close: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
180
|
+
browser: vitest_1.vi.fn().mockReturnValue(null),
|
|
181
|
+
addCookies: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
182
|
+
addInitScript: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
183
|
+
clearCookies: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
184
|
+
cookies: vitest_1.vi.fn().mockResolvedValue([]),
|
|
185
|
+
exposeBinding: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
186
|
+
exposeFunction: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
187
|
+
grantPermissions: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
188
|
+
revokePermissions: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
189
|
+
setExtraHTTPHeaders: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
190
|
+
setGeolocation: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
191
|
+
setOffline: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
192
|
+
waitForEvent: vitest_1.vi.fn().mockResolvedValue(null),
|
|
193
|
+
tracing: {
|
|
194
|
+
start: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
195
|
+
stop: vitest_1.vi.fn().mockResolvedValue(Buffer.from('')),
|
|
196
|
+
},
|
|
197
|
+
};
|
|
198
|
+
context.newPage.mockResolvedValue({
|
|
199
|
+
locator: vitest_1.vi.fn().mockReturnValue({}),
|
|
200
|
+
url: vitest_1.vi.fn().mockReturnValue('about:blank'),
|
|
201
|
+
close: vitest_1.vi.fn().mockResolvedValue(undefined),
|
|
202
|
+
});
|
|
203
|
+
return context;
|
|
204
|
+
}
|
|
205
|
+
//# sourceMappingURL=mock-playwright.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-playwright.cjs","sourceRoot":"","sources":["../../../src/mcp-server/test-utils/mock-playwright.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Playwright mock factories for unit testing.\n *\n * Provides factory functions that return fresh mock Playwright objects:\n * - createMockPage() - Mock Playwright Page with all used methods\n * - createMockLocator() - Mock Playwright Locator with chainable methods\n * - createMockBrowserContext() - Mock BrowserContext\n *\n * Each factory call returns NEW instances with fresh vi.fn() mocks.\n */\n\nimport type { Page, Locator, BrowserContext } from '@playwright/test';\nimport { vi } from 'vitest';\n\nexport type MockPageOptions = {\n url?: string;\n locatorMock?: Locator;\n};\n\nexport type MockLocatorOptions = {\n clickMock?: () => Promise<void>;\n fillMock?: (text: string) => Promise<void>;\n isVisibleMock?: () => Promise<boolean>;\n getAttributeMock?: (name: string) => Promise<string | null>;\n textContentMock?: () => Promise<string | null>;\n allMock?: () => Promise<Locator[]>;\n firstMock?: () => Locator;\n nthMock?: (index: number) => Locator;\n};\n\nexport type MockBrowserContextOptions = {\n pages?: Page[];\n};\n\n/**\n * Create a fresh mock Playwright Locator instance.\n *\n * Includes all methods used in tool handlers:\n * - click() - async mock\n * - fill(text) - async mock\n * - isVisible() - async mock\n * - getAttribute(name) - async mock\n * - textContent() - async mock\n * - all() - async mock\n * - first() - returns mock locator\n * - nth(index) - returns mock locator\n *\n * Methods are chainable where appropriate.\n *\n * @param options - Customize mock behavior\n * @returns Fresh Locator mock\n */\nexport function createMockLocator(options: MockLocatorOptions = {}): Locator {\n const mockLocator: any = {\n click: vi.fn().mockResolvedValue(options.clickMock?.() ?? undefined),\n fill: vi.fn().mockResolvedValue(options.fillMock?.('') ?? undefined),\n isVisible: vi.fn().mockResolvedValue(options.isVisibleMock?.() ?? true),\n getAttribute: vi\n .fn()\n .mockResolvedValue(options.getAttributeMock?.('') ?? null),\n textContent: vi.fn().mockResolvedValue(options.textContentMock?.() ?? null),\n all: vi.fn().mockResolvedValue(options.allMock?.() ?? []),\n clear: vi.fn().mockResolvedValue(undefined),\n check: vi.fn().mockResolvedValue(undefined),\n uncheck: vi.fn().mockResolvedValue(undefined),\n hover: vi.fn().mockResolvedValue(undefined),\n focus: vi.fn().mockResolvedValue(undefined),\n blur: vi.fn().mockResolvedValue(undefined),\n type: vi.fn().mockResolvedValue(undefined),\n press: vi.fn().mockResolvedValue(undefined),\n selectOption: vi.fn().mockResolvedValue([]),\n selectText: vi.fn().mockResolvedValue(undefined),\n setInputFiles: vi.fn().mockResolvedValue(undefined),\n setChecked: vi.fn().mockResolvedValue(undefined),\n dragTo: vi.fn().mockResolvedValue(undefined),\n screenshot: vi.fn().mockResolvedValue(Buffer.from('')),\n scrollIntoViewIfNeeded: vi.fn().mockResolvedValue(undefined),\n waitFor: vi.fn().mockResolvedValue(undefined),\n evaluate: vi.fn().mockResolvedValue(undefined),\n evaluateAll: vi.fn().mockResolvedValue([]),\n evaluateHandle: vi.fn().mockResolvedValue({}),\n count: vi.fn().mockResolvedValue(1),\n boundingBox: vi.fn().mockResolvedValue(null),\n elementHandle: vi.fn().mockResolvedValue(null),\n elementHandles: vi.fn().mockResolvedValue([]),\n isChecked: vi.fn().mockResolvedValue(false),\n isDisabled: vi.fn().mockResolvedValue(false),\n isEditable: vi.fn().mockResolvedValue(true),\n isEnabled: vi.fn().mockResolvedValue(true),\n innerHTML: vi.fn().mockResolvedValue(''),\n inputValue: vi.fn().mockResolvedValue(''),\n page: vi.fn(),\n first: vi.fn().mockReturnValue(options.firstMock?.() ?? {}),\n nth: vi.fn().mockReturnValue(options.nthMock?.(0) ?? {}),\n };\n\n return mockLocator as Locator;\n}\n\n/**\n * Create a fresh mock Playwright Page instance.\n *\n * Includes all methods used in tool handlers:\n * - locator(selector) - returns mock locator\n * - waitForLoadState() - async mock\n * - url() - returns string\n * - context() - returns mock context\n * - screenshot(options) - async mock\n *\n * @param options - Customize mock behavior\n * @returns Fresh Page mock\n */\nexport function createMockPage(options: MockPageOptions = {}): Page {\n const mockLocator = options.locatorMock ?? createMockLocator();\n\n const page: any = {\n locator: vi.fn().mockReturnValue(mockLocator),\n waitForLoadState: vi.fn().mockResolvedValue(undefined),\n url: vi.fn().mockReturnValue(options.url ?? 'about:blank'),\n screenshot: vi.fn().mockResolvedValue({\n buffer: Buffer.from(''),\n path: '/path/to/screenshot.png',\n }),\n goto: vi.fn().mockResolvedValue(null),\n close: vi.fn().mockResolvedValue(undefined),\n isClosed: vi.fn().mockReturnValue(false),\n evaluate: vi.fn().mockResolvedValue(undefined),\n evaluateHandle: vi.fn().mockResolvedValue({}),\n getByTestId: vi.fn().mockReturnValue(mockLocator),\n getByRole: vi.fn().mockReturnValue(mockLocator),\n getByLabel: vi.fn().mockReturnValue(mockLocator),\n getByPlaceholder: vi.fn().mockReturnValue(mockLocator),\n getByText: vi.fn().mockReturnValue(mockLocator),\n getByAltText: vi.fn().mockReturnValue(mockLocator),\n getByTitle: vi.fn().mockReturnValue(mockLocator),\n frameLocator: vi.fn().mockReturnValue(mockLocator),\n waitForFunction: vi.fn().mockResolvedValue(null),\n waitForNavigation: vi.fn().mockResolvedValue(null),\n waitForURL: vi.fn().mockResolvedValue(undefined),\n waitForSelector: vi.fn().mockResolvedValue(mockLocator),\n title: vi.fn().mockResolvedValue(''),\n content: vi.fn().mockResolvedValue(''),\n reload: vi.fn().mockResolvedValue(null),\n goBack: vi.fn().mockResolvedValue(null),\n goForward: vi.fn().mockResolvedValue(null),\n bringToFront: vi.fn().mockResolvedValue(undefined),\n focus: vi.fn().mockResolvedValue(undefined),\n viewportSize: vi.fn().mockReturnValue({ width: 1280, height: 720 }),\n setViewportSize: vi.fn().mockResolvedValue(undefined),\n emulateMedia: vi.fn().mockResolvedValue(undefined),\n setExtraHTTPHeaders: vi.fn().mockResolvedValue(undefined),\n addInitScript: vi.fn().mockResolvedValue(undefined),\n exposeFunction: vi.fn().mockResolvedValue(undefined),\n exposeBinding: vi.fn().mockResolvedValue(undefined),\n removeExposedBindings: vi.fn().mockResolvedValue(undefined),\n pause: vi.fn().mockResolvedValue(undefined),\n pdf: vi.fn().mockResolvedValue(Buffer.from('')),\n accessibility: {\n snapshot: vi.fn().mockResolvedValue(null),\n },\n keyboard: {\n press: vi.fn().mockResolvedValue(undefined),\n type: vi.fn().mockResolvedValue(undefined),\n down: vi.fn().mockResolvedValue(undefined),\n up: vi.fn().mockResolvedValue(undefined),\n insertText: vi.fn().mockResolvedValue(undefined),\n },\n mouse: {\n move: vi.fn().mockResolvedValue(undefined),\n click: vi.fn().mockResolvedValue(undefined),\n dblclick: vi.fn().mockResolvedValue(undefined),\n down: vi.fn().mockResolvedValue(undefined),\n up: vi.fn().mockResolvedValue(undefined),\n wheel: vi.fn().mockResolvedValue(undefined),\n },\n touchscreen: {\n tap: vi.fn().mockResolvedValue(undefined),\n },\n context: vi.fn(),\n page: vi.fn(),\n };\n\n page.context.mockReturnValue({\n pages: vi.fn().mockReturnValue([]),\n newPage: vi.fn().mockResolvedValue({}),\n close: vi.fn().mockResolvedValue(undefined),\n });\n page.page.mockReturnValue(page);\n\n return page as Page;\n}\n\n/**\n * Create a fresh mock Playwright BrowserContext instance.\n *\n * @param options - Customize mock behavior\n * @returns Fresh BrowserContext mock\n */\nexport function createMockBrowserContext(\n options: MockBrowserContextOptions = {},\n): Partial<BrowserContext> {\n const context: any = {\n pages: vi.fn().mockReturnValue(options.pages ?? []),\n newPage: vi.fn(),\n close: vi.fn().mockResolvedValue(undefined),\n browser: vi.fn().mockReturnValue(null),\n addCookies: vi.fn().mockResolvedValue(undefined),\n addInitScript: vi.fn().mockResolvedValue(undefined),\n clearCookies: vi.fn().mockResolvedValue(undefined),\n cookies: vi.fn().mockResolvedValue([]),\n exposeBinding: vi.fn().mockResolvedValue(undefined),\n exposeFunction: vi.fn().mockResolvedValue(undefined),\n grantPermissions: vi.fn().mockResolvedValue(undefined),\n revokePermissions: vi.fn().mockResolvedValue(undefined),\n setExtraHTTPHeaders: vi.fn().mockResolvedValue(undefined),\n setGeolocation: vi.fn().mockResolvedValue(undefined),\n setOffline: vi.fn().mockResolvedValue(undefined),\n waitForEvent: vi.fn().mockResolvedValue(null),\n tracing: {\n start: vi.fn().mockResolvedValue(undefined),\n stop: vi.fn().mockResolvedValue(Buffer.from('')),\n },\n };\n\n context.newPage.mockResolvedValue({\n locator: vi.fn().mockReturnValue({}),\n url: vi.fn().mockReturnValue('about:blank'),\n close: vi.fn().mockResolvedValue(undefined),\n });\n\n return context as Partial<BrowserContext>;\n}\n"]}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Playwright mock factories for unit testing.
|
|
3
|
+
*
|
|
4
|
+
* Provides factory functions that return fresh mock Playwright objects:
|
|
5
|
+
* - createMockPage() - Mock Playwright Page with all used methods
|
|
6
|
+
* - createMockLocator() - Mock Playwright Locator with chainable methods
|
|
7
|
+
* - createMockBrowserContext() - Mock BrowserContext
|
|
8
|
+
*
|
|
9
|
+
* Each factory call returns NEW instances with fresh vi.fn() mocks.
|
|
10
|
+
*/
|
|
11
|
+
import type { Page, Locator, BrowserContext } from "@playwright/test";
|
|
12
|
+
export type MockPageOptions = {
|
|
13
|
+
url?: string;
|
|
14
|
+
locatorMock?: Locator;
|
|
15
|
+
};
|
|
16
|
+
export type MockLocatorOptions = {
|
|
17
|
+
clickMock?: () => Promise<void>;
|
|
18
|
+
fillMock?: (text: string) => Promise<void>;
|
|
19
|
+
isVisibleMock?: () => Promise<boolean>;
|
|
20
|
+
getAttributeMock?: (name: string) => Promise<string | null>;
|
|
21
|
+
textContentMock?: () => Promise<string | null>;
|
|
22
|
+
allMock?: () => Promise<Locator[]>;
|
|
23
|
+
firstMock?: () => Locator;
|
|
24
|
+
nthMock?: (index: number) => Locator;
|
|
25
|
+
};
|
|
26
|
+
export type MockBrowserContextOptions = {
|
|
27
|
+
pages?: Page[];
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Create a fresh mock Playwright Locator instance.
|
|
31
|
+
*
|
|
32
|
+
* Includes all methods used in tool handlers:
|
|
33
|
+
* - click() - async mock
|
|
34
|
+
* - fill(text) - async mock
|
|
35
|
+
* - isVisible() - async mock
|
|
36
|
+
* - getAttribute(name) - async mock
|
|
37
|
+
* - textContent() - async mock
|
|
38
|
+
* - all() - async mock
|
|
39
|
+
* - first() - returns mock locator
|
|
40
|
+
* - nth(index) - returns mock locator
|
|
41
|
+
*
|
|
42
|
+
* Methods are chainable where appropriate.
|
|
43
|
+
*
|
|
44
|
+
* @param options - Customize mock behavior
|
|
45
|
+
* @returns Fresh Locator mock
|
|
46
|
+
*/
|
|
47
|
+
export declare function createMockLocator(options?: MockLocatorOptions): Locator;
|
|
48
|
+
/**
|
|
49
|
+
* Create a fresh mock Playwright Page instance.
|
|
50
|
+
*
|
|
51
|
+
* Includes all methods used in tool handlers:
|
|
52
|
+
* - locator(selector) - returns mock locator
|
|
53
|
+
* - waitForLoadState() - async mock
|
|
54
|
+
* - url() - returns string
|
|
55
|
+
* - context() - returns mock context
|
|
56
|
+
* - screenshot(options) - async mock
|
|
57
|
+
*
|
|
58
|
+
* @param options - Customize mock behavior
|
|
59
|
+
* @returns Fresh Page mock
|
|
60
|
+
*/
|
|
61
|
+
export declare function createMockPage(options?: MockPageOptions): Page;
|
|
62
|
+
/**
|
|
63
|
+
* Create a fresh mock Playwright BrowserContext instance.
|
|
64
|
+
*
|
|
65
|
+
* @param options - Customize mock behavior
|
|
66
|
+
* @returns Fresh BrowserContext mock
|
|
67
|
+
*/
|
|
68
|
+
export declare function createMockBrowserContext(options?: MockBrowserContextOptions): Partial<BrowserContext>;
|
|
69
|
+
//# sourceMappingURL=mock-playwright.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-playwright.d.cts","sourceRoot":"","sources":["../../../src/mcp-server/test-utils/mock-playwright.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,cAAc,EAAE,yBAAyB;AAGtE,MAAM,MAAM,eAAe,GAAG;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3C,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IACvC,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC5D,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC/C,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;CAChB,CAAC;AAEF;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CA6C3E;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,OAAO,GAAE,eAAoB,GAAG,IAAI,CA8ElE;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,GAAE,yBAA8B,GACtC,OAAO,CAAC,cAAc,CAAC,CA+BzB"}
|