@n1k1t/mock-server 0.1.1 → 0.1.2

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 (350) hide show
  1. package/lib/package.json +3 -2
  2. package/lib/src/client/helpers/expectations.d.ts +91 -0
  3. package/lib/src/client/helpers/expectations.d.ts.map +1 -0
  4. package/lib/src/client/helpers/expectations.js +66 -0
  5. package/lib/src/client/helpers/expectations.js.map +1 -0
  6. package/lib/src/client/helpers/index.d.ts +2 -0
  7. package/lib/src/client/helpers/index.d.ts.map +1 -0
  8. package/lib/src/client/helpers/index.js +18 -0
  9. package/lib/src/client/helpers/index.js.map +1 -0
  10. package/lib/src/client/index.d.ts +1 -0
  11. package/lib/src/client/index.d.ts.map +1 -1
  12. package/lib/src/client/index.js +1 -0
  13. package/lib/src/client/index.js.map +1 -1
  14. package/lib/src/client/methods/expectations.create.method.d.ts +1 -3
  15. package/lib/src/client/methods/expectations.create.method.d.ts.map +1 -1
  16. package/lib/src/client/methods/expectations.create.method.js +2 -2
  17. package/lib/src/client/methods/expectations.create.method.js.map +1 -1
  18. package/lib/src/client/methods/expectations.update.method.d.ts +2 -2
  19. package/lib/src/client/methods/expectations.update.method.js +5 -5
  20. package/lib/src/client/methods/expectations.update.method.js.map +1 -1
  21. package/lib/src/client/methods/ping.method.d.ts +1 -1
  22. package/lib/src/client/methods/ping.method.js.map +1 -1
  23. package/lib/src/client/models/client.d.ts +40 -0
  24. package/lib/src/client/models/client.d.ts.map +1 -0
  25. package/lib/src/client/models/client.js +33 -0
  26. package/lib/src/client/models/client.js.map +1 -0
  27. package/lib/src/client/models/client.spec.d.ts +2 -0
  28. package/lib/src/client/models/client.spec.d.ts.map +1 -0
  29. package/lib/src/client/models/client.spec.js +219 -0
  30. package/lib/src/client/models/client.spec.js.map +1 -0
  31. package/lib/src/client/models/index.d.ts +1 -0
  32. package/lib/src/client/models/index.d.ts.map +1 -1
  33. package/lib/src/client/models/index.js +1 -0
  34. package/lib/src/client/models/index.js.map +1 -1
  35. package/lib/src/client/models/method.d.ts +4 -4
  36. package/lib/src/client/models/method.d.ts.map +1 -1
  37. package/lib/src/client/models/method.js.map +1 -1
  38. package/lib/src/client/onsite.d.ts +4 -3
  39. package/lib/src/client/onsite.d.ts.map +1 -1
  40. package/lib/src/client/onsite.js +8 -6
  41. package/lib/src/client/onsite.js.map +1 -1
  42. package/lib/src/client/remote.d.ts +4 -4
  43. package/lib/src/client/remote.d.ts.map +1 -1
  44. package/lib/src/client/remote.js +11 -10
  45. package/lib/src/client/remote.js.map +1 -1
  46. package/lib/src/client/types.d.ts +2 -0
  47. package/lib/src/client/types.d.ts.map +1 -1
  48. package/lib/src/client/utils.d.ts +2 -2
  49. package/lib/src/client/utils.d.ts.map +1 -1
  50. package/lib/src/client/utils.js +25 -12
  51. package/lib/src/client/utils.js.map +1 -1
  52. package/lib/src/expectations/__utils__/index.d.ts +2 -2
  53. package/lib/src/expectations/__utils__/index.d.ts.map +1 -1
  54. package/lib/src/expectations/__utils__/index.js +31 -23
  55. package/lib/src/expectations/__utils__/index.js.map +1 -1
  56. package/lib/src/expectations/index.d.ts +1 -2
  57. package/lib/src/expectations/index.d.ts.map +1 -1
  58. package/lib/src/expectations/index.js +1 -2
  59. package/lib/src/expectations/index.js.map +1 -1
  60. package/lib/src/expectations/models/expectation.d.ts +35 -0
  61. package/lib/src/expectations/models/expectation.d.ts.map +1 -0
  62. package/lib/src/expectations/models/expectation.js +113 -0
  63. package/lib/src/expectations/models/expectation.js.map +1 -0
  64. package/lib/src/expectations/models/index.d.ts +4 -0
  65. package/lib/src/expectations/models/index.d.ts.map +1 -0
  66. package/lib/src/expectations/models/index.js +20 -0
  67. package/lib/src/expectations/models/index.js.map +1 -0
  68. package/lib/src/expectations/models/operator.d.ts +20 -0
  69. package/lib/src/expectations/models/operator.d.ts.map +1 -0
  70. package/lib/src/expectations/models/operator.js +41 -0
  71. package/lib/src/expectations/models/operator.js.map +1 -0
  72. package/lib/src/expectations/models/storage.d.ts +15 -0
  73. package/lib/src/expectations/models/storage.d.ts.map +1 -0
  74. package/lib/src/expectations/{storage.js → models/storage.js} +4 -14
  75. package/lib/src/expectations/models/storage.js.map +1 -0
  76. package/lib/src/expectations/models/storage.spec.d.ts +2 -0
  77. package/lib/src/expectations/models/storage.spec.d.ts.map +1 -0
  78. package/lib/src/expectations/models/storage.spec.js +111 -0
  79. package/lib/src/expectations/models/storage.spec.js.map +1 -0
  80. package/lib/src/expectations/operators/and.operator.d.ts +7 -2
  81. package/lib/src/expectations/operators/and.operator.d.ts.map +1 -1
  82. package/lib/src/expectations/operators/and.operator.js +21 -2
  83. package/lib/src/expectations/operators/and.operator.js.map +1 -1
  84. package/lib/src/expectations/operators/and.operator.spec.js +57 -39
  85. package/lib/src/expectations/operators/and.operator.spec.js.map +1 -1
  86. package/lib/src/expectations/operators/exec.operator.d.ts +7 -2
  87. package/lib/src/expectations/operators/exec.operator.d.ts.map +1 -1
  88. package/lib/src/expectations/operators/exec.operator.js +13 -18
  89. package/lib/src/expectations/operators/exec.operator.js.map +1 -1
  90. package/lib/src/expectations/operators/exec.operator.spec.js +49 -18
  91. package/lib/src/expectations/operators/exec.operator.spec.js.map +1 -1
  92. package/lib/src/expectations/operators/has.operator.d.ts +27 -2
  93. package/lib/src/expectations/operators/has.operator.d.ts.map +1 -1
  94. package/lib/src/expectations/operators/has.operator.js +106 -70
  95. package/lib/src/expectations/operators/has.operator.js.map +1 -1
  96. package/lib/src/expectations/operators/has.operator.spec.js +422 -161
  97. package/lib/src/expectations/operators/has.operator.spec.js.map +1 -1
  98. package/lib/src/expectations/operators/if.operator.d.ts +15 -2
  99. package/lib/src/expectations/operators/if.operator.d.ts.map +1 -1
  100. package/lib/src/expectations/operators/if.operator.js +44 -10
  101. package/lib/src/expectations/operators/if.operator.js.map +1 -1
  102. package/lib/src/expectations/operators/if.operator.spec.js +89 -65
  103. package/lib/src/expectations/operators/if.operator.spec.js.map +1 -1
  104. package/lib/src/expectations/operators/index.d.ts +2 -0
  105. package/lib/src/expectations/operators/index.d.ts.map +1 -1
  106. package/lib/src/expectations/operators/index.js +5 -1
  107. package/lib/src/expectations/operators/index.js.map +1 -1
  108. package/lib/src/expectations/operators/merge.operator.d.ts +13 -2
  109. package/lib/src/expectations/operators/merge.operator.d.ts.map +1 -1
  110. package/lib/src/expectations/operators/merge.operator.js +23 -19
  111. package/lib/src/expectations/operators/merge.operator.js.map +1 -1
  112. package/lib/src/expectations/operators/merge.operator.spec.js +43 -33
  113. package/lib/src/expectations/operators/merge.operator.spec.js.map +1 -1
  114. package/lib/src/expectations/operators/not.operator.d.ts +7 -2
  115. package/lib/src/expectations/operators/not.operator.d.ts.map +1 -1
  116. package/lib/src/expectations/operators/not.operator.js +21 -2
  117. package/lib/src/expectations/operators/not.operator.js.map +1 -1
  118. package/lib/src/expectations/operators/not.operator.spec.js +28 -9
  119. package/lib/src/expectations/operators/not.operator.spec.js.map +1 -1
  120. package/lib/src/expectations/operators/or.operator.d.ts +7 -2
  121. package/lib/src/expectations/operators/or.operator.d.ts.map +1 -1
  122. package/lib/src/expectations/operators/or.operator.js +21 -6
  123. package/lib/src/expectations/operators/or.operator.js.map +1 -1
  124. package/lib/src/expectations/operators/or.operator.spec.js +58 -39
  125. package/lib/src/expectations/operators/or.operator.spec.js.map +1 -1
  126. package/lib/src/expectations/operators/remove.operator.d.ts +12 -2
  127. package/lib/src/expectations/operators/remove.operator.d.ts.map +1 -1
  128. package/lib/src/expectations/operators/remove.operator.js +22 -17
  129. package/lib/src/expectations/operators/remove.operator.js.map +1 -1
  130. package/lib/src/expectations/operators/remove.operator.spec.js +40 -28
  131. package/lib/src/expectations/operators/remove.operator.spec.js.map +1 -1
  132. package/lib/src/expectations/operators/root.operator.d.ts +8 -0
  133. package/lib/src/expectations/operators/root.operator.d.ts.map +1 -0
  134. package/lib/src/expectations/operators/root.operator.js +36 -0
  135. package/lib/src/expectations/operators/root.operator.js.map +1 -0
  136. package/lib/src/expectations/operators/set.operator.d.ts +20 -2
  137. package/lib/src/expectations/operators/set.operator.d.ts.map +1 -1
  138. package/lib/src/expectations/operators/set.operator.js +40 -23
  139. package/lib/src/expectations/operators/set.operator.js.map +1 -1
  140. package/lib/src/expectations/operators/set.operator.spec.js +87 -43
  141. package/lib/src/expectations/operators/set.operator.spec.js.map +1 -1
  142. package/lib/src/expectations/operators/switch.operator.d.ts +25 -0
  143. package/lib/src/expectations/operators/switch.operator.d.ts.map +1 -0
  144. package/lib/src/expectations/operators/switch.operator.js +68 -0
  145. package/lib/src/expectations/operators/switch.operator.js.map +1 -0
  146. package/lib/src/expectations/operators/switch.operator.spec.d.ts +2 -0
  147. package/lib/src/expectations/operators/switch.operator.spec.d.ts.map +1 -0
  148. package/lib/src/expectations/operators/switch.operator.spec.js +129 -0
  149. package/lib/src/expectations/operators/switch.operator.spec.js.map +1 -0
  150. package/lib/src/expectations/types.d.ts +55 -56
  151. package/lib/src/expectations/types.d.ts.map +1 -1
  152. package/lib/src/expectations/types.js +13 -2
  153. package/lib/src/expectations/types.js.map +1 -1
  154. package/lib/src/expectations/utils.d.ts +19 -7
  155. package/lib/src/expectations/utils.d.ts.map +1 -1
  156. package/lib/src/expectations/utils.js +77 -50
  157. package/lib/src/expectations/utils.js.map +1 -1
  158. package/lib/src/server/endpoints/config.get.endpoint.d.ts +8 -3
  159. package/lib/src/server/endpoints/config.get.endpoint.d.ts.map +1 -1
  160. package/lib/src/server/endpoints/config.get.endpoint.js +2 -4
  161. package/lib/src/server/endpoints/config.get.endpoint.js.map +1 -1
  162. package/lib/src/server/endpoints/expectations.create.endpoint.d.ts +9 -11
  163. package/lib/src/server/endpoints/expectations.create.endpoint.d.ts.map +1 -1
  164. package/lib/src/server/endpoints/expectations.create.endpoint.js +2 -3
  165. package/lib/src/server/endpoints/expectations.create.endpoint.js.map +1 -1
  166. package/lib/src/server/endpoints/expectations.delete.endpoint.d.ts +8 -5
  167. package/lib/src/server/endpoints/expectations.delete.endpoint.d.ts.map +1 -1
  168. package/lib/src/server/endpoints/expectations.delete.endpoint.js +2 -2
  169. package/lib/src/server/endpoints/expectations.delete.endpoint.js.map +1 -1
  170. package/lib/src/server/endpoints/expectations.get-list.endpoint.d.ts +8 -3
  171. package/lib/src/server/endpoints/expectations.get-list.endpoint.d.ts.map +1 -1
  172. package/lib/src/server/endpoints/expectations.get-list.endpoint.js +2 -2
  173. package/lib/src/server/endpoints/expectations.get-list.endpoint.js.map +1 -1
  174. package/lib/src/server/endpoints/expectations.update.endpoint.d.ts +13 -11
  175. package/lib/src/server/endpoints/expectations.update.endpoint.d.ts.map +1 -1
  176. package/lib/src/server/endpoints/expectations.update.endpoint.js +4 -6
  177. package/lib/src/server/endpoints/expectations.update.endpoint.js.map +1 -1
  178. package/lib/src/server/endpoints/history.get-list.endpoint.d.ts +27 -0
  179. package/lib/src/server/endpoints/history.get-list.endpoint.d.ts.map +1 -0
  180. package/lib/src/server/endpoints/history.get-list.endpoint.js +11 -0
  181. package/lib/src/server/endpoints/history.get-list.endpoint.js.map +1 -0
  182. package/lib/src/server/endpoints/index.d.ts +1 -1
  183. package/lib/src/server/endpoints/index.d.ts.map +1 -1
  184. package/lib/src/server/endpoints/index.js +3 -3
  185. package/lib/src/server/endpoints/index.js.map +1 -1
  186. package/lib/src/server/endpoints/ping.endpoint.d.ts +8 -3
  187. package/lib/src/server/endpoints/ping.endpoint.d.ts.map +1 -1
  188. package/lib/src/server/endpoints/ping.endpoint.js +1 -1
  189. package/lib/src/server/endpoints/ping.endpoint.js.map +1 -1
  190. package/lib/src/server/history/model.d.ts +16 -16
  191. package/lib/src/server/history/model.d.ts.map +1 -1
  192. package/lib/src/server/history/model.js +21 -6
  193. package/lib/src/server/history/model.js.map +1 -1
  194. package/lib/src/server/history/storage.d.ts +3 -4
  195. package/lib/src/server/history/storage.d.ts.map +1 -1
  196. package/lib/src/server/history/storage.js +2 -2
  197. package/lib/src/server/history/storage.js.map +1 -1
  198. package/lib/src/server/index.d.ts +10 -6
  199. package/lib/src/server/index.d.ts.map +1 -1
  200. package/lib/src/server/index.js +9 -18
  201. package/lib/src/server/index.js.map +1 -1
  202. package/lib/src/server/middlewares/add-history.middleware.d.ts +14 -4
  203. package/lib/src/server/middlewares/add-history.middleware.d.ts.map +1 -1
  204. package/lib/src/server/middlewares/add-history.middleware.js +5 -6
  205. package/lib/src/server/middlewares/add-history.middleware.js.map +1 -1
  206. package/lib/src/server/middlewares/destroy-request.midleware.d.ts +14 -4
  207. package/lib/src/server/middlewares/destroy-request.midleware.d.ts.map +1 -1
  208. package/lib/src/server/middlewares/destroy-request.midleware.js +4 -5
  209. package/lib/src/server/middlewares/destroy-request.midleware.js.map +1 -1
  210. package/lib/src/server/middlewares/handle-expectation-delay.middleware.d.ts +14 -4
  211. package/lib/src/server/middlewares/handle-expectation-delay.middleware.d.ts.map +1 -1
  212. package/lib/src/server/middlewares/handle-expectation-delay.middleware.js +1 -2
  213. package/lib/src/server/middlewares/handle-expectation-delay.middleware.js.map +1 -1
  214. package/lib/src/server/middlewares/handle-expectation-forward.middleware.d.ts +14 -4
  215. package/lib/src/server/middlewares/handle-expectation-forward.middleware.d.ts.map +1 -1
  216. package/lib/src/server/middlewares/handle-expectation-forward.middleware.js +31 -45
  217. package/lib/src/server/middlewares/handle-expectation-forward.middleware.js.map +1 -1
  218. package/lib/src/server/middlewares/index.d.ts +4 -4
  219. package/lib/src/server/middlewares/index.d.ts.map +1 -1
  220. package/lib/src/server/middlewares/index.js +9 -9
  221. package/lib/src/server/middlewares/index.js.map +1 -1
  222. package/lib/src/server/middlewares/internal-route.middleware.d.ts +14 -2
  223. package/lib/src/server/middlewares/internal-route.middleware.d.ts.map +1 -1
  224. package/lib/src/server/middlewares/internal-route.middleware.js +4 -3
  225. package/lib/src/server/middlewares/internal-route.middleware.js.map +1 -1
  226. package/lib/src/server/middlewares/match-expectation.middleware.d.ts +18 -0
  227. package/lib/src/server/middlewares/match-expectation.middleware.d.ts.map +1 -0
  228. package/lib/src/server/middlewares/match-expectation.middleware.js +20 -0
  229. package/lib/src/server/middlewares/match-expectation.middleware.js.map +1 -0
  230. package/lib/src/server/middlewares/reply.middleware.d.ts +15 -5
  231. package/lib/src/server/middlewares/reply.middleware.d.ts.map +1 -1
  232. package/lib/src/server/middlewares/reply.middleware.js +34 -25
  233. package/lib/src/server/middlewares/reply.middleware.js.map +1 -1
  234. package/lib/src/server/middlewares/resolve-public.middleware.d.ts +14 -2
  235. package/lib/src/server/middlewares/resolve-public.middleware.d.ts.map +1 -1
  236. package/lib/src/server/middlewares/resolve-public.middleware.js +11 -11
  237. package/lib/src/server/middlewares/resolve-public.middleware.js.map +1 -1
  238. package/lib/src/server/models/endpoint.d.ts +19 -13
  239. package/lib/src/server/models/endpoint.d.ts.map +1 -1
  240. package/lib/src/server/models/endpoint.js +2 -2
  241. package/lib/src/server/models/endpoint.js.map +1 -1
  242. package/lib/src/server/models/middleware.d.ts +18 -20
  243. package/lib/src/server/models/middleware.d.ts.map +1 -1
  244. package/lib/src/server/models/middleware.js +6 -10
  245. package/lib/src/server/models/middleware.js.map +1 -1
  246. package/lib/src/server/models/reply-service/index.d.ts +6 -6
  247. package/lib/src/server/models/reply-service/index.d.ts.map +1 -1
  248. package/lib/src/server/models/reply-service/index.js +24 -24
  249. package/lib/src/server/models/reply-service/index.js.map +1 -1
  250. package/lib/src/server/models/request-context/http.d.ts +42 -0
  251. package/lib/src/server/models/request-context/http.d.ts.map +1 -0
  252. package/lib/src/server/models/request-context/http.js +51 -0
  253. package/lib/src/server/models/request-context/http.js.map +1 -0
  254. package/lib/src/server/models/request-context/index.d.ts +4 -57
  255. package/lib/src/server/models/request-context/index.d.ts.map +1 -1
  256. package/lib/src/server/models/request-context/index.js +4 -57
  257. package/lib/src/server/models/request-context/index.js.map +1 -1
  258. package/lib/src/server/models/request-context/model.d.ts +13 -0
  259. package/lib/src/server/models/request-context/model.d.ts.map +1 -0
  260. package/lib/src/server/models/request-context/model.js +14 -0
  261. package/lib/src/server/models/request-context/model.js.map +1 -0
  262. package/lib/src/server/models/request-context/types.d.ts +14 -18
  263. package/lib/src/server/models/request-context/types.d.ts.map +1 -1
  264. package/lib/src/server/models/request-context/utils.d.ts +7 -3
  265. package/lib/src/server/models/request-context/utils.d.ts.map +1 -1
  266. package/lib/src/server/models/request-context/utils.js +48 -25
  267. package/lib/src/server/models/request-context/utils.js.map +1 -1
  268. package/lib/src/server/models/request-context/ws.d.ts +21 -0
  269. package/lib/src/server/models/request-context/ws.d.ts.map +1 -0
  270. package/lib/src/server/models/request-context/ws.js +22 -0
  271. package/lib/src/server/models/request-context/ws.js.map +1 -0
  272. package/lib/src/server/models/server-context.d.ts +4 -4
  273. package/lib/src/server/models/server-context.d.ts.map +1 -1
  274. package/lib/src/server/models/server-context.js +5 -5
  275. package/lib/src/server/models/server-context.js.map +1 -1
  276. package/lib/src/server/router.d.ts +4 -7
  277. package/lib/src/server/router.d.ts.map +1 -1
  278. package/lib/src/server/router.js +5 -12
  279. package/lib/src/server/router.js.map +1 -1
  280. package/lib/src/server/ws-exchange/index.d.ts +5 -0
  281. package/lib/src/server/ws-exchange/index.d.ts.map +1 -0
  282. package/lib/src/server/{web-socket-exchange → ws-exchange}/index.js +3 -3
  283. package/lib/src/server/ws-exchange/index.js.map +1 -0
  284. package/lib/src/server/ws-exchange/types.d.ts +12 -0
  285. package/lib/src/server/ws-exchange/types.d.ts.map +1 -0
  286. package/lib/src/server/ws-exchange/types.js.map +1 -0
  287. package/lib/src/types.d.ts +0 -1
  288. package/lib/src/types.d.ts.map +1 -1
  289. package/lib/src/utils/index.d.ts +1 -0
  290. package/lib/src/utils/index.d.ts.map +1 -1
  291. package/lib/src/utils/index.js +1 -0
  292. package/lib/src/utils/index.js.map +1 -1
  293. package/lib/src/utils/json.d.ts +1 -1
  294. package/lib/src/utils/json.d.ts.map +1 -1
  295. package/lib/src/utils/json.js +3 -3
  296. package/lib/src/utils/json.js.map +1 -1
  297. package/lib/src/utils/regexp.d.ts +2 -0
  298. package/lib/src/utils/regexp.d.ts.map +1 -0
  299. package/lib/src/utils/regexp.js +9 -0
  300. package/lib/src/utils/regexp.js.map +1 -0
  301. package/lib/test/index.js +105 -137
  302. package/lib/test/index.js.map +1 -1
  303. package/lib/tsconfig.tsbuildinfo +1 -1
  304. package/lib/types/common.global.d.ts +13 -6
  305. package/lib/types/common.global.d.ts.map +1 -1
  306. package/lib/types/lib.d.ts +1 -0
  307. package/lib/types/lib.d.ts.map +1 -1
  308. package/lib/types/lib.js +1 -0
  309. package/lib/types/lib.js.map +1 -1
  310. package/package.json +3 -2
  311. package/types/common.global.ts +21 -2
  312. package/types/lib.ts +1 -0
  313. package/lib/src/expectations/model.d.ts +0 -39
  314. package/lib/src/expectations/model.d.ts.map +0 -1
  315. package/lib/src/expectations/model.js +0 -90
  316. package/lib/src/expectations/model.js.map +0 -1
  317. package/lib/src/expectations/operators/utils.d.ts +0 -20
  318. package/lib/src/expectations/operators/utils.d.ts.map +0 -1
  319. package/lib/src/expectations/operators/utils.js +0 -67
  320. package/lib/src/expectations/operators/utils.js.map +0 -1
  321. package/lib/src/expectations/storage.d.ts +0 -19
  322. package/lib/src/expectations/storage.d.ts.map +0 -1
  323. package/lib/src/expectations/storage.js.map +0 -1
  324. package/lib/src/expectations/utils.spec.d.ts +0 -2
  325. package/lib/src/expectations/utils.spec.d.ts.map +0 -1
  326. package/lib/src/expectations/utils.spec.js +0 -59
  327. package/lib/src/expectations/utils.spec.js.map +0 -1
  328. package/lib/src/expectations/validation-schemas.d.ts +0 -14
  329. package/lib/src/expectations/validation-schemas.d.ts.map +0 -1
  330. package/lib/src/expectations/validation-schemas.js +0 -36
  331. package/lib/src/expectations/validation-schemas.js.map +0 -1
  332. package/lib/src/server/endpoints/history-records.get-list.endpoint.d.ts +0 -16
  333. package/lib/src/server/endpoints/history-records.get-list.endpoint.d.ts.map +0 -1
  334. package/lib/src/server/endpoints/history-records.get-list.endpoint.js +0 -9
  335. package/lib/src/server/endpoints/history-records.get-list.endpoint.js.map +0 -1
  336. package/lib/src/server/middlewares/validate-expectation-request.middleware.d.ts +0 -6
  337. package/lib/src/server/middlewares/validate-expectation-request.middleware.d.ts.map +0 -1
  338. package/lib/src/server/middlewares/validate-expectation-request.middleware.js +0 -20
  339. package/lib/src/server/middlewares/validate-expectation-request.middleware.js.map +0 -1
  340. package/lib/src/server/types.d.ts +0 -6
  341. package/lib/src/server/types.d.ts.map +0 -1
  342. package/lib/src/server/types.js.map +0 -1
  343. package/lib/src/server/web-socket-exchange/index.d.ts +0 -5
  344. package/lib/src/server/web-socket-exchange/index.d.ts.map +0 -1
  345. package/lib/src/server/web-socket-exchange/index.js.map +0 -1
  346. package/lib/src/server/web-socket-exchange/types.d.ts +0 -12
  347. package/lib/src/server/web-socket-exchange/types.d.ts.map +0 -1
  348. package/lib/src/server/web-socket-exchange/types.js +0 -3
  349. package/lib/src/server/web-socket-exchange/types.js.map +0 -1
  350. /package/lib/src/server/{types.js → ws-exchange/types.js} +0 -0
package/lib/test/index.js CHANGED
@@ -7,150 +7,118 @@ const port = 13000;
7
7
  const server = await index_1.MockServer.start({ host, port });
8
8
  const client = await index_1.RemoteClient.connect({ host, port });
9
9
  await client.deleteExpectations();
10
- await client.createExpectation({
11
- delay: {
12
- ms: 500,
13
- },
14
- request: {
15
- $and: [
16
- {
17
- $has: {
18
- $location: 'path',
19
- $value: '/foo',
20
- // $minimatchAnyOf: ['*/foo/*', '*/bar/*'],
21
- },
22
- },
23
- {
24
- $has: {
25
- $location: 'method',
26
- $value: 'POST',
10
+ await client.createExpectation(({ $ }) => ({
11
+ schema: {
12
+ request: $.and([
13
+ $.has('method', { $value: 'GET' }),
14
+ $.has('path', { $match: '/generat*on' }),
15
+ $.has('incoming.query', '$path', 'foo', { $valueAnyOf: ['a', 'b', 'c'] }),
16
+ $.exec(({ context }) => context.incoming.headers['content-type'] === 'application/json'),
17
+ ]),
18
+ response: $.and([
19
+ $.set('outgoing.data', { $value: {} }),
20
+ $.switch('incoming.query', '$path', 'foo', {
21
+ $cases: {
22
+ 'a': $.and([
23
+ $.set('outgoing.status', { $value: 201 }),
24
+ $.set('outgoing.data', '$path', 'bar.baz', { $value: 'a' }),
25
+ ]),
26
+ 'b': $.merge('outgoing.data', '$path', 'bar', { $value: { baz: 'b' } }),
27
27
  },
28
- },
29
- ],
28
+ $default: $.and([
29
+ $.set('outgoing.status', { $value: 400 }),
30
+ $.set('outgoing.data', '$path', 'bar.baz', { $value: 'c' }),
31
+ ]),
32
+ }),
33
+ $.exec(({ context }) => {
34
+ context.outgoing.headers['x-mock-entity'] = String(Date.now());
35
+ switch (context.incoming.query.foo) {
36
+ case 'a': return context.outgoing.data.foo = 100;
37
+ case 'b': return context.outgoing.data.foo = 200;
38
+ case 'c': return context.outgoing.data.foo = 300;
39
+ }
40
+ }),
41
+ ]),
30
42
  },
31
- response: {
32
- $and: [
33
- {
34
- $set: {
35
- $location: 'headers',
36
- $path: 'Content-Type',
37
- $value: 'application/json',
38
- },
39
- },
40
- {
41
- $exec: ({ _, context }) => {
42
- console.log(123);
43
- context.statusCode = 504;
44
- // context.data = context.body?.map((segment, index) => ({ segment, index }));
45
- },
46
- },
47
- ],
43
+ }));
44
+ await server.client.createExpectation(({ $ }) => ({
45
+ schema: {
46
+ request: $.and([
47
+ $.has('path', { $matchAnyOf: ['/gen*ration'] }),
48
+ $.exec(({ context }) => context.incoming.headers['content-type'] === 'application/xml'),
49
+ ]),
50
+ response: $.and([
51
+ $.set('outgoing.data', { $value: '<tag type="default"></tag>' }),
52
+ $.set('outgoing.headers', '$path', 'content-type', { $value: 'application/xml' }),
53
+ $.if({
54
+ $condition: $.not($.has('incoming.query', '$path', 'foo', { $value: 'a' })),
55
+ $then: $.and([
56
+ $.set('outgoing.status', { $value: 201 }),
57
+ $.set('outgoing.data', { $value: '<tag type="custom"></tag>' }),
58
+ ]),
59
+ }),
60
+ ]),
48
61
  },
49
- });
50
- await server.client.createExpectation({
51
- isEnabled: false,
52
- request: {
53
- $exec: ({ _, context }) => {
54
- context.query = { a: 2 };
62
+ }));
63
+ await client.createExpectation(({ $ }) => ({
64
+ schema: {
65
+ request: $.and([
66
+ $.has('incoming.headers', '$path', 'x-use-mock', { $value: 'true' }),
67
+ $.has('path', { $regExp: /^\/forward\/*./ }),
68
+ $.exec(({ context }) => {
69
+ context.incoming.path = context.incoming.path.replace('/forward', '');
70
+ return true;
71
+ }),
72
+ ]),
73
+ forward: {
74
+ baseUrl: 'http://localhost:17188/_papi/v1/maintenance',
75
+ timeout: 2000,
55
76
  },
56
- $and: [
57
- {
58
- $has: {
59
- $location: 'method',
60
- $valueAnyOf: ['POST', 'GET'],
61
- },
62
- },
63
- {
64
- $has: {
65
- $location: 'path',
66
- $minimatchAnyOf: ['shit', '/si*le'],
67
- },
68
- },
69
- {
70
- $has: {
71
- $location: 'headers',
72
- $path: 'test',
73
- $valueAnyOf: ['1;2;3', '1,2,3'],
74
- $regExp: /123/,
75
- },
76
- },
77
- {
78
- $has: {
79
- $location: 'body',
80
- $jsonPath: '$.array[?(@.b == "2" && @.a == 1)]',
81
- },
82
- },
83
- ],
84
77
  },
85
- response: {
86
- $and: [
87
- {
88
- $set: {
89
- $location: 'data',
90
- $value: { test: true },
91
- },
92
- },
93
- {
94
- $set: {
95
- $location: 'statusCode',
96
- $value: 200,
97
- },
98
- },
99
- ],
100
- },
101
- delay: {
102
- ms: 2000,
103
- },
104
- });
105
- await client.createExpectation({
106
- destroy: 'ECONNABORTED',
107
- request: {
108
- $and: [
109
- {
110
- $has: {
111
- $location: 'method',
112
- $value: 'GET',
113
- },
114
- },
115
- {
116
- $has: {
117
- $location: 'path',
118
- $value: '/simple/error',
119
- },
120
- },
121
- ]
122
- },
123
- response: {
124
- $and: [
125
- {
126
- $set: {
127
- $location: 'data',
128
- $path: 'result',
129
- $value: { failure: true },
130
- },
131
- },
132
- {
133
- $set: {
134
- $location: 'statusCode',
135
- $value: 400,
136
- },
137
- },
138
- ],
78
+ }));
79
+ await client.createExpectation(({ $ }) => ({
80
+ schema: {
81
+ request: $.and([
82
+ $.has('method', { $value: 'POST' }),
83
+ $.has('path', { $valueAnyOf: ['/deep-matching'] }),
84
+ $.or([
85
+ $.has('incoming.body', { $match: { foo: { bar: {} } } }),
86
+ $.has('incoming.body', { $match: { foo: { baz: 1 } } }),
87
+ ]),
88
+ ]),
89
+ response: $.and([
90
+ $.set('outgoing.status', { $value: 201 }),
91
+ $.set('outgoing.data', { $value: ['How match is the fish?'] }),
92
+ $.if({
93
+ $condition: $.has('incoming.body', '$path', 'foo.bar.baz', { $value: 'a' }),
94
+ $then: $.set('outgoing.data', { $value: ['Matched'] }),
95
+ }),
96
+ ]),
139
97
  },
140
- });
141
- await client.createExpectation({
142
- request: {
143
- $has: {
144
- $location: 'method',
145
- $valueAnyOf: ['PATCH', 'GET'],
98
+ }));
99
+ await server.client.createExpectation(({ $ }) => ({
100
+ schema: {
101
+ request: $.and([
102
+ $.has('path', { $value: '/forward/papi' }),
103
+ $.exec(({ context }) => context.incoming.headers['content-type'] === 'application/json'),
104
+ ]),
105
+ response: $.and([
106
+ $.if({
107
+ $condition: $.has('incoming.query', '$path', 'foo', { $value: 'a' }),
108
+ $then: $.merge('outgoing.data', '$path', 'data', { $value: { options: { has_mocked_by: 'John Cena' } } }),
109
+ }),
110
+ $.if({
111
+ $condition: $.has('incoming.query', '$path', 'foo', { $value: 'b' }),
112
+ $then: $.and([
113
+ $.remove('outgoing.data', {}),
114
+ $.set('outgoing.dataRaw', { $value: '["What the f*ck"]' }),
115
+ ]),
116
+ }),
117
+ ]),
118
+ forward: {
119
+ url: 'http://localhost:17188/_papi/v1/maintenance/stats',
146
120
  },
147
121
  },
148
- forward: {
149
- protocol: 'HTTPS',
150
- port: 443,
151
- host: 'google.com',
152
- timeout: 5000
153
- }
154
- });
122
+ }));
155
123
  })();
156
124
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../test/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../test/index.ts"],"names":[],"mappings":"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"}