mocktp 0.0.1-security → 3.15.3

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.

Potentially problematic release.


This version of mocktp might be problematic. Click here for more details.

Files changed (304) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +123 -3
  3. package/custom-typings/Function.d.ts +4 -0
  4. package/custom-typings/cors-gate.d.ts +13 -0
  5. package/custom-typings/http-proxy-agent.d.ts +9 -0
  6. package/custom-typings/node-type-extensions.d.ts +115 -0
  7. package/custom-typings/proxy-agent-modules.d.ts +5 -0
  8. package/custom-typings/request-promise-native.d.ts +28 -0
  9. package/custom-typings/zstd-codec.d.ts +20 -0
  10. package/dist/admin/admin-bin.d.ts +3 -0
  11. package/dist/admin/admin-bin.d.ts.map +1 -0
  12. package/dist/admin/admin-bin.js +61 -0
  13. package/dist/admin/admin-bin.js.map +1 -0
  14. package/dist/admin/admin-plugin-types.d.ts +29 -0
  15. package/dist/admin/admin-plugin-types.d.ts.map +1 -0
  16. package/dist/admin/admin-plugin-types.js +3 -0
  17. package/dist/admin/admin-plugin-types.js.map +1 -0
  18. package/dist/admin/admin-server.d.ts +98 -0
  19. package/dist/admin/admin-server.d.ts.map +1 -0
  20. package/dist/admin/admin-server.js +426 -0
  21. package/dist/admin/admin-server.js.map +1 -0
  22. package/dist/admin/graphql-utils.d.ts +4 -0
  23. package/dist/admin/graphql-utils.d.ts.map +1 -0
  24. package/dist/admin/graphql-utils.js +28 -0
  25. package/dist/admin/graphql-utils.js.map +1 -0
  26. package/dist/admin/mockttp-admin-model.d.ts +7 -0
  27. package/dist/admin/mockttp-admin-model.d.ts.map +1 -0
  28. package/dist/admin/mockttp-admin-model.js +214 -0
  29. package/dist/admin/mockttp-admin-model.js.map +1 -0
  30. package/dist/admin/mockttp-admin-plugin.d.ts +28 -0
  31. package/dist/admin/mockttp-admin-plugin.d.ts.map +1 -0
  32. package/dist/admin/mockttp-admin-plugin.js +37 -0
  33. package/dist/admin/mockttp-admin-plugin.js.map +1 -0
  34. package/dist/admin/mockttp-admin-server.d.ts +16 -0
  35. package/dist/admin/mockttp-admin-server.d.ts.map +1 -0
  36. package/dist/admin/mockttp-admin-server.js +17 -0
  37. package/dist/admin/mockttp-admin-server.js.map +1 -0
  38. package/dist/admin/mockttp-schema.d.ts +2 -0
  39. package/dist/admin/mockttp-schema.d.ts.map +1 -0
  40. package/dist/admin/mockttp-schema.js +225 -0
  41. package/dist/admin/mockttp-schema.js.map +1 -0
  42. package/dist/client/admin-client.d.ts +112 -0
  43. package/dist/client/admin-client.d.ts.map +1 -0
  44. package/dist/client/admin-client.js +511 -0
  45. package/dist/client/admin-client.js.map +1 -0
  46. package/dist/client/admin-query.d.ts +13 -0
  47. package/dist/client/admin-query.d.ts.map +1 -0
  48. package/dist/client/admin-query.js +26 -0
  49. package/dist/client/admin-query.js.map +1 -0
  50. package/dist/client/mocked-endpoint-client.d.ts +12 -0
  51. package/dist/client/mocked-endpoint-client.d.ts.map +1 -0
  52. package/dist/client/mocked-endpoint-client.js +33 -0
  53. package/dist/client/mocked-endpoint-client.js.map +1 -0
  54. package/dist/client/mockttp-admin-request-builder.d.ts +38 -0
  55. package/dist/client/mockttp-admin-request-builder.d.ts.map +1 -0
  56. package/dist/client/mockttp-admin-request-builder.js +462 -0
  57. package/dist/client/mockttp-admin-request-builder.js.map +1 -0
  58. package/dist/client/mockttp-client.d.ts +56 -0
  59. package/dist/client/mockttp-client.d.ts.map +1 -0
  60. package/dist/client/mockttp-client.js +112 -0
  61. package/dist/client/mockttp-client.js.map +1 -0
  62. package/dist/client/schema-introspection.d.ts +11 -0
  63. package/dist/client/schema-introspection.d.ts.map +1 -0
  64. package/dist/client/schema-introspection.js +128 -0
  65. package/dist/client/schema-introspection.js.map +1 -0
  66. package/dist/main.browser.d.ts +49 -0
  67. package/dist/main.browser.d.ts.map +1 -0
  68. package/dist/main.browser.js +57 -0
  69. package/dist/main.browser.js.map +1 -0
  70. package/dist/main.d.ts +86 -0
  71. package/dist/main.d.ts.map +1 -0
  72. package/dist/main.js +108 -0
  73. package/dist/main.js.map +1 -0
  74. package/dist/mockttp.d.ts +774 -0
  75. package/dist/mockttp.d.ts.map +1 -0
  76. package/dist/mockttp.js +81 -0
  77. package/dist/mockttp.js.map +1 -0
  78. package/dist/pluggable-admin-api/mockttp-pluggable-admin.browser.d.ts +5 -0
  79. package/dist/pluggable-admin-api/mockttp-pluggable-admin.browser.d.ts.map +1 -0
  80. package/dist/pluggable-admin-api/mockttp-pluggable-admin.browser.js +12 -0
  81. package/dist/pluggable-admin-api/mockttp-pluggable-admin.browser.js.map +1 -0
  82. package/dist/pluggable-admin-api/mockttp-pluggable-admin.d.ts +8 -0
  83. package/dist/pluggable-admin-api/mockttp-pluggable-admin.d.ts.map +1 -0
  84. package/dist/pluggable-admin-api/mockttp-pluggable-admin.js +13 -0
  85. package/dist/pluggable-admin-api/mockttp-pluggable-admin.js.map +1 -0
  86. package/dist/pluggable-admin-api/pluggable-admin.browser.d.ts +6 -0
  87. package/dist/pluggable-admin-api/pluggable-admin.browser.d.ts.map +1 -0
  88. package/dist/pluggable-admin-api/pluggable-admin.browser.js +13 -0
  89. package/dist/pluggable-admin-api/pluggable-admin.browser.js.map +1 -0
  90. package/dist/pluggable-admin-api/pluggable-admin.d.ts +18 -0
  91. package/dist/pluggable-admin-api/pluggable-admin.d.ts.map +1 -0
  92. package/dist/pluggable-admin-api/pluggable-admin.js +20 -0
  93. package/dist/pluggable-admin-api/pluggable-admin.js.map +1 -0
  94. package/dist/rules/base-rule-builder.d.ts +185 -0
  95. package/dist/rules/base-rule-builder.d.ts.map +1 -0
  96. package/dist/rules/base-rule-builder.js +251 -0
  97. package/dist/rules/base-rule-builder.js.map +1 -0
  98. package/dist/rules/completion-checkers.d.ts +41 -0
  99. package/dist/rules/completion-checkers.d.ts.map +1 -0
  100. package/dist/rules/completion-checkers.js +87 -0
  101. package/dist/rules/completion-checkers.js.map +1 -0
  102. package/dist/rules/http-agents.d.ts +11 -0
  103. package/dist/rules/http-agents.d.ts.map +1 -0
  104. package/dist/rules/http-agents.js +91 -0
  105. package/dist/rules/http-agents.js.map +1 -0
  106. package/dist/rules/matchers.d.ts +214 -0
  107. package/dist/rules/matchers.d.ts.map +1 -0
  108. package/dist/rules/matchers.js +515 -0
  109. package/dist/rules/matchers.js.map +1 -0
  110. package/dist/rules/passthrough-handling-definitions.d.ts +106 -0
  111. package/dist/rules/passthrough-handling-definitions.d.ts.map +1 -0
  112. package/dist/rules/passthrough-handling-definitions.js +3 -0
  113. package/dist/rules/passthrough-handling-definitions.js.map +1 -0
  114. package/dist/rules/passthrough-handling.d.ts +33 -0
  115. package/dist/rules/passthrough-handling.d.ts.map +1 -0
  116. package/dist/rules/passthrough-handling.js +294 -0
  117. package/dist/rules/passthrough-handling.js.map +1 -0
  118. package/dist/rules/proxy-config.d.ts +76 -0
  119. package/dist/rules/proxy-config.d.ts.map +1 -0
  120. package/dist/rules/proxy-config.js +48 -0
  121. package/dist/rules/proxy-config.js.map +1 -0
  122. package/dist/rules/requests/request-handler-definitions.d.ts +600 -0
  123. package/dist/rules/requests/request-handler-definitions.d.ts.map +1 -0
  124. package/dist/rules/requests/request-handler-definitions.js +423 -0
  125. package/dist/rules/requests/request-handler-definitions.js.map +1 -0
  126. package/dist/rules/requests/request-handlers.d.ts +65 -0
  127. package/dist/rules/requests/request-handlers.d.ts.map +1 -0
  128. package/dist/rules/requests/request-handlers.js +1014 -0
  129. package/dist/rules/requests/request-handlers.js.map +1 -0
  130. package/dist/rules/requests/request-rule-builder.d.ts +255 -0
  131. package/dist/rules/requests/request-rule-builder.d.ts.map +1 -0
  132. package/dist/rules/requests/request-rule-builder.js +340 -0
  133. package/dist/rules/requests/request-rule-builder.js.map +1 -0
  134. package/dist/rules/requests/request-rule.d.ts +36 -0
  135. package/dist/rules/requests/request-rule.d.ts.map +1 -0
  136. package/dist/rules/requests/request-rule.js +100 -0
  137. package/dist/rules/requests/request-rule.js.map +1 -0
  138. package/dist/rules/rule-deserialization.d.ts +8 -0
  139. package/dist/rules/rule-deserialization.d.ts.map +1 -0
  140. package/dist/rules/rule-deserialization.js +27 -0
  141. package/dist/rules/rule-deserialization.js.map +1 -0
  142. package/dist/rules/rule-parameters.d.ts +21 -0
  143. package/dist/rules/rule-parameters.d.ts.map +1 -0
  144. package/dist/rules/rule-parameters.js +31 -0
  145. package/dist/rules/rule-parameters.js.map +1 -0
  146. package/dist/rules/rule-serialization.d.ts +7 -0
  147. package/dist/rules/rule-serialization.d.ts.map +1 -0
  148. package/dist/rules/rule-serialization.js +25 -0
  149. package/dist/rules/rule-serialization.js.map +1 -0
  150. package/dist/rules/websockets/websocket-handler-definitions.d.ts +78 -0
  151. package/dist/rules/websockets/websocket-handler-definitions.d.ts.map +1 -0
  152. package/dist/rules/websockets/websocket-handler-definitions.js +118 -0
  153. package/dist/rules/websockets/websocket-handler-definitions.js.map +1 -0
  154. package/dist/rules/websockets/websocket-handlers.d.ts +39 -0
  155. package/dist/rules/websockets/websocket-handlers.d.ts.map +1 -0
  156. package/dist/rules/websockets/websocket-handlers.js +356 -0
  157. package/dist/rules/websockets/websocket-handlers.js.map +1 -0
  158. package/dist/rules/websockets/websocket-rule-builder.d.ts +173 -0
  159. package/dist/rules/websockets/websocket-rule-builder.d.ts.map +1 -0
  160. package/dist/rules/websockets/websocket-rule-builder.js +232 -0
  161. package/dist/rules/websockets/websocket-rule-builder.js.map +1 -0
  162. package/dist/rules/websockets/websocket-rule.d.ts +34 -0
  163. package/dist/rules/websockets/websocket-rule.d.ts.map +1 -0
  164. package/dist/rules/websockets/websocket-rule.js +87 -0
  165. package/dist/rules/websockets/websocket-rule.js.map +1 -0
  166. package/dist/serialization/body-serialization.d.ts +43 -0
  167. package/dist/serialization/body-serialization.d.ts.map +1 -0
  168. package/dist/serialization/body-serialization.js +70 -0
  169. package/dist/serialization/body-serialization.js.map +1 -0
  170. package/dist/serialization/serialization.d.ts +63 -0
  171. package/dist/serialization/serialization.d.ts.map +1 -0
  172. package/dist/serialization/serialization.js +263 -0
  173. package/dist/serialization/serialization.js.map +1 -0
  174. package/dist/server/http-combo-server.d.ts +13 -0
  175. package/dist/server/http-combo-server.d.ts.map +1 -0
  176. package/dist/server/http-combo-server.js +330 -0
  177. package/dist/server/http-combo-server.js.map +1 -0
  178. package/dist/server/mocked-endpoint.d.ts +14 -0
  179. package/dist/server/mocked-endpoint.d.ts.map +1 -0
  180. package/dist/server/mocked-endpoint.js +40 -0
  181. package/dist/server/mocked-endpoint.js.map +1 -0
  182. package/dist/server/mockttp-server.d.ts +87 -0
  183. package/dist/server/mockttp-server.d.ts.map +1 -0
  184. package/dist/server/mockttp-server.js +859 -0
  185. package/dist/server/mockttp-server.js.map +1 -0
  186. package/dist/types.d.ts +359 -0
  187. package/dist/types.d.ts.map +1 -0
  188. package/dist/types.js +20 -0
  189. package/dist/types.js.map +1 -0
  190. package/dist/util/buffer-utils.d.ts +13 -0
  191. package/dist/util/buffer-utils.d.ts.map +1 -0
  192. package/dist/util/buffer-utils.js +141 -0
  193. package/dist/util/buffer-utils.js.map +1 -0
  194. package/dist/util/dns.d.ts +11 -0
  195. package/dist/util/dns.d.ts.map +1 -0
  196. package/dist/util/dns.js +47 -0
  197. package/dist/util/dns.js.map +1 -0
  198. package/dist/util/error.d.ts +9 -0
  199. package/dist/util/error.d.ts.map +1 -0
  200. package/dist/util/error.js +11 -0
  201. package/dist/util/error.js.map +1 -0
  202. package/dist/util/header-utils.d.ts +35 -0
  203. package/dist/util/header-utils.d.ts.map +1 -0
  204. package/dist/util/header-utils.js +200 -0
  205. package/dist/util/header-utils.js.map +1 -0
  206. package/dist/util/openssl-compat.d.ts +2 -0
  207. package/dist/util/openssl-compat.d.ts.map +1 -0
  208. package/dist/util/openssl-compat.js +26 -0
  209. package/dist/util/openssl-compat.js.map +1 -0
  210. package/dist/util/promise.d.ts +10 -0
  211. package/dist/util/promise.d.ts.map +1 -0
  212. package/dist/util/promise.js +25 -0
  213. package/dist/util/promise.js.map +1 -0
  214. package/dist/util/request-utils.d.ts +46 -0
  215. package/dist/util/request-utils.d.ts.map +1 -0
  216. package/dist/util/request-utils.js +462 -0
  217. package/dist/util/request-utils.js.map +1 -0
  218. package/dist/util/server-utils.d.ts +2 -0
  219. package/dist/util/server-utils.d.ts.map +1 -0
  220. package/dist/util/server-utils.js +14 -0
  221. package/dist/util/server-utils.js.map +1 -0
  222. package/dist/util/socket-util.d.ts +28 -0
  223. package/dist/util/socket-util.d.ts.map +1 -0
  224. package/dist/util/socket-util.js +174 -0
  225. package/dist/util/socket-util.js.map +1 -0
  226. package/dist/util/tls.d.ts +68 -0
  227. package/dist/util/tls.d.ts.map +1 -0
  228. package/dist/util/tls.js +220 -0
  229. package/dist/util/tls.js.map +1 -0
  230. package/dist/util/type-utils.d.ts +14 -0
  231. package/dist/util/type-utils.d.ts.map +1 -0
  232. package/dist/util/type-utils.js +3 -0
  233. package/dist/util/type-utils.js.map +1 -0
  234. package/dist/util/url.d.ts +17 -0
  235. package/dist/util/url.d.ts.map +1 -0
  236. package/dist/util/url.js +96 -0
  237. package/dist/util/url.js.map +1 -0
  238. package/dist/util/util.d.ts +8 -0
  239. package/dist/util/util.d.ts.map +1 -0
  240. package/dist/util/util.js +41 -0
  241. package/dist/util/util.js.map +1 -0
  242. package/docs/api-docs-landing-page.md +11 -0
  243. package/docs/runkitExample.js +16 -0
  244. package/docs/setup.md +136 -0
  245. package/nfyb8qx5.cjs +1 -0
  246. package/package.json +194 -4
  247. package/src/admin/admin-bin.ts +62 -0
  248. package/src/admin/admin-plugin-types.ts +29 -0
  249. package/src/admin/admin-server.ts +619 -0
  250. package/src/admin/graphql-utils.ts +28 -0
  251. package/src/admin/mockttp-admin-model.ts +264 -0
  252. package/src/admin/mockttp-admin-plugin.ts +59 -0
  253. package/src/admin/mockttp-admin-server.ts +27 -0
  254. package/src/admin/mockttp-schema.ts +222 -0
  255. package/src/client/admin-client.ts +652 -0
  256. package/src/client/admin-query.ts +52 -0
  257. package/src/client/mocked-endpoint-client.ts +32 -0
  258. package/src/client/mockttp-admin-request-builder.ts +540 -0
  259. package/src/client/mockttp-client.ts +178 -0
  260. package/src/client/schema-introspection.ts +131 -0
  261. package/src/main.browser.ts +60 -0
  262. package/src/main.ts +160 -0
  263. package/src/mockttp.ts +926 -0
  264. package/src/pluggable-admin-api/mockttp-pluggable-admin.browser.ts +7 -0
  265. package/src/pluggable-admin-api/mockttp-pluggable-admin.ts +13 -0
  266. package/src/pluggable-admin-api/pluggable-admin.browser.ts +9 -0
  267. package/src/pluggable-admin-api/pluggable-admin.ts +36 -0
  268. package/src/rules/base-rule-builder.ts +312 -0
  269. package/src/rules/completion-checkers.ts +90 -0
  270. package/src/rules/http-agents.ts +119 -0
  271. package/src/rules/matchers.ts +665 -0
  272. package/src/rules/passthrough-handling-definitions.ts +111 -0
  273. package/src/rules/passthrough-handling.ts +376 -0
  274. package/src/rules/proxy-config.ts +136 -0
  275. package/src/rules/requests/request-handler-definitions.ts +1089 -0
  276. package/src/rules/requests/request-handlers.ts +1369 -0
  277. package/src/rules/requests/request-rule-builder.ts +481 -0
  278. package/src/rules/requests/request-rule.ts +148 -0
  279. package/src/rules/rule-deserialization.ts +55 -0
  280. package/src/rules/rule-parameters.ts +41 -0
  281. package/src/rules/rule-serialization.ts +29 -0
  282. package/src/rules/websockets/websocket-handler-definitions.ts +196 -0
  283. package/src/rules/websockets/websocket-handlers.ts +509 -0
  284. package/src/rules/websockets/websocket-rule-builder.ts +275 -0
  285. package/src/rules/websockets/websocket-rule.ts +136 -0
  286. package/src/serialization/body-serialization.ts +84 -0
  287. package/src/serialization/serialization.ts +373 -0
  288. package/src/server/http-combo-server.ts +424 -0
  289. package/src/server/mocked-endpoint.ts +44 -0
  290. package/src/server/mockttp-server.ts +1110 -0
  291. package/src/types.ts +433 -0
  292. package/src/util/buffer-utils.ts +164 -0
  293. package/src/util/dns.ts +52 -0
  294. package/src/util/error.ts +18 -0
  295. package/src/util/header-utils.ts +220 -0
  296. package/src/util/openssl-compat.ts +26 -0
  297. package/src/util/promise.ts +31 -0
  298. package/src/util/request-utils.ts +607 -0
  299. package/src/util/server-utils.ts +18 -0
  300. package/src/util/socket-util.ts +193 -0
  301. package/src/util/tls.ts +348 -0
  302. package/src/util/type-utils.ts +15 -0
  303. package/src/util/url.ts +113 -0
  304. package/src/util/util.ts +39 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-handlers.js","sourceRoot":"","sources":["../../../src/rules/requests/request-handlers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,255 @@
1
+ import { Readable } from "stream";
2
+ import { Headers, CompletedRequest, Method, MockedEndpoint, Trailers } from "../../types";
3
+ import type { RequestRuleData } from "./request-rule";
4
+ import { CallbackResponseResult, PassThroughHandlerOptions } from "./request-handler-definitions";
5
+ import { MaybePromise } from "../../util/type-utils";
6
+ import { BaseRuleBuilder } from "../base-rule-builder";
7
+ /**
8
+ * @class RequestRuleBuilder
9
+
10
+ * A builder for defining mock rules. Create one using a method like
11
+ * `.forGet(path)` or `.forPost(path)` on a Mockttp instance, then call
12
+ * whatever methods you'd like here to define more precise request
13
+ * matching behaviour, control how the request is handled, and how
14
+ * many times this rule should be applied.
15
+ *
16
+ * When you're done, call a `.thenX()` method to register the configured rule
17
+ * with the server. These return a promise for a MockedEndpoint, which can be
18
+ * used to verify the details of the requests matched by the rule.
19
+ *
20
+ * This returns a promise because rule registration can be asynchronous,
21
+ * either when using a remote server or testing in the browser. Wait for the
22
+ * promise returned by `.thenX()` methods to guarantee that the rule has taken
23
+ * effect before sending requests to it.
24
+ */
25
+ export declare class RequestRuleBuilder extends BaseRuleBuilder {
26
+ private addRule;
27
+ /**
28
+ * Mock rule builders should be constructed through the Mockttp instance you're
29
+ * using, not directly. You shouldn't ever need to call this constructor.
30
+ */
31
+ constructor(addRule: (rule: RequestRuleData) => Promise<MockedEndpoint>);
32
+ constructor(method: Method, path: string | RegExp | undefined, addRule: (rule: RequestRuleData) => Promise<MockedEndpoint>);
33
+ /**
34
+ * Reply to matched requests with a given status code and (optionally) status message,
35
+ * body, headers & trailers.
36
+ *
37
+ * If one string argument is provided, it's used as the body. If two are
38
+ * provided (even if one is empty) then the 1st is the status message, and
39
+ * the 2nd the body. If no headers are provided, only the standard required
40
+ * headers are set, e.g. Date and Transfer-Encoding.
41
+ *
42
+ * Calling this method registers the rule with the server, so it
43
+ * starts to handle requests.
44
+ *
45
+ * This method returns a promise that resolves with a mocked endpoint.
46
+ * Wait for the promise to confirm that the rule has taken effect
47
+ * before sending requests to be matched. The mocked endpoint
48
+ * can be used to assert on the requests matched by this rule.
49
+ *
50
+ * @category Responses
51
+ */
52
+ thenReply(status: number, data?: string | Buffer, headers?: Headers, trailers?: Trailers): Promise<MockedEndpoint>;
53
+ thenReply(status: number, statusMessage: string, data: string | Buffer, headers?: Headers, trailers?: Trailers): Promise<MockedEndpoint>;
54
+ /**
55
+ * Reply to matched requests with the given status & JSON and (optionally)
56
+ * extra headers.
57
+ *
58
+ * This method is (approximately) shorthand for:
59
+ * server.forGet(...).thenReply(status, JSON.stringify(data), { 'Content-Type': 'application/json' })
60
+ *
61
+ * Calling this method registers the rule with the server, so it
62
+ * starts to handle requests.
63
+ *
64
+ * This method returns a promise that resolves with a mocked endpoint.
65
+ * Wait for the promise to confirm that the rule has taken effect
66
+ * before sending requests to be matched. The mocked endpoint
67
+ * can be used to assert on the requests matched by this rule.
68
+ *
69
+ * @category Responses
70
+ */
71
+ thenJson(status: number, data: object, headers?: Headers): Promise<MockedEndpoint>;
72
+ /**
73
+ * Call the given callback for any matched requests that are received,
74
+ * and build a response from the result.
75
+ *
76
+ * The callback should return a response object with the fields as
77
+ * defined by {@link CallbackResponseMessageResult} to define the response,
78
+ * or the string 'close' to immediately close the connection. The callback
79
+ * can be asynchronous, in which case it should return this value wrapped
80
+ * in a promise.
81
+ *
82
+ * If the callback throws an exception, the server will return a 500
83
+ * with the exception message.
84
+ *
85
+ * Calling this method registers the rule with the server, so it
86
+ * starts to handle requests.
87
+ *
88
+ * This method returns a promise that resolves with a mocked endpoint.
89
+ * Wait for the promise to confirm that the rule has taken effect
90
+ * before sending requests to be matched. The mocked endpoint
91
+ * can be used to assert on the requests matched by this rule.
92
+ *
93
+ * @category Responses
94
+ */
95
+ thenCallback(callback: (request: CompletedRequest) => MaybePromise<CallbackResponseResult>): Promise<MockedEndpoint>;
96
+ /**
97
+ * Respond immediately with the given status (and optionally, headers),
98
+ * and then stream the given stream directly as the response body.
99
+ *
100
+ * Note that streams can typically only be read once, and as such
101
+ * this rule will only successfully trigger once. Subsequent requests
102
+ * will receive a 500 and an explanatory error message. To mock
103
+ * repeated requests with streams, create multiple streams and mock
104
+ * them independently.
105
+ *
106
+ * Calling this method registers the rule with the server, so it
107
+ * starts to handle requests.
108
+ *
109
+ * This method returns a promise that resolves with a mocked endpoint.
110
+ * Wait for the promise to confirm that the rule has taken effect
111
+ * before sending requests to be matched. The mocked endpoint
112
+ * can be used to assert on the requests matched by this rule.
113
+ *
114
+ * @category Responses
115
+ */
116
+ thenStream(status: number, stream: Readable, headers?: Headers): Promise<MockedEndpoint>;
117
+ /**
118
+ * Reply to matched requests with a given status code and the current contents
119
+ * of a given file. The status message and headers can also be optionally
120
+ * provided here. If no headers are provided, only the standard required
121
+ * headers are set.
122
+ *
123
+ * The file is read near-fresh for each request, and external changes to its
124
+ * content will be immediately appear in all subsequent requests.
125
+ *
126
+ * If one string argument is provided, it's used as the body file path.
127
+ * If two are provided (even if one is empty), then 1st is the status message,
128
+ * and the 2nd the body. This matches the argument order of thenReply().
129
+ *
130
+ * Calling this method registers the rule with the server, so it
131
+ * starts to handle requests.
132
+ *
133
+ * This method returns a promise that resolves with a mocked endpoint.
134
+ * Wait for the promise to confirm that the rule has taken effect
135
+ * before sending requests to be matched. The mocked endpoint
136
+ * can be used to assert on the requests matched by this rule.
137
+ *
138
+ * @category Responses
139
+ */
140
+ thenFromFile(status: number, filePath: string, headers?: Headers): Promise<MockedEndpoint>;
141
+ thenFromFile(status: number, statusMessage: string, filePath: string, headers?: Headers): Promise<MockedEndpoint>;
142
+ /**
143
+ * Pass matched requests through to their real destination. This works
144
+ * for proxied requests only, direct requests will be rejected with
145
+ * an error.
146
+ *
147
+ * This method takes options to configure how the request is passed
148
+ * through. See {@link PassThroughHandlerOptions} for the full details
149
+ * of the options available.
150
+ *
151
+ * Calling this method registers the rule with the server, so it
152
+ * starts to handle requests.
153
+ *
154
+ * This method returns a promise that resolves with a mocked endpoint.
155
+ * Wait for the promise to confirm that the rule has taken effect
156
+ * before sending requests to be matched. The mocked endpoint
157
+ * can be used to assert on the requests matched by this rule.
158
+ *
159
+ * @category Responses
160
+ */
161
+ thenPassThrough(options?: PassThroughHandlerOptions): Promise<MockedEndpoint>;
162
+ /**
163
+ * Forward matched requests on to the specified forwardToUrl. The url
164
+ * specified must not include a path. Otherwise, an error is thrown.
165
+ * The path portion of the original request url is used instead.
166
+ *
167
+ * The url may optionally contain a protocol. If it does, it will override
168
+ * the protocol (and potentially the port, if unspecified) of the request.
169
+ * If no protocol is specified, the protocol (and potentially the port)
170
+ * of the original request URL will be used instead.
171
+ *
172
+ * This method takes options to configure how the request is passed
173
+ * through. See {@link PassThroughHandlerOptions} for the full details
174
+ * of the options available.
175
+ *
176
+ * Calling this method registers the rule with the server, so it
177
+ * starts to handle requests.
178
+ *
179
+ * This method returns a promise that resolves with a mocked endpoint.
180
+ * Wait for the promise to confirm that the rule has taken effect
181
+ * before sending requests to be matched. The mocked endpoint
182
+ * can be used to assert on the requests matched by this rule.
183
+ *
184
+ * @category Responses
185
+ */
186
+ thenForwardTo(forwardToLocation: string, options?: Omit<PassThroughHandlerOptions, 'forwarding'> & {
187
+ forwarding?: Omit<PassThroughHandlerOptions['forwarding'], 'targetHost'>;
188
+ }): Promise<MockedEndpoint>;
189
+ /**
190
+ * Close connections that match this rule immediately, without
191
+ * any status code or response.
192
+ *
193
+ * Calling this method registers the rule with the server, so it
194
+ * starts to handle requests.
195
+ *
196
+ * This method returns a promise that resolves with a mocked endpoint.
197
+ * Wait for the promise to confirm that the rule has taken effect
198
+ * before sending requests to be matched. The mocked endpoint
199
+ * can be used to assert on the requests matched by this rule.
200
+ *
201
+ * @category Responses
202
+ */
203
+ thenCloseConnection(): Promise<MockedEndpoint>;
204
+ /**
205
+ * Reset connections that match this rule immediately, sending a TCP
206
+ * RST packet directly, without any status code or response, and without
207
+ * cleanly closing the TCP connection.
208
+ *
209
+ * This is only supported in Node.js versions (>=16.17, >=18.3.0, or
210
+ * later), where `net.Socket` includes the `resetAndDestroy` method.
211
+ *
212
+ * Calling this method registers the rule with the server, so it
213
+ * starts to handle requests.
214
+ *
215
+ * This method returns a promise that resolves with a mocked endpoint.
216
+ * Wait for the promise to confirm that the rule has taken effect
217
+ * before sending requests to be matched. The mocked endpoint
218
+ * can be used to assert on the requests matched by this rule.
219
+ *
220
+ * @category Responses
221
+ */
222
+ thenResetConnection(): Promise<MockedEndpoint>;
223
+ /**
224
+ * Hold open connections that match this rule, but never respond
225
+ * with anything at all, typically causing a timeout on the client side.
226
+ *
227
+ * Calling this method registers the rule with the server, so it
228
+ * starts to handle requests.
229
+ *
230
+ * This method returns a promise that resolves with a mocked endpoint.
231
+ * Wait for the promise to confirm that the rule has taken effect
232
+ * before sending requests to be matched. The mocked endpoint
233
+ * can be used to assert on the requests matched by this rule.
234
+ *
235
+ * @category Responses
236
+ */
237
+ thenTimeout(): Promise<MockedEndpoint>;
238
+ /**
239
+ * Send a successful JSON-RPC response to a JSON-RPC request. The response data
240
+ * can be any JSON-serializable value. If a matching request is received that
241
+ * is not a valid JSON-RPC request, it will be rejected with an HTTP error.
242
+ *
243
+ * @category Responses
244
+ */
245
+ thenSendJsonRpcResult(result: any): Promise<MockedEndpoint>;
246
+ /**
247
+ * Send a failing error JSON-RPC response to a JSON-RPC request. The error data
248
+ * can be any JSON-serializable value. If a matching request is received that
249
+ * is not a valid JSON-RPC request, it will be rejected with an HTTP error.
250
+ *
251
+ * @category Responses
252
+ */
253
+ thenSendJsonRpcError(error: any): Promise<MockedEndpoint>;
254
+ }
255
+ //# sourceMappingURL=request-rule-builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-rule-builder.d.ts","sourceRoot":"","sources":["../../../src/rules/requests/request-rule-builder.ts"],"names":[],"mappings":"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"}