@frontmcp/testing 0.6.3 → 0.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. package/assertions/index.d.ts +1 -0
  2. package/assertions/index.d.ts.map +1 -0
  3. package/assertions/mcp-assertions.d.ts +1 -0
  4. package/assertions/mcp-assertions.d.ts.map +1 -0
  5. package/auth/auth-headers.d.ts +1 -0
  6. package/auth/auth-headers.d.ts.map +1 -0
  7. package/auth/index.d.ts +1 -0
  8. package/auth/index.d.ts.map +1 -0
  9. package/auth/mock-api-server.d.ts +61 -6
  10. package/auth/mock-api-server.d.ts.map +1 -0
  11. package/auth/mock-oauth-server.d.ts +1 -0
  12. package/auth/mock-oauth-server.d.ts.map +1 -0
  13. package/auth/token-factory.d.ts +1 -0
  14. package/auth/token-factory.d.ts.map +1 -0
  15. package/auth/user-fixtures.d.ts +1 -0
  16. package/auth/user-fixtures.d.ts.map +1 -0
  17. package/client/index.d.ts +1 -0
  18. package/client/index.d.ts.map +1 -0
  19. package/client/mcp-test-client.builder.d.ts +1 -0
  20. package/client/mcp-test-client.builder.d.ts.map +1 -0
  21. package/client/mcp-test-client.d.ts +1 -0
  22. package/client/mcp-test-client.d.ts.map +1 -0
  23. package/client/mcp-test-client.types.d.ts +1 -0
  24. package/client/mcp-test-client.types.d.ts.map +1 -0
  25. package/errors/index.d.ts +1 -0
  26. package/errors/index.d.ts.map +1 -0
  27. package/esm/index.mjs +169 -72
  28. package/esm/matchers/index.mjs +4 -14
  29. package/esm/package.json +3 -3
  30. package/esm/setup.mjs +4 -14
  31. package/example-tools/index.d.ts +1 -0
  32. package/example-tools/index.d.ts.map +1 -0
  33. package/example-tools/tool-configs.d.ts +15 -4
  34. package/example-tools/tool-configs.d.ts.map +1 -0
  35. package/expect.d.ts +1 -0
  36. package/expect.d.ts.map +1 -0
  37. package/fixtures/fixture-types.d.ts +1 -0
  38. package/fixtures/fixture-types.d.ts.map +1 -0
  39. package/fixtures/index.d.ts +1 -0
  40. package/fixtures/index.d.ts.map +1 -0
  41. package/fixtures/test-fixture.d.ts +1 -0
  42. package/fixtures/test-fixture.d.ts.map +1 -0
  43. package/http-mock/http-mock.d.ts +1 -0
  44. package/http-mock/http-mock.d.ts.map +1 -0
  45. package/http-mock/http-mock.types.d.ts +1 -0
  46. package/http-mock/http-mock.types.d.ts.map +1 -0
  47. package/http-mock/index.d.ts +1 -0
  48. package/http-mock/index.d.ts.map +1 -0
  49. package/index.d.ts +3 -2
  50. package/index.d.ts.map +1 -0
  51. package/index.js +170 -73
  52. package/interceptor/index.d.ts +1 -0
  53. package/interceptor/index.d.ts.map +1 -0
  54. package/interceptor/interceptor-chain.d.ts +1 -0
  55. package/interceptor/interceptor-chain.d.ts.map +1 -0
  56. package/interceptor/interceptor.types.d.ts +1 -0
  57. package/interceptor/interceptor.types.d.ts.map +1 -0
  58. package/interceptor/mock-registry.d.ts +1 -0
  59. package/interceptor/mock-registry.d.ts.map +1 -0
  60. package/matchers/index.d.ts +1 -0
  61. package/matchers/index.d.ts.map +1 -0
  62. package/matchers/index.js +4 -14
  63. package/matchers/matcher-types.d.ts +1 -0
  64. package/matchers/matcher-types.d.ts.map +1 -0
  65. package/matchers/mcp-matchers.d.ts +1 -0
  66. package/matchers/mcp-matchers.d.ts.map +1 -0
  67. package/package.json +3 -3
  68. package/platform/index.d.ts +2 -1
  69. package/platform/index.d.ts.map +1 -0
  70. package/platform/platform-client-info.d.ts +1 -0
  71. package/platform/platform-client-info.d.ts.map +1 -0
  72. package/platform/platform-types.d.ts +12 -12
  73. package/platform/platform-types.d.ts.map +1 -0
  74. package/playwright/index.d.ts +1 -0
  75. package/playwright/index.d.ts.map +1 -0
  76. package/server/index.d.ts +1 -0
  77. package/server/index.d.ts.map +1 -0
  78. package/server/test-server.d.ts +1 -0
  79. package/server/test-server.d.ts.map +1 -0
  80. package/setup.d.ts +1 -0
  81. package/setup.d.ts.map +1 -0
  82. package/setup.js +4 -14
  83. package/transport/index.d.ts +1 -0
  84. package/transport/index.d.ts.map +1 -0
  85. package/transport/streamable-http.transport.d.ts +1 -0
  86. package/transport/streamable-http.transport.d.ts.map +1 -0
  87. package/transport/transport.interface.d.ts +1 -0
  88. package/transport/transport.interface.d.ts.map +1 -0
  89. package/ui/index.d.ts +1 -0
  90. package/ui/index.d.ts.map +1 -0
  91. package/ui/ui-assertions.d.ts +5 -4
  92. package/ui/ui-assertions.d.ts.map +1 -0
  93. package/ui/ui-matchers.d.ts +1 -0
  94. package/ui/ui-matchers.d.ts.map +1 -0
@@ -6,20 +6,16 @@ function getToolCallMetaPrefixes(platform) {
6
6
  switch (platform) {
7
7
  case "openai":
8
8
  return ["openai/"];
9
- case "ext-apps":
10
- return ["ui/"];
11
9
  default:
12
- return ["frontmcp/", "ui/"];
10
+ return ["ui/"];
13
11
  }
14
12
  }
15
13
  function getForbiddenMetaPrefixes(platform) {
16
14
  switch (platform) {
17
15
  case "openai":
18
16
  return ["ui/", "frontmcp/"];
19
- case "ext-apps":
20
- return ["openai/", "frontmcp/"];
21
17
  default:
22
- return ["openai/"];
18
+ return ["openai/", "frontmcp/"];
23
19
  }
24
20
  }
25
21
 
@@ -300,11 +296,8 @@ var toHavePlatformMimeType = function(received, platform) {
300
296
  case "openai":
301
297
  mimeTypeKey = "openai/mimeType";
302
298
  break;
303
- case "ext-apps":
304
- mimeTypeKey = "ui/mimeType";
305
- break;
306
299
  default:
307
- mimeTypeKey = "frontmcp/mimeType";
300
+ mimeTypeKey = "ui/mimeType";
308
301
  }
309
302
  const actualMimeType = meta[mimeTypeKey];
310
303
  const pass = actualMimeType === expectedMimeType;
@@ -326,11 +319,8 @@ var toHavePlatformHtml = function(received, platform) {
326
319
  case "openai":
327
320
  htmlKey = "openai/html";
328
321
  break;
329
- case "ext-apps":
330
- htmlKey = "ui/html";
331
- break;
332
322
  default:
333
- htmlKey = "frontmcp/html";
323
+ htmlKey = "ui/html";
334
324
  }
335
325
  const html = meta[htmlKey];
336
326
  const pass = typeof html === "string" && html.length > 0;
package/esm/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@frontmcp/testing",
3
- "version": "0.6.3",
3
+ "version": "0.7.1",
4
4
  "description": "E2E testing framework for FrontMCP servers - MCP client, auth mocks, Playwright integration",
5
5
  "author": "AgentFront <info@agentfront.dev>",
6
6
  "homepage": "https://docs.agentfront.dev",
@@ -87,8 +87,8 @@
87
87
  "./esm": null
88
88
  },
89
89
  "peerDependencies": {
90
- "@frontmcp/sdk": "0.6.3",
91
- "@frontmcp/ui": "0.6.3",
90
+ "@frontmcp/sdk": "0.7.1",
91
+ "@frontmcp/ui": "0.7.1",
92
92
  "@playwright/test": "^1.40.0",
93
93
  "jest": "^29.0.0",
94
94
  "@jest/globals": "^29.0.0"
package/esm/setup.mjs CHANGED
@@ -14,20 +14,16 @@ function getToolCallMetaPrefixes(platform) {
14
14
  switch (platform) {
15
15
  case "openai":
16
16
  return ["openai/"];
17
- case "ext-apps":
18
- return ["ui/"];
19
17
  default:
20
- return ["frontmcp/", "ui/"];
18
+ return ["ui/"];
21
19
  }
22
20
  }
23
21
  function getForbiddenMetaPrefixes(platform) {
24
22
  switch (platform) {
25
23
  case "openai":
26
24
  return ["ui/", "frontmcp/"];
27
- case "ext-apps":
28
- return ["openai/", "frontmcp/"];
29
25
  default:
30
- return ["openai/"];
26
+ return ["openai/", "frontmcp/"];
31
27
  }
32
28
  }
33
29
  var init_platform_types = __esm({
@@ -318,11 +314,8 @@ var init_ui_matchers = __esm({
318
314
  case "openai":
319
315
  mimeTypeKey = "openai/mimeType";
320
316
  break;
321
- case "ext-apps":
322
- mimeTypeKey = "ui/mimeType";
323
- break;
324
317
  default:
325
- mimeTypeKey = "frontmcp/mimeType";
318
+ mimeTypeKey = "ui/mimeType";
326
319
  }
327
320
  const actualMimeType = meta[mimeTypeKey];
328
321
  const pass = actualMimeType === expectedMimeType;
@@ -344,11 +337,8 @@ var init_ui_matchers = __esm({
344
337
  case "openai":
345
338
  htmlKey = "openai/html";
346
339
  break;
347
- case "ext-apps":
348
- htmlKey = "ui/html";
349
- break;
350
340
  default:
351
- htmlKey = "frontmcp/html";
341
+ htmlKey = "ui/html";
352
342
  }
353
343
  const html = meta[htmlKey];
354
344
  const pass = typeof html === "string" && html.length > 0;
@@ -17,3 +17,4 @@
17
17
  export { BASIC_UI_TOOL_CONFIG, FULL_UI_TOOL_CONFIG, basicUIToolInputSchema, basicUIToolOutputSchema, fullUIToolInputSchema, fullUIToolOutputSchema, } from './tool-configs';
18
18
  export { generateBasicUIToolOutput, generateFullUIToolOutput } from './tool-configs';
19
19
  export { EXPECTED_OPENAI_TOOLS_LIST_META_KEYS, EXPECTED_OPENAI_TOOL_CALL_META_KEYS, EXPECTED_EXTAPPS_TOOLS_LIST_META_KEYS, EXPECTED_EXTAPPS_TOOL_CALL_META_KEYS, EXPECTED_FRONTMCP_TOOLS_LIST_META_KEYS, EXPECTED_FRONTMCP_TOOL_CALL_META_KEYS, } from './tool-configs';
20
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/example-tools/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,sBAAsB,EACtB,uBAAuB,EACvB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAGrF,OAAO,EACL,oCAAoC,EACpC,mCAAmC,EACnC,qCAAqC,EACrC,oCAAoC,EACpC,sCAAsC,EACtC,qCAAqC,GACtC,MAAM,gBAAgB,CAAC"}
@@ -161,10 +161,21 @@ export declare const EXPECTED_EXTAPPS_TOOLS_LIST_META_KEYS: readonly ["ui/resour
161
161
  */
162
162
  export declare const EXPECTED_EXTAPPS_TOOL_CALL_META_KEYS: readonly ["ui/html", "ui/mimeType", "ui/type"];
163
163
  /**
164
- * Expected meta keys for FrontMCP platforms in tools/list response (Claude, Cursor, etc.).
164
+ * Expected meta keys for generic MCP platforms in tools/list response (Claude, Cursor, etc.).
165
+ * Uses ui/* namespace only.
165
166
  */
166
- export declare const EXPECTED_FRONTMCP_TOOLS_LIST_META_KEYS: readonly ["frontmcp/outputTemplate", "frontmcp/resultCanProduceWidget", "ui/cdn", "ui/type"];
167
+ export declare const EXPECTED_GENERIC_TOOLS_LIST_META_KEYS: readonly ["ui/resourceUri", "ui/mimeType", "ui/cdn", "ui/type"];
167
168
  /**
168
- * Expected meta keys for FrontMCP platforms in tools/call response (Claude, Cursor, etc.).
169
+ * Expected meta keys for generic MCP platforms in tools/call response (Claude, Cursor, etc.).
170
+ * Uses ui/* namespace only.
169
171
  */
170
- export declare const EXPECTED_FRONTMCP_TOOL_CALL_META_KEYS: readonly ["frontmcp/html", "frontmcp/mimeType", "ui/html", "ui/mimeType"];
172
+ export declare const EXPECTED_GENERIC_TOOL_CALL_META_KEYS: readonly ["ui/html", "ui/mimeType", "ui/type"];
173
+ /**
174
+ * @deprecated Use EXPECTED_GENERIC_TOOLS_LIST_META_KEYS instead
175
+ */
176
+ export declare const EXPECTED_FRONTMCP_TOOLS_LIST_META_KEYS: readonly ["ui/resourceUri", "ui/mimeType", "ui/cdn", "ui/type"];
177
+ /**
178
+ * @deprecated Use EXPECTED_GENERIC_TOOL_CALL_META_KEYS instead
179
+ */
180
+ export declare const EXPECTED_FRONTMCP_TOOL_CALL_META_KEYS: readonly ["ui/html", "ui/mimeType", "ui/type"];
181
+ //# sourceMappingURL=tool-configs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-configs.d.ts","sourceRoot":"","sources":["../../src/example-tools/tool-configs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB;;GAEG;AACH,eAAO,MAAM,sBAAsB;;iBAEjC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;iBAGlC,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;QAM7B;;;WAGG;;;CASG,CAAC;AAMX;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;iBAGhC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,sBAAsB;;;;;iBAKjC,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;QAM5B;;WAEG;;QAqBH;;WAEG;;QAEH;;WAEG;;;;;QAKH;;WAEG;;;;;QAKH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;;CAGG,CAAC;AAMX;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC;;;EAKtF;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC;;;;;EAWpF;AAMD;;GAEG;AACH,eAAO,MAAM,oCAAoC,gGAIvC,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,mCAAmC,4DAA6D,CAAC;AAE9G;;GAEG;AACH,eAAO,MAAM,qCAAqC,iEAAkE,CAAC;AAErH;;GAEG;AACH,eAAO,MAAM,oCAAoC,gDAAiD,CAAC;AAEnG;;;GAGG;AACH,eAAO,MAAM,qCAAqC,iEAAkE,CAAC;AAErH;;;GAGG;AACH,eAAO,MAAM,oCAAoC,gDAAiD,CAAC;AAEnG;;GAEG;AACH,eAAO,MAAM,sCAAsC,iEAAwC,CAAC;AAE5F;;GAEG;AACH,eAAO,MAAM,qCAAqC,gDAAuC,CAAC"}
package/expect.d.ts CHANGED
@@ -66,3 +66,4 @@ interface McpExpect {
66
66
  */
67
67
  export declare const expect: McpExpect;
68
68
  export {};
69
+ //# sourceMappingURL=expect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expect.d.ts","sourceRoot":"","sources":["../src/expect.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5D;;GAEG;AACH,KAAK,iBAAiB,CAAC,CAAC,SAAS,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,OAAO,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,GAClF,WAAW,CAAC,CAAC,CAAC,GAAG;IACf;;OAEG;IACH,GAAG,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;IAErC;;OAEG;IACH,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAElE;;OAEG;IACH,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;CAClE,CAAC;AAEJ;;GAEG;AACH,UAAU,SAAS;IACjB,CAAC,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAGrD,QAAQ,IAAI,UAAU,CAAC,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC;IACnD,GAAG,CAAC,SAAS,EAAE,OAAO,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC;IAC3D,eAAe,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,SAAS,CAAC,EAAE,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,eAAe,CAAC,CAAC;IAC/F,gBAAgB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,gBAAgB,CAAC,CAAC;IACtG,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,gBAAgB,CAAC,CAAC;IAC9E,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,cAAc,CAAC,CAAC;IAGnF,GAAG,EAAE;QACH,eAAe,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,SAAS,CAAC,EAAE,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QACnG,gBAAgB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QAC1G,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QAClF,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;KACxF,CAAC;IAGF,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAChD,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,aAAa,IAAI,IAAI,CAAC;CACvB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,MAAM,EAA4B,SAAS,CAAC"}
@@ -183,3 +183,4 @@ export interface TestWithFixtures {
183
183
  /** Mark test as todo (not implemented) */
184
184
  todo(name: string): void;
185
185
  }
186
+ //# sourceMappingURL=fixture-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fixture-types.d.ts","sourceRoot":"","sources":["../../src/fixtures/fixture-types.ts"],"names":[],"mappings":"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"}
@@ -5,3 +5,4 @@
5
5
  export { test } from './test-fixture';
6
6
  export type { TestConfig, TestFixtures, AuthFixture, ServerFixture, TestFn, TestWithFixtures, TestUser, } from './fixture-types';
7
7
  export { createTestFixtures, cleanupTestFixtures, initializeSharedResources, cleanupSharedResources, } from './test-fixture';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/fixtures/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,YAAY,EACV,UAAU,EACV,YAAY,EACZ,WAAW,EACX,aAAa,EACb,MAAM,EACN,gBAAgB,EAChB,QAAQ,GACT,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,yBAAyB,EACzB,sBAAsB,GACvB,MAAM,gBAAgB,CAAC"}
@@ -41,3 +41,4 @@ declare function cleanupSharedResources(): Promise<void>;
41
41
  declare const test: TestWithFixtures;
42
42
  export { test };
43
43
  export { createTestFixtures, cleanupTestFixtures, initializeSharedResources, cleanupSharedResources };
44
+ //# sourceMappingURL=test-fixture.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-fixture.d.ts","sourceRoot":"","sources":["../../src/fixtures/test-fixture.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAMH,OAAO,KAAK,EAEV,YAAY,EAIZ,gBAAgB,EAEjB,MAAM,iBAAiB,CAAC;AAsBzB;;GAEG;AACH,iBAAe,yBAAyB,IAAI,OAAO,CAAC,IAAI,CAAC,CA4BxD;AAED;;GAEG;AACH,iBAAe,kBAAkB,IAAI,OAAO,CAAC,YAAY,CAAC,CAqBzD;AAED;;;;GAIG;AACH,iBAAe,mBAAmB,CAAC,QAAQ,EAAE,YAAY,EAAE,WAAW,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAK7F;AAED;;GAEG;AACH,iBAAe,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC,CAQrD;AAmMD,QAAA,MAAM,IAAI,EAAuB,gBAAgB,CAAC;AAqBlD,OAAO,EAAE,IAAI,EAAE,CAAC;AAGhB,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,CAAC"}
@@ -82,3 +82,4 @@ export declare const httpResponse: {
82
82
  /** Create a delayed response */
83
83
  delayed<T>(data: T, delayMs: number, status?: number): HttpMockResponse;
84
84
  };
85
+ //# sourceMappingURL=http-mock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http-mock.d.ts","sourceRoot":"","sources":["../../src/http-mock/http-mock.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH,OAAO,KAAK,EAGV,gBAAgB,EAKhB,eAAe,EAChB,MAAM,mBAAmB,CAAC;AAgd3B;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,QAAQ,EAAE,eAA2C,CAAC;AAEnE;;GAEG;AACH,eAAO,MAAM,YAAY;IACvB,6BAA6B;SACxB,CAAC,QAAQ,CAAC,oBAAiB,gBAAgB;IAQhD,6BAA6B;eAClB,MAAM,oBAAiB,gBAAgB;IAQlD,8BAA8B;eACnB,MAAM,oBAAiB,gBAAgB;IAQlD,+BAA+B;kBACjB,MAAM,YAAY,MAAM,GAAG,gBAAgB;IAQzD,sCAAsC;gCACL,gBAAgB;IAIjD,kDAAkD;mCACF,gBAAgB;IAIhE,yCAAyC;oCACD,gBAAgB;IAIxD,sCAAsC;iCACJ,gBAAgB;IAIlD;;;OAGG;oCACsC,gBAAgB;IASzD,gCAAgC;YACxB,CAAC,QAAQ,CAAC,WAAW,MAAM,oBAAiB,gBAAgB;CAOrE,CAAC"}
@@ -122,3 +122,4 @@ export interface HttpMockManager {
122
122
  /** Clear all scopes and mocks */
123
123
  clearAll(): void;
124
124
  }
125
+ //# sourceMappingURL=http-mock.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http-mock.types.d.ts","sourceRoot":"","sources":["../../src/http-mock/http-mock.types.ts"],"names":[],"mappings":"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"}
@@ -4,3 +4,4 @@
4
4
  */
5
5
  export { httpMock, httpResponse } from './http-mock';
6
6
  export type { HttpMethod, HttpRequestMatcher, HttpMockResponse, HttpMockDefinition, HttpRequestInfo, HttpMockHandle, HttpInterceptor, HttpMockManager, } from './http-mock.types';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/http-mock/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAErD,YAAY,EACV,UAAU,EACV,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,eAAe,EACf,eAAe,GAChB,MAAM,mBAAmB,CAAC"}
package/index.d.ts CHANGED
@@ -51,7 +51,7 @@ export type { TestUserFixture } from './auth/user-fixtures';
51
51
  export { MockOAuthServer } from './auth/mock-oauth-server';
52
52
  export type { MockOAuthServerOptions, MockOAuthServerInfo } from './auth/mock-oauth-server';
53
53
  export { MockAPIServer } from './auth/mock-api-server';
54
- export type { MockAPIServerOptions, MockAPIServerInfo, MockRoute, MockResponse } from './auth/mock-api-server';
54
+ export type { MockAPIServerOptions, MockAPIServerInfo, MockRoute, MockResponse, MockRequest, MockResponseHelper, MockRouteHandler, } from './auth/mock-api-server';
55
55
  export { TestServer } from './server/test-server';
56
56
  export type { TestServerOptions, TestServerInfo } from './server/test-server';
57
57
  export { McpAssertions, containsTool, containsResource, containsResourceTemplate, containsPrompt, isSuccessful, isError, hasTextContent, hasMimeType, } from './assertions/mcp-assertions';
@@ -68,5 +68,6 @@ export { httpMock, httpResponse } from './http-mock';
68
68
  export type { HttpMethod, HttpRequestMatcher, HttpMockResponse, HttpMockDefinition, HttpRequestInfo, HttpMockHandle, HttpInterceptor, HttpMockManager, } from './http-mock';
69
69
  export { uiMatchers, UIAssertions } from './ui';
70
70
  export type { TestPlatformType, PlatformMetaNamespace, TestClientInfo } from './platform';
71
- export { getPlatformMetaNamespace, getPlatformMimeType, isOpenAIPlatform, isExtAppsPlatform, isFrontmcpPlatform, getToolsListMetaPrefixes, getToolCallMetaPrefixes, getForbiddenMetaPrefixes, getPlatformClientInfo, buildUserAgent, getPlatformUserAgent, PLATFORM_DETECTION_PATTERNS, } from './platform';
71
+ export { getPlatformMetaNamespace, getPlatformMimeType, isOpenAIPlatform, isExtAppsPlatform, isUiPlatform, getToolsListMetaPrefixes, getToolCallMetaPrefixes, getForbiddenMetaPrefixes, getPlatformClientInfo, buildUserAgent, getPlatformUserAgent, PLATFORM_DETECTION_PATTERNS, } from './platform';
72
72
  export { BASIC_UI_TOOL_CONFIG, FULL_UI_TOOL_CONFIG, basicUIToolInputSchema, basicUIToolOutputSchema, fullUIToolInputSchema, fullUIToolOutputSchema, generateBasicUIToolOutput, generateFullUIToolOutput, EXPECTED_OPENAI_TOOLS_LIST_META_KEYS, EXPECTED_OPENAI_TOOL_CALL_META_KEYS, EXPECTED_EXTAPPS_TOOLS_LIST_META_KEYS, EXPECTED_EXTAPPS_TOOL_CALL_META_KEYS, EXPECTED_FRONTMCP_TOOLS_LIST_META_KEYS, EXPECTED_FRONTMCP_TOOL_CALL_META_KEYS, } from './example-tools';
73
+ //# sourceMappingURL=index.d.ts.map
package/index.d.ts.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AAMH,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,YAAY,EACV,mBAAmB,EACnB,WAAW,EACX,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,sBAAsB,EACtB,mBAAmB,EACnB,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,WAAW,EACX,SAAS,GACV,MAAM,gCAAgC,CAAC;AAMxC,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACrG,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAMhF,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACjE,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,YAAY,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC5F,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,YAAY,EACV,oBAAoB,EACpB,iBAAiB,EACjB,SAAS,EACT,YAAY,EACZ,WAAW,EACX,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,wBAAwB,CAAC;AAMhC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,YAAY,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAM9E,OAAO,EACL,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,wBAAwB,EACxB,cAAc,EACd,YAAY,EACZ,OAAO,EACP,cAAc,EACd,WAAW,GACZ,MAAM,6BAA6B,CAAC;AAMrC,OAAO,EACL,eAAe,EACf,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,GACf,MAAM,gBAAgB,CAAC;AAMxB,YAAY,EACV,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,2BAA2B,EAC3B,iBAAiB,EACjB,eAAe,EACf,IAAI,EACJ,QAAQ,EACR,gBAAgB,EAChB,MAAM,EAEN,cAAc,EACd,eAAe,GAChB,MAAM,gCAAgC,CAAC;AAMxC,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClC,YAAY,EACV,UAAU,EACV,YAAY,EACZ,WAAW,EACX,aAAa,EACb,MAAM,EACN,gBAAgB,EAChB,QAAQ,GACT,MAAM,YAAY,CAAC;AAQpB,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAMlC,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAM9C,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAEzG,YAAY,EACV,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,0BAA0B,EAC1B,yBAAyB,EACzB,mBAAmB,EACnB,cAAc,EACd,YAAY,EACZ,UAAU,EACV,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAMvB,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAErD,YAAY,EACV,UAAU,EACV,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,eAAe,EACf,eAAe,GAChB,MAAM,aAAa,CAAC;AAMrB,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAMhD,YAAY,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE1F,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACZ,wBAAwB,EACxB,uBAAuB,EACvB,wBAAwB,EACxB,qBAAqB,EACrB,cAAc,EACd,oBAAoB,EACpB,2BAA2B,GAC5B,MAAM,YAAY,CAAC;AAMpB,OAAO,EAEL,oBAAoB,EACpB,mBAAmB,EACnB,sBAAsB,EACtB,uBAAuB,EACvB,qBAAqB,EACrB,sBAAsB,EAEtB,yBAAyB,EACzB,wBAAwB,EAExB,oCAAoC,EACpC,mCAAmC,EACnC,qCAAqC,EACrC,oCAAoC,EACpC,sCAAsC,EACtC,qCAAqC,GACtC,MAAM,iBAAiB,CAAC"}