@n1k1t/mock-server 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.
Files changed (395) hide show
  1. package/README.md +61 -0
  2. package/lib/package.json +77 -0
  3. package/lib/src/cli.d.ts +2 -0
  4. package/lib/src/cli.d.ts.map +1 -0
  5. package/lib/src/cli.js +33 -0
  6. package/lib/src/cli.js.map +1 -0
  7. package/lib/src/client/errors/connection.error.d.ts +6 -0
  8. package/lib/src/client/errors/connection.error.d.ts.map +1 -0
  9. package/lib/src/client/errors/connection.error.js +11 -0
  10. package/lib/src/client/errors/connection.error.js.map +1 -0
  11. package/lib/src/client/errors/index.d.ts +4 -0
  12. package/lib/src/client/errors/index.d.ts.map +1 -0
  13. package/lib/src/client/errors/index.js +20 -0
  14. package/lib/src/client/errors/index.js.map +1 -0
  15. package/lib/src/client/errors/internal-server.error.d.ts +6 -0
  16. package/lib/src/client/errors/internal-server.error.d.ts.map +1 -0
  17. package/lib/src/client/errors/internal-server.error.js +11 -0
  18. package/lib/src/client/errors/internal-server.error.js.map +1 -0
  19. package/lib/src/client/errors/types.d.ts +4 -0
  20. package/lib/src/client/errors/types.d.ts.map +1 -0
  21. package/lib/src/client/errors/types.js +3 -0
  22. package/lib/src/client/errors/types.js.map +1 -0
  23. package/lib/src/client/errors/validation.error.d.ts +7 -0
  24. package/lib/src/client/errors/validation.error.d.ts.map +1 -0
  25. package/lib/src/client/errors/validation.error.js +12 -0
  26. package/lib/src/client/errors/validation.error.js.map +1 -0
  27. package/lib/src/client/index.d.ts +9 -0
  28. package/lib/src/client/index.d.ts.map +1 -0
  29. package/lib/src/client/index.js +59 -0
  30. package/lib/src/client/index.js.map +1 -0
  31. package/lib/src/client/methods/expectations/create.method.d.ts +6 -0
  32. package/lib/src/client/methods/expectations/create.method.d.ts.map +1 -0
  33. package/lib/src/client/methods/expectations/create.method.js +13 -0
  34. package/lib/src/client/methods/expectations/create.method.js.map +1 -0
  35. package/lib/src/client/methods/expectations/delete-all.method.d.ts +3 -0
  36. package/lib/src/client/methods/expectations/delete-all.method.d.ts.map +1 -0
  37. package/lib/src/client/methods/expectations/delete-all.method.js +11 -0
  38. package/lib/src/client/methods/expectations/delete-all.method.js.map +1 -0
  39. package/lib/src/client/methods/expectations/delete.method.d.ts +4 -0
  40. package/lib/src/client/methods/expectations/delete.method.d.ts.map +1 -0
  41. package/lib/src/client/methods/expectations/delete.method.js +12 -0
  42. package/lib/src/client/methods/expectations/delete.method.js.map +1 -0
  43. package/lib/src/client/methods/expectations/index.d.ts +5 -0
  44. package/lib/src/client/methods/expectations/index.d.ts.map +1 -0
  45. package/lib/src/client/methods/expectations/index.js +15 -0
  46. package/lib/src/client/methods/expectations/index.js.map +1 -0
  47. package/lib/src/client/methods/expectations/types.d.ts +18 -0
  48. package/lib/src/client/methods/expectations/types.d.ts.map +1 -0
  49. package/lib/src/client/methods/expectations/types.js +3 -0
  50. package/lib/src/client/methods/expectations/types.js.map +1 -0
  51. package/lib/src/client/methods/expectations/update.method.d.ts +8 -0
  52. package/lib/src/client/methods/expectations/update.method.d.ts.map +1 -0
  53. package/lib/src/client/methods/expectations/update.method.js +16 -0
  54. package/lib/src/client/methods/expectations/update.method.js.map +1 -0
  55. package/lib/src/client/methods/expectations/utils.d.ts +3 -0
  56. package/lib/src/client/methods/expectations/utils.d.ts.map +1 -0
  57. package/lib/src/client/methods/expectations/utils.js +26 -0
  58. package/lib/src/client/methods/expectations/utils.js.map +1 -0
  59. package/lib/src/client/methods/index.d.ts +2 -0
  60. package/lib/src/client/methods/index.d.ts.map +1 -0
  61. package/lib/src/client/methods/index.js +18 -0
  62. package/lib/src/client/methods/index.js.map +1 -0
  63. package/lib/src/client/types.d.ts +6 -0
  64. package/lib/src/client/types.d.ts.map +1 -0
  65. package/lib/src/client/types.js +3 -0
  66. package/lib/src/client/types.js.map +1 -0
  67. package/lib/src/client/utils.d.ts +5 -0
  68. package/lib/src/client/utils.d.ts.map +1 -0
  69. package/lib/src/client/utils.js +27 -0
  70. package/lib/src/client/utils.js.map +1 -0
  71. package/lib/src/config/index.d.ts +8 -0
  72. package/lib/src/config/index.d.ts.map +1 -0
  73. package/lib/src/config/index.js +17 -0
  74. package/lib/src/config/index.js.map +1 -0
  75. package/lib/src/index.d.ts +5 -0
  76. package/lib/src/index.d.ts.map +1 -0
  77. package/lib/src/index.js +21 -0
  78. package/lib/src/index.js.map +1 -0
  79. package/lib/src/process.d.ts +2 -0
  80. package/lib/src/process.d.ts.map +1 -0
  81. package/lib/src/process.js +7 -0
  82. package/lib/src/process.js.map +1 -0
  83. package/lib/src/server/endpoints/config.get.endpoint.d.ts +18 -0
  84. package/lib/src/server/endpoints/config.get.endpoint.d.ts.map +1 -0
  85. package/lib/src/server/endpoints/config.get.endpoint.js +12 -0
  86. package/lib/src/server/endpoints/config.get.endpoint.js.map +1 -0
  87. package/lib/src/server/endpoints/expectations.create.endpoint.d.ts +21 -0
  88. package/lib/src/server/endpoints/expectations.create.endpoint.d.ts.map +1 -0
  89. package/lib/src/server/endpoints/expectations.create.endpoint.js +15 -0
  90. package/lib/src/server/endpoints/expectations.create.endpoint.js.map +1 -0
  91. package/lib/src/server/endpoints/expectations.delete-all.endpoint.d.ts +11 -0
  92. package/lib/src/server/endpoints/expectations.delete-all.endpoint.d.ts.map +1 -0
  93. package/lib/src/server/endpoints/expectations.delete-all.endpoint.js +11 -0
  94. package/lib/src/server/endpoints/expectations.delete-all.endpoint.js.map +1 -0
  95. package/lib/src/server/endpoints/expectations.delete.endpoint.d.ts +19 -0
  96. package/lib/src/server/endpoints/expectations.delete.endpoint.d.ts.map +1 -0
  97. package/lib/src/server/endpoints/expectations.delete.endpoint.js +14 -0
  98. package/lib/src/server/endpoints/expectations.delete.endpoint.js.map +1 -0
  99. package/lib/src/server/endpoints/expectations.get-list.endpoint.d.ts +16 -0
  100. package/lib/src/server/endpoints/expectations.get-list.endpoint.d.ts.map +1 -0
  101. package/lib/src/server/endpoints/expectations.get-list.endpoint.js +9 -0
  102. package/lib/src/server/endpoints/expectations.get-list.endpoint.js.map +1 -0
  103. package/lib/src/server/endpoints/expectations.update.endpoint.d.ts +27 -0
  104. package/lib/src/server/endpoints/expectations.update.endpoint.d.ts.map +1 -0
  105. package/lib/src/server/endpoints/expectations.update.endpoint.js +27 -0
  106. package/lib/src/server/endpoints/expectations.update.endpoint.js.map +1 -0
  107. package/lib/src/server/endpoints/history-records.get-list.endpoint.d.ts +16 -0
  108. package/lib/src/server/endpoints/history-records.get-list.endpoint.d.ts.map +1 -0
  109. package/lib/src/server/endpoints/history-records.get-list.endpoint.js +11 -0
  110. package/lib/src/server/endpoints/history-records.get-list.endpoint.js.map +1 -0
  111. package/lib/src/server/endpoints/index.d.ts +9 -0
  112. package/lib/src/server/endpoints/index.d.ts.map +1 -0
  113. package/lib/src/server/endpoints/index.js +23 -0
  114. package/lib/src/server/endpoints/index.js.map +1 -0
  115. package/lib/src/server/endpoints/model.d.ts +26 -0
  116. package/lib/src/server/endpoints/model.d.ts.map +1 -0
  117. package/lib/src/server/endpoints/model.js +19 -0
  118. package/lib/src/server/endpoints/model.js.map +1 -0
  119. package/lib/src/server/endpoints/ping.endpoint.d.ts +15 -0
  120. package/lib/src/server/endpoints/ping.endpoint.d.ts.map +1 -0
  121. package/lib/src/server/endpoints/ping.endpoint.js +9 -0
  122. package/lib/src/server/endpoints/ping.endpoint.js.map +1 -0
  123. package/lib/src/server/expectations/__utils__/index.d.ts +3 -0
  124. package/lib/src/server/expectations/__utils__/index.d.ts.map +1 -0
  125. package/lib/src/server/expectations/__utils__/index.js +36 -0
  126. package/lib/src/server/expectations/__utils__/index.js.map +1 -0
  127. package/lib/src/server/expectations/errors/index.d.ts +6 -0
  128. package/lib/src/server/expectations/errors/index.d.ts.map +1 -0
  129. package/lib/src/server/expectations/errors/index.js +11 -0
  130. package/lib/src/server/expectations/errors/index.js.map +1 -0
  131. package/lib/src/server/expectations/index.d.ts +5 -0
  132. package/lib/src/server/expectations/index.d.ts.map +1 -0
  133. package/lib/src/server/expectations/index.js +21 -0
  134. package/lib/src/server/expectations/index.js.map +1 -0
  135. package/lib/src/server/expectations/model.d.ts +37 -0
  136. package/lib/src/server/expectations/model.d.ts.map +1 -0
  137. package/lib/src/server/expectations/model.js +90 -0
  138. package/lib/src/server/expectations/model.js.map +1 -0
  139. package/lib/src/server/expectations/operators/and.operator.d.ts +3 -0
  140. package/lib/src/server/expectations/operators/and.operator.d.ts.map +1 -0
  141. package/lib/src/server/expectations/operators/and.operator.js +5 -0
  142. package/lib/src/server/expectations/operators/and.operator.js.map +1 -0
  143. package/lib/src/server/expectations/operators/and.operator.spec.d.ts +2 -0
  144. package/lib/src/server/expectations/operators/and.operator.spec.d.ts.map +1 -0
  145. package/lib/src/server/expectations/operators/and.operator.spec.js +55 -0
  146. package/lib/src/server/expectations/operators/and.operator.spec.js.map +1 -0
  147. package/lib/src/server/expectations/operators/exec.operator.d.ts +9 -0
  148. package/lib/src/server/expectations/operators/exec.operator.d.ts.map +1 -0
  149. package/lib/src/server/expectations/operators/exec.operator.js +15 -0
  150. package/lib/src/server/expectations/operators/exec.operator.js.map +1 -0
  151. package/lib/src/server/expectations/operators/exec.operator.spec.d.ts +2 -0
  152. package/lib/src/server/expectations/operators/exec.operator.spec.d.ts.map +1 -0
  153. package/lib/src/server/expectations/operators/exec.operator.spec.js +27 -0
  154. package/lib/src/server/expectations/operators/exec.operator.spec.js.map +1 -0
  155. package/lib/src/server/expectations/operators/has.operator.d.ts +3 -0
  156. package/lib/src/server/expectations/operators/has.operator.d.ts.map +1 -0
  157. package/lib/src/server/expectations/operators/has.operator.js +83 -0
  158. package/lib/src/server/expectations/operators/has.operator.js.map +1 -0
  159. package/lib/src/server/expectations/operators/has.operator.spec.d.ts +2 -0
  160. package/lib/src/server/expectations/operators/has.operator.spec.d.ts.map +1 -0
  161. package/lib/src/server/expectations/operators/has.operator.spec.js +173 -0
  162. package/lib/src/server/expectations/operators/has.operator.spec.js.map +1 -0
  163. package/lib/src/server/expectations/operators/if.operator.d.ts +3 -0
  164. package/lib/src/server/expectations/operators/if.operator.d.ts.map +1 -0
  165. package/lib/src/server/expectations/operators/if.operator.js +15 -0
  166. package/lib/src/server/expectations/operators/if.operator.js.map +1 -0
  167. package/lib/src/server/expectations/operators/if.operator.spec.d.ts +2 -0
  168. package/lib/src/server/expectations/operators/if.operator.spec.d.ts.map +1 -0
  169. package/lib/src/server/expectations/operators/if.operator.spec.js +98 -0
  170. package/lib/src/server/expectations/operators/if.operator.spec.js.map +1 -0
  171. package/lib/src/server/expectations/operators/index.d.ts +10 -0
  172. package/lib/src/server/expectations/operators/index.d.ts.map +1 -0
  173. package/lib/src/server/expectations/operators/index.js +25 -0
  174. package/lib/src/server/expectations/operators/index.js.map +1 -0
  175. package/lib/src/server/expectations/operators/merge.operator.d.ts +3 -0
  176. package/lib/src/server/expectations/operators/merge.operator.d.ts.map +1 -0
  177. package/lib/src/server/expectations/operators/merge.operator.js +30 -0
  178. package/lib/src/server/expectations/operators/merge.operator.js.map +1 -0
  179. package/lib/src/server/expectations/operators/merge.operator.spec.d.ts +2 -0
  180. package/lib/src/server/expectations/operators/merge.operator.spec.d.ts.map +1 -0
  181. package/lib/src/server/expectations/operators/merge.operator.spec.js +55 -0
  182. package/lib/src/server/expectations/operators/merge.operator.spec.js.map +1 -0
  183. package/lib/src/server/expectations/operators/not.operator.d.ts +3 -0
  184. package/lib/src/server/expectations/operators/not.operator.d.ts.map +1 -0
  185. package/lib/src/server/expectations/operators/not.operator.js +5 -0
  186. package/lib/src/server/expectations/operators/not.operator.js.map +1 -0
  187. package/lib/src/server/expectations/operators/not.operator.spec.d.ts +2 -0
  188. package/lib/src/server/expectations/operators/not.operator.spec.d.ts.map +1 -0
  189. package/lib/src/server/expectations/operators/not.operator.spec.js +17 -0
  190. package/lib/src/server/expectations/operators/not.operator.spec.js.map +1 -0
  191. package/lib/src/server/expectations/operators/or.operator.d.ts +3 -0
  192. package/lib/src/server/expectations/operators/or.operator.d.ts.map +1 -0
  193. package/lib/src/server/expectations/operators/or.operator.js +9 -0
  194. package/lib/src/server/expectations/operators/or.operator.js.map +1 -0
  195. package/lib/src/server/expectations/operators/or.operator.spec.d.ts +2 -0
  196. package/lib/src/server/expectations/operators/or.operator.spec.d.ts.map +1 -0
  197. package/lib/src/server/expectations/operators/or.operator.spec.js +55 -0
  198. package/lib/src/server/expectations/operators/or.operator.spec.js.map +1 -0
  199. package/lib/src/server/expectations/operators/remove.operator.d.ts +3 -0
  200. package/lib/src/server/expectations/operators/remove.operator.d.ts.map +1 -0
  201. package/lib/src/server/expectations/operators/remove.operator.js +28 -0
  202. package/lib/src/server/expectations/operators/remove.operator.js.map +1 -0
  203. package/lib/src/server/expectations/operators/remove.operator.spec.d.ts +2 -0
  204. package/lib/src/server/expectations/operators/remove.operator.spec.d.ts.map +1 -0
  205. package/lib/src/server/expectations/operators/remove.operator.spec.js +45 -0
  206. package/lib/src/server/expectations/operators/remove.operator.spec.js.map +1 -0
  207. package/lib/src/server/expectations/operators/set.operator.d.ts +3 -0
  208. package/lib/src/server/expectations/operators/set.operator.d.ts.map +1 -0
  209. package/lib/src/server/expectations/operators/set.operator.js +39 -0
  210. package/lib/src/server/expectations/operators/set.operator.js.map +1 -0
  211. package/lib/src/server/expectations/operators/set.operator.spec.d.ts +2 -0
  212. package/lib/src/server/expectations/operators/set.operator.spec.d.ts.map +1 -0
  213. package/lib/src/server/expectations/operators/set.operator.spec.js +57 -0
  214. package/lib/src/server/expectations/operators/set.operator.spec.js.map +1 -0
  215. package/lib/src/server/expectations/operators/utils.d.ts +20 -0
  216. package/lib/src/server/expectations/operators/utils.d.ts.map +1 -0
  217. package/lib/src/server/expectations/operators/utils.js +67 -0
  218. package/lib/src/server/expectations/operators/utils.js.map +1 -0
  219. package/lib/src/server/expectations/storage.d.ts +19 -0
  220. package/lib/src/server/expectations/storage.d.ts.map +1 -0
  221. package/lib/src/server/expectations/storage.js +35 -0
  222. package/lib/src/server/expectations/storage.js.map +1 -0
  223. package/lib/src/server/expectations/types.d.ts +83 -0
  224. package/lib/src/server/expectations/types.d.ts.map +1 -0
  225. package/lib/src/server/expectations/types.js +16 -0
  226. package/lib/src/server/expectations/types.js.map +1 -0
  227. package/lib/src/server/expectations/utils.d.ts +12 -0
  228. package/lib/src/server/expectations/utils.d.ts.map +1 -0
  229. package/lib/src/server/expectations/utils.js +92 -0
  230. package/lib/src/server/expectations/utils.js.map +1 -0
  231. package/lib/src/server/expectations/utils.spec.d.ts +2 -0
  232. package/lib/src/server/expectations/utils.spec.d.ts.map +1 -0
  233. package/lib/src/server/expectations/utils.spec.js +59 -0
  234. package/lib/src/server/expectations/utils.spec.js.map +1 -0
  235. package/lib/src/server/expectations/validation-schemas.d.ts +24 -0
  236. package/lib/src/server/expectations/validation-schemas.d.ts.map +1 -0
  237. package/lib/src/server/expectations/validation-schemas.js +36 -0
  238. package/lib/src/server/expectations/validation-schemas.js.map +1 -0
  239. package/lib/src/server/history/index.d.ts +4 -0
  240. package/lib/src/server/history/index.d.ts.map +1 -0
  241. package/lib/src/server/history/index.js +20 -0
  242. package/lib/src/server/history/index.js.map +1 -0
  243. package/lib/src/server/history/model.d.ts +26 -0
  244. package/lib/src/server/history/model.d.ts.map +1 -0
  245. package/lib/src/server/history/model.js +33 -0
  246. package/lib/src/server/history/model.js.map +1 -0
  247. package/lib/src/server/history/storage.d.ts +7 -0
  248. package/lib/src/server/history/storage.d.ts.map +1 -0
  249. package/lib/src/server/history/storage.js +21 -0
  250. package/lib/src/server/history/storage.js.map +1 -0
  251. package/lib/src/server/history/types.d.ts +6 -0
  252. package/lib/src/server/history/types.d.ts.map +1 -0
  253. package/lib/src/server/history/types.js +3 -0
  254. package/lib/src/server/history/types.js.map +1 -0
  255. package/lib/src/server/index.d.ts +5 -0
  256. package/lib/src/server/index.d.ts.map +1 -0
  257. package/lib/src/server/index.js +80 -0
  258. package/lib/src/server/index.js.map +1 -0
  259. package/lib/src/server/middlewares/add-history.middleware.d.ts +8 -0
  260. package/lib/src/server/middlewares/add-history.middleware.d.ts.map +1 -0
  261. package/lib/src/server/middlewares/add-history.middleware.js +14 -0
  262. package/lib/src/server/middlewares/add-history.middleware.js.map +1 -0
  263. package/lib/src/server/middlewares/destroy-request.midleware.d.ts +8 -0
  264. package/lib/src/server/middlewares/destroy-request.midleware.d.ts.map +1 -0
  265. package/lib/src/server/middlewares/destroy-request.midleware.js +17 -0
  266. package/lib/src/server/middlewares/destroy-request.midleware.js.map +1 -0
  267. package/lib/src/server/middlewares/handle-expectation-delay.middleware.d.ts +8 -0
  268. package/lib/src/server/middlewares/handle-expectation-delay.middleware.d.ts.map +1 -0
  269. package/lib/src/server/middlewares/handle-expectation-delay.middleware.js +18 -0
  270. package/lib/src/server/middlewares/handle-expectation-delay.middleware.js.map +1 -0
  271. package/lib/src/server/middlewares/handle-expectation-forward.middleware.d.ts +8 -0
  272. package/lib/src/server/middlewares/handle-expectation-forward.middleware.d.ts.map +1 -0
  273. package/lib/src/server/middlewares/handle-expectation-forward.middleware.js +86 -0
  274. package/lib/src/server/middlewares/handle-expectation-forward.middleware.js.map +1 -0
  275. package/lib/src/server/middlewares/index.d.ts +9 -0
  276. package/lib/src/server/middlewares/index.d.ts.map +1 -0
  277. package/lib/src/server/middlewares/index.js +23 -0
  278. package/lib/src/server/middlewares/index.js.map +1 -0
  279. package/lib/src/server/middlewares/internal-route.middleware.d.ts +6 -0
  280. package/lib/src/server/middlewares/internal-route.middleware.d.ts.map +1 -0
  281. package/lib/src/server/middlewares/internal-route.middleware.js +11 -0
  282. package/lib/src/server/middlewares/internal-route.middleware.js.map +1 -0
  283. package/lib/src/server/middlewares/model.d.ts +25 -0
  284. package/lib/src/server/middlewares/model.d.ts.map +1 -0
  285. package/lib/src/server/middlewares/model.js +36 -0
  286. package/lib/src/server/middlewares/model.js.map +1 -0
  287. package/lib/src/server/middlewares/reply.middleware.d.ts +8 -0
  288. package/lib/src/server/middlewares/reply.middleware.d.ts.map +1 -0
  289. package/lib/src/server/middlewares/reply.middleware.js +35 -0
  290. package/lib/src/server/middlewares/reply.middleware.js.map +1 -0
  291. package/lib/src/server/middlewares/resolve-public.middleware.d.ts +6 -0
  292. package/lib/src/server/middlewares/resolve-public.middleware.d.ts.map +1 -0
  293. package/lib/src/server/middlewares/resolve-public.middleware.js +38 -0
  294. package/lib/src/server/middlewares/resolve-public.middleware.js.map +1 -0
  295. package/lib/src/server/middlewares/validate-expectation-request.middleware.d.ts +6 -0
  296. package/lib/src/server/middlewares/validate-expectation-request.middleware.d.ts.map +1 -0
  297. package/lib/src/server/middlewares/validate-expectation-request.middleware.js +20 -0
  298. package/lib/src/server/middlewares/validate-expectation-request.middleware.js.map +1 -0
  299. package/lib/src/server/models/index.d.ts +4 -0
  300. package/lib/src/server/models/index.d.ts.map +1 -0
  301. package/lib/src/server/models/index.js +20 -0
  302. package/lib/src/server/models/index.js.map +1 -0
  303. package/lib/src/server/models/reply-service/index.d.ts +12 -0
  304. package/lib/src/server/models/reply-service/index.d.ts.map +1 -0
  305. package/lib/src/server/models/reply-service/index.js +76 -0
  306. package/lib/src/server/models/reply-service/index.js.map +1 -0
  307. package/lib/src/server/models/reply-service/types.d.ts +5 -0
  308. package/lib/src/server/models/reply-service/types.d.ts.map +1 -0
  309. package/lib/src/server/models/reply-service/types.js +3 -0
  310. package/lib/src/server/models/reply-service/types.js.map +1 -0
  311. package/lib/src/server/models/request-context/index.d.ts +60 -0
  312. package/lib/src/server/models/request-context/index.d.ts.map +1 -0
  313. package/lib/src/server/models/request-context/index.js +75 -0
  314. package/lib/src/server/models/request-context/index.js.map +1 -0
  315. package/lib/src/server/models/request-context/types.d.ts +23 -0
  316. package/lib/src/server/models/request-context/types.d.ts.map +1 -0
  317. package/lib/src/server/models/request-context/types.js +3 -0
  318. package/lib/src/server/models/request-context/types.js.map +1 -0
  319. package/lib/src/server/models/request-context/utils.d.ts +6 -0
  320. package/lib/src/server/models/request-context/utils.d.ts.map +1 -0
  321. package/lib/src/server/models/request-context/utils.js +56 -0
  322. package/lib/src/server/models/request-context/utils.js.map +1 -0
  323. package/lib/src/server/models/server-context/index.d.ts +14 -0
  324. package/lib/src/server/models/server-context/index.d.ts.map +1 -0
  325. package/lib/src/server/models/server-context/index.js +20 -0
  326. package/lib/src/server/models/server-context/index.js.map +1 -0
  327. package/lib/src/server/proxy.d.ts +10 -0
  328. package/lib/src/server/proxy.d.ts.map +1 -0
  329. package/lib/src/server/proxy.js +16 -0
  330. package/lib/src/server/proxy.js.map +1 -0
  331. package/lib/src/server/router.d.ts +12 -0
  332. package/lib/src/server/router.d.ts.map +1 -0
  333. package/lib/src/server/router.js +49 -0
  334. package/lib/src/server/router.js.map +1 -0
  335. package/lib/src/server/types.d.ts +6 -0
  336. package/lib/src/server/types.d.ts.map +1 -0
  337. package/lib/src/server/types.js +3 -0
  338. package/lib/src/server/types.js.map +1 -0
  339. package/lib/src/server/utils/index.d.ts +11 -0
  340. package/lib/src/server/utils/index.d.ts.map +1 -0
  341. package/lib/src/server/utils/index.js +26 -0
  342. package/lib/src/server/utils/index.js.map +1 -0
  343. package/lib/src/server/web-socket-exchange/index.d.ts +5 -0
  344. package/lib/src/server/web-socket-exchange/index.d.ts.map +1 -0
  345. package/lib/src/server/web-socket-exchange/index.js +23 -0
  346. package/lib/src/server/web-socket-exchange/index.js.map +1 -0
  347. package/lib/src/server/web-socket-exchange/types.d.ts +12 -0
  348. package/lib/src/server/web-socket-exchange/types.d.ts.map +1 -0
  349. package/lib/src/server/web-socket-exchange/types.js +3 -0
  350. package/lib/src/server/web-socket-exchange/types.js.map +1 -0
  351. package/lib/src/types.d.ts +6 -0
  352. package/lib/src/types.d.ts.map +1 -0
  353. package/lib/src/types.js +3 -0
  354. package/lib/src/types.js.map +1 -0
  355. package/lib/src/utils/index.d.ts +29 -0
  356. package/lib/src/utils/index.d.ts.map +1 -0
  357. package/lib/src/utils/index.js +50 -0
  358. package/lib/src/utils/index.js.map +1 -0
  359. package/lib/task-processor.d.ts +2 -0
  360. package/lib/task-processor.d.ts.map +1 -0
  361. package/lib/task-processor.js +75 -0
  362. package/lib/task-processor.js.map +1 -0
  363. package/lib/test/index.d.ts +2 -0
  364. package/lib/test/index.d.ts.map +1 -0
  365. package/lib/test/index.js +121 -0
  366. package/lib/test/index.js.map +1 -0
  367. package/lib/tsconfig.tsbuildinfo +1 -0
  368. package/lib/types/common.global.d.ts +69 -0
  369. package/lib/types/common.global.d.ts.map +1 -0
  370. package/lib/types/common.global.js +3 -0
  371. package/lib/types/common.global.js.map +1 -0
  372. package/lib/types/lib.d.ts +3 -0
  373. package/lib/types/lib.d.ts.map +1 -0
  374. package/lib/types/lib.js +19 -0
  375. package/lib/types/lib.js.map +1 -0
  376. package/package.json +77 -0
  377. package/public/fonts/fa-regular-400.eot +0 -0
  378. package/public/fonts/fa-regular-400.svg +801 -0
  379. package/public/fonts/fa-regular-400.ttf +0 -0
  380. package/public/fonts/fa-regular-400.woff +0 -0
  381. package/public/fonts/fa-regular-400.woff2 +0 -0
  382. package/public/fonts/fa-solid-900.eot +0 -0
  383. package/public/fonts/fa-solid-900.svg +5028 -0
  384. package/public/fonts/fa-solid-900.ttf +0 -0
  385. package/public/fonts/fa-solid-900.woff +0 -0
  386. package/public/fonts/fa-solid-900.woff2 +0 -0
  387. package/public/images/favicon.png +0 -0
  388. package/public/index.html +25 -0
  389. package/public/scripts/main.js +19950 -0
  390. package/public/styles/fa-all.css +5 -0
  391. package/public/styles/json-highlighter.css +259 -0
  392. package/public/styles/main.css +245 -0
  393. package/tsconfig.tsbuildinfo +1 -0
  394. package/types/common.global.ts +112 -0
  395. package/types/lib.ts +2 -0
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Endpoint = void 0;
4
+ class Endpoint {
5
+ bindToHttp(http) {
6
+ return Object.assign(this, { http });
7
+ }
8
+ bindToWebSocket(webSocket) {
9
+ return Object.assign(this, { webSocket });
10
+ }
11
+ assignHandler(handler) {
12
+ return Object.assign(this, { handler });
13
+ }
14
+ static build() {
15
+ return new Endpoint();
16
+ }
17
+ }
18
+ exports.Endpoint = Endpoint;
19
+ //# sourceMappingURL=model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../../src/server/endpoints/model.ts"],"names":[],"mappings":";;;AAIA,MAAa,QAAQ;IAeZ,UAAU,CAAmD,IAAU;QAC5E,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACvC,CAAC;IAEM,eAAe,CAAqD,SAAY;QACrF,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;IAC5C,CAAC;IAEM,aAAa,CAAmD,OAAU;QAC/E,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED,MAAM,CAAC,KAAK;QACV,OAAO,IAAI,QAAQ,EAAQ,CAAC;IAC9B,CAAC;CACF;AA9BD,4BA8BC"}
@@ -0,0 +1,15 @@
1
+ import { Endpoint } from './model';
2
+ declare const _default: Endpoint<"pong", import("../models").IHttpRequestIncommingContext> & {
3
+ http: {
4
+ readonly method: "GET";
5
+ readonly path: "/_mock/ping";
6
+ };
7
+ } & {
8
+ webSocket: {
9
+ readonly path: "ping";
10
+ };
11
+ } & {
12
+ handler: ({ reply }: import("../models").RequestContext<import("../models").IHttpRequestIncommingContext, "pong">) => void;
13
+ };
14
+ export default _default;
15
+ //# sourceMappingURL=ping.endpoint.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ping.endpoint.d.ts","sourceRoot":"","sources":["../../../../src/server/endpoints/ping.endpoint.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;;;;;;;;;;;;;AAEnC,wBAIkD"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const model_1 = require("./model");
4
+ exports.default = model_1.Endpoint
5
+ .build()
6
+ .bindToHttp({ method: 'GET', path: '/_mock/ping' })
7
+ .bindToWebSocket({ path: 'ping' })
8
+ .assignHandler(({ reply }) => reply.ok('pong'));
9
+ //# sourceMappingURL=ping.endpoint.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ping.endpoint.js","sourceRoot":"","sources":["../../../../src/server/endpoints/ping.endpoint.ts"],"names":[],"mappings":";;AAAA,mCAAmC;AAEnC,kBAAe,gBAAQ;KACpB,KAAK,EAAU;KACf,UAAU,CAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;KACzD,eAAe,CAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;KACxC,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { IRequestPlainContext, IResponsePlainContext } from '../../models';
2
+ export declare const buildExpectationContext: () => IRequestPlainContext & IResponsePlainContext;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/server/expectations/__utils__/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAE3E,eAAO,MAAM,uBAAuB,QAAO,oBAAoB,GAAG,qBAmChE,CAAC"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildExpectationContext = void 0;
4
+ const buildExpectationContext = () => ({
5
+ path: '/foo/bar/baz',
6
+ method: 'POST',
7
+ payloadType: 'json',
8
+ statusCode: 200,
9
+ dataRaw: '{"foo": {"bar": {"baz": true}}}',
10
+ data: {
11
+ foo: {
12
+ bar: {
13
+ baz: true,
14
+ },
15
+ },
16
+ },
17
+ query: {
18
+ foo: 1,
19
+ bar: {
20
+ baz: null,
21
+ },
22
+ },
23
+ bodyRaw: '{"foo": [{"bar": 1}, {"baz": ["2"]}]}',
24
+ body: {
25
+ foo: [
26
+ { bar: 1 },
27
+ { baz: ['2'] },
28
+ ],
29
+ },
30
+ headers: {
31
+ 'content-type': 'application/json',
32
+ 'accept-language': 'en/gb',
33
+ },
34
+ });
35
+ exports.buildExpectationContext = buildExpectationContext;
36
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/server/expectations/__utils__/index.ts"],"names":[],"mappings":";;;AAEO,MAAM,uBAAuB,GAAG,GAAiD,EAAE,CAAC,CAAC;IAC1F,IAAI,EAAE,cAAc;IACpB,MAAM,EAAE,MAAM;IACd,WAAW,EAAE,MAAM;IAEnB,UAAU,EAAE,GAAG;IAEf,OAAO,EAAE,iCAAiC;IAC1C,IAAI,EAAE;QACJ,GAAG,EAAE;YACH,GAAG,EAAE;gBACH,GAAG,EAAE,IAAI;aACV;SACF;KACF;IAED,KAAK,EAAE;QACL,GAAG,EAAE,CAAC;QACN,GAAG,EAAE;YACH,GAAG,EAAE,IAAI;SACV;KACF;IAED,OAAO,EAAE,uCAAuC;IAChD,IAAI,EAAE;QACJ,GAAG,EAAE;YACH,EAAE,GAAG,EAAE,CAAC,EAAE;YACV,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE;SACf;KACF;IAED,OAAO,EAAE;QACP,cAAc,EAAE,kBAAkB;QAClC,iBAAiB,EAAE,OAAO;KAC3B;CACF,CAAC,CAAC;AAnCU,QAAA,uBAAuB,2BAmCjC"}
@@ -0,0 +1,6 @@
1
+ import { ValueError } from '@n1k1t/typebox/errors';
2
+ export declare class ExpectationValidationError extends Error {
3
+ reasons: ValueError[];
4
+ constructor(reasons: ValueError[]);
5
+ }
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/server/expectations/errors/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnD,qBAAa,0BAA2B,SAAQ,KAAK;IAChC,OAAO,EAAE,UAAU,EAAE;gBAArB,OAAO,EAAE,UAAU,EAAE;CAGzC"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ExpectationValidationError = void 0;
4
+ class ExpectationValidationError extends Error {
5
+ constructor(reasons) {
6
+ super('Got error on expectation validation');
7
+ this.reasons = reasons;
8
+ }
9
+ }
10
+ exports.ExpectationValidationError = ExpectationValidationError;
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/server/expectations/errors/index.ts"],"names":[],"mappings":";;;AAEA,MAAa,0BAA2B,SAAQ,KAAK;IACnD,YAAmB,OAAqB;QACtC,KAAK,CAAC,qCAAqC,CAAC,CAAC;QAD5B,YAAO,GAAP,OAAO,CAAc;IAExC,CAAC;CACF;AAJD,gEAIC"}
@@ -0,0 +1,5 @@
1
+ export * from './storage';
2
+ export * from './model';
3
+ export * from './types';
4
+ export * from './utils';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/server/expectations/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./storage"), exports);
18
+ __exportStar(require("./model"), exports);
19
+ __exportStar(require("./types"), exports);
20
+ __exportStar(require("./utils"), exports);
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/server/expectations/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,0CAAwB;AACxB,0CAAwB;AACxB,0CAAwB"}
@@ -0,0 +1,37 @@
1
+ import type { AxiosProxyConfig } from 'axios';
2
+ import { TRequestProtocol } from '../../types';
3
+ import { BuildExpectaionSchema, IExpectationDelay, IExpectationMeta, TExpectationContext, TExpectationContextLocation, TExpectationType } from './types';
4
+ export declare class Expectation {
5
+ type: TExpectationType;
6
+ id: string;
7
+ name: string;
8
+ isEnabled: boolean;
9
+ meta: IExpectationMeta;
10
+ delay?: IExpectationDelay | IExpectationDelay[];
11
+ destroy?: 'ECONNABORTED';
12
+ request?: BuildExpectaionSchema<{
13
+ validationLocation: 'path' | 'method' | 'headers' | 'body' | 'query';
14
+ manipulationLocation: 'path' | 'method' | 'headers' | 'body' | 'query';
15
+ }>;
16
+ response?: BuildExpectaionSchema<{
17
+ manipulationLocation: 'headers' | 'data' | 'statusCode';
18
+ }>;
19
+ forward?: {
20
+ protocol: TRequestProtocol;
21
+ host: string;
22
+ port: number;
23
+ timeout?: number;
24
+ proxy?: AxiosProxyConfig & {
25
+ protocol: TRequestProtocol;
26
+ };
27
+ };
28
+ constructor(type: TExpectationType);
29
+ increaseExecutionsCounter(): this;
30
+ validateContext(location: TExpectationContextLocation, context: TExpectationContext): boolean;
31
+ manipulateContext<K extends TExpectationContextLocation, T extends TExpectationContext<K>>(location: TExpectationContextLocation, context: T, options?: {
32
+ clone?: boolean;
33
+ }): T;
34
+ validate(): import("@n1k1t/typebox/errors").ValueError[];
35
+ static build<T extends Omit<Partial<Expectation>, 'id' | 'type' | 'meta'>>(type?: TExpectationType, configuration?: T): Expectation;
36
+ }
37
+ //# sourceMappingURL=model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../../src/server/expectations/model.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AAM9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAI/C,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,gBAAgB,EAGhB,mBAAmB,EACnB,2BAA2B,EAC3B,gBAAgB,EACjB,MAAM,SAAS,CAAC;AAIjB,qBAAa,WAAW;IAkEH,IAAI,EAAE,gBAAgB;IAjElC,EAAE,EAAE,MAAM,CAAY;IACtB,IAAI,EAAE,MAAM,CAA8D;IAE1E,SAAS,EAAE,OAAO,CAAQ;IAE1B,IAAI,EAAE,gBAAgB,CAG3B;IAUK,KAAK,CAAC,EAAE,iBAAiB,GAAG,iBAAiB,EAAE,CAAC;IAOhD,OAAO,CAAC,EAAE,cAAc,CAAC;IAGzB,OAAO,CAAC,EAAE,qBAAqB,CAAC;QACrC,kBAAkB,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC;QACrE,oBAAoB,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC;KACxE,CAAC,CAAC;IAGI,QAAQ,CAAC,EAAE,qBAAqB,CAAC;QACtC,oBAAoB,EAAE,SAAS,GAAG,MAAM,GAAG,YAAY,CAAC;KACzD,CAAC,CAAC;IAkBI,OAAO,CAAC,EAAE;QACf,QAAQ,EAAE,gBAAgB,CAAC;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QAEb,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,gBAAgB,GAAG;YACzB,QAAQ,EAAE,gBAAgB,CAAC;SAC5B,CAAA;KACF,CAAC;gBAEiB,IAAI,EAAE,gBAAgB;IAElC,yBAAyB,IAAI,IAAI;IAKjC,eAAe,CAAC,QAAQ,EAAE,2BAA2B,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO;IAI7F,iBAAiB,CAAC,CAAC,SAAS,2BAA2B,EAAE,CAAC,SAAS,mBAAmB,CAAC,CAAC,CAAC,EAC9F,QAAQ,EAAE,2BAA2B,EACrC,OAAO,EAAE,CAAC,EACV,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,GAC5B,CAAC;IAOG,QAAQ;IAIf,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC,EACvE,IAAI,GAAE,gBAAyB,EAC/B,aAAa,CAAC,EAAE,CAAC;CAWpB"}
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.Expectation = void 0;
16
+ const random_animal_name_1 = __importDefault(require("random-animal-name"));
17
+ const typebox_1 = require("@n1k1t/typebox");
18
+ const uuid_1 = require("uuid");
19
+ const rfdc_1 = __importDefault(require("rfdc"));
20
+ const lodash_1 = __importDefault(require("lodash"));
21
+ const utils_1 = require("./utils");
22
+ const utils_2 = require("../utils");
23
+ const validation_schemas_1 = require("./validation-schemas");
24
+ const types_1 = require("./types");
25
+ const clone = (0, rfdc_1.default)();
26
+ class Expectation {
27
+ constructor(type) {
28
+ this.type = type;
29
+ this.id = (0, uuid_1.v4)();
30
+ this.name = (0, random_animal_name_1.default)().split(' ').map(lodash_1.default.capitalize).join('');
31
+ this.isEnabled = true;
32
+ this.meta = {
33
+ executionsCount: 0,
34
+ additional: {},
35
+ };
36
+ }
37
+ increaseExecutionsCounter() {
38
+ this.meta.executionsCount += 1;
39
+ return this;
40
+ }
41
+ validateContext(location, context) {
42
+ return (0, utils_1.exploreNestedExpectationSchema)('validation', this[location] ?? {}, context);
43
+ }
44
+ manipulateContext(location, context, options) {
45
+ const result = options?.clone ? clone(context) : context;
46
+ (0, utils_1.exploreNestedExpectationSchema)('manipulation', this[location] ?? {}, result);
47
+ return result;
48
+ }
49
+ validate() {
50
+ return (0, utils_2.validate)(this, [validation_schemas_1.ExpectationValidationSchema, validation_schemas_1.ExpectationTargetionalValidationSchema]);
51
+ }
52
+ static build(type = 'HTTP', configuration) {
53
+ const expectation = Object.assign(new Expectation(type), configuration ?? {});
54
+ expectation.meta.additional = Object.assign((0, utils_1.extractMetaAdditionalFromExpectationSchema)(expectation.request ?? {}), (0, utils_1.extractMetaAdditionalFromExpectationSchema)(expectation.response ?? {}));
55
+ return expectation;
56
+ }
57
+ }
58
+ exports.Expectation = Expectation;
59
+ __decorate([
60
+ (0, utils_2.UseValidation)(typebox_1.Type.Optional(typebox_1.Type.Object({
61
+ ms: typebox_1.Type.Number(),
62
+ times: typebox_1.Type.Optional(typebox_1.Type.Number()),
63
+ }))),
64
+ __metadata("design:type", Object)
65
+ ], Expectation.prototype, "delay", void 0);
66
+ __decorate([
67
+ (0, utils_2.UseValidation)(typebox_1.Type.Optional(typebox_1.Type.Union(types_1.LExpectationDestroyType.map((value) => typebox_1.Type.Literal(value))))),
68
+ __metadata("design:type", String)
69
+ ], Expectation.prototype, "destroy", void 0);
70
+ __decorate([
71
+ (0, utils_2.UseValidation)(typebox_1.Type.Optional(validation_schemas_1.ExpectationValidationSchema)),
72
+ __metadata("design:type", Object)
73
+ ], Expectation.prototype, "request", void 0);
74
+ __decorate([
75
+ (0, utils_2.UseValidation)(typebox_1.Type.Optional(validation_schemas_1.ExpectationValidationSchema)),
76
+ __metadata("design:type", Object)
77
+ ], Expectation.prototype, "response", void 0);
78
+ __decorate([
79
+ (0, utils_2.UseValidation)(typebox_1.Type.Optional(typebox_1.Type.Object({
80
+ protocol: typebox_1.Type.Union(types_1.LExpectationForwardProtocol.map((value) => typebox_1.Type.Literal(value))),
81
+ host: typebox_1.Type.String(),
82
+ port: typebox_1.Type.Number(),
83
+ timeout: typebox_1.Type.Optional(typebox_1.Type.Number()),
84
+ proxy: typebox_1.Type.Optional(typebox_1.Type.Object({
85
+ protocol: typebox_1.Type.Union(types_1.LExpectationForwardProtocol.map((value) => typebox_1.Type.Literal(value))),
86
+ }))
87
+ }))),
88
+ __metadata("design:type", Object)
89
+ ], Expectation.prototype, "forward", void 0);
90
+ //# sourceMappingURL=model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../../src/server/expectations/model.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ declare const _default: import("..").TExpectationOperatorHandler<"$and">;
2
+ export default _default;
3
+ //# sourceMappingURL=and.operator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"and.operator.d.ts","sourceRoot":"","sources":["../../../../../src/server/expectations/operators/and.operator.ts"],"names":[],"mappings":";AAEA,wBAGE"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const utils_1 = require("./utils");
4
+ exports.default = (0, utils_1.buildExpectationOperatorHandler)((mode, schema, context, { exploreNestedSchema }) => schema.every((configuration) => exploreNestedSchema(mode, configuration, context)));
5
+ //# sourceMappingURL=and.operator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"and.operator.js","sourceRoot":"","sources":["../../../../../src/server/expectations/operators/and.operator.ts"],"names":[],"mappings":";;AAAA,mCAA0D;AAE1D,kBAAe,IAAA,uCAA+B,EAC5C,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,mBAAmB,EAAE,EAAE,EAAE,CACjD,MAAM,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC,CACrF,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=and.operator.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"and.operator.spec.d.ts","sourceRoot":"","sources":["../../../../../src/server/expectations/operators/and.operator.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const __utils__1 = require("../__utils__");
7
+ const utils_1 = require("../utils");
8
+ const and_operator_1 = __importDefault(require("./and.operator"));
9
+ describe('Expectations.Operators.And', () => {
10
+ describe('validation mode', () => {
11
+ it('should validate by schema with one valid condition', () => {
12
+ const schema = [
13
+ { $has: { $location: 'query', $path: 'foo', $value: 1 } },
14
+ ];
15
+ expect((0, and_operator_1.default)('validation', schema, (0, __utils__1.buildExpectationContext)(), { exploreNestedSchema: utils_1.exploreNestedExpectationSchema })).toBeTruthy();
16
+ });
17
+ it('should validate by schema with two valid conditions', () => {
18
+ const schema = [
19
+ { $has: { $location: 'query', $path: 'foo', $value: 1 } },
20
+ { $has: { $location: 'query', $path: 'bar.baz', $value: null } },
21
+ ];
22
+ expect((0, and_operator_1.default)('validation', schema, (0, __utils__1.buildExpectationContext)(), { exploreNestedSchema: utils_1.exploreNestedExpectationSchema })).toBeTruthy();
23
+ });
24
+ it('should validate by schema with zero conditions', () => {
25
+ expect((0, and_operator_1.default)('validation', [], (0, __utils__1.buildExpectationContext)(), { exploreNestedSchema: utils_1.exploreNestedExpectationSchema })).toBeTruthy();
26
+ });
27
+ it('should validate by schema with one valid and one invalid condition', () => {
28
+ const schema = [
29
+ { $has: { $location: 'query', $path: 'foo', $value: 1 } },
30
+ { $has: { $location: 'query', $path: 'bar.baz', $value: 1 } },
31
+ ];
32
+ expect((0, and_operator_1.default)('validation', schema, (0, __utils__1.buildExpectationContext)(), { exploreNestedSchema: utils_1.exploreNestedExpectationSchema })).toBeFalsy();
33
+ });
34
+ it('should validate by schema with two invalid conditions', () => {
35
+ const schema = [
36
+ { $has: { $location: 'query', $path: 'foo', $value: null } },
37
+ { $has: { $location: 'query', $path: 'bar.baz', $value: 1 } },
38
+ ];
39
+ expect((0, and_operator_1.default)('validation', schema, (0, __utils__1.buildExpectationContext)(), { exploreNestedSchema: utils_1.exploreNestedExpectationSchema })).toBeFalsy();
40
+ });
41
+ });
42
+ describe('manipulation mode', () => {
43
+ it('should manipulate by schema with two conditions', () => {
44
+ const context = (0, __utils__1.buildExpectationContext)();
45
+ const schema = [
46
+ { $set: { $location: 'headers', $path: 'content-length', $value: 100 } },
47
+ { $set: { $location: 'query', $path: 'bar.baz', $value: { test: true } } },
48
+ ];
49
+ expect((0, and_operator_1.default)('manipulation', schema, context, { exploreNestedSchema: utils_1.exploreNestedExpectationSchema })).toBeTruthy();
50
+ expect(context.headers?.['content-length']).toEqual(100);
51
+ expect(context.query?.bar?.baz?.test).toBeTruthy();
52
+ });
53
+ });
54
+ });
55
+ //# sourceMappingURL=and.operator.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"and.operator.spec.js","sourceRoot":"","sources":["../../../../../src/server/expectations/operators/and.operator.spec.ts"],"names":[],"mappings":";;;;;AAAA,2CAAuD;AACvD,oCAA0D;AAE1D,kEAAsC;AAEtC,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;IAC1C,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;QAC/B,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;YAC5D,MAAM,MAAM,GAAmC;gBAC7C,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE;aAC1D,CAAC;YAEF,MAAM,CACJ,IAAA,sBAAQ,EAAC,YAAY,EAAE,MAAM,EAAE,IAAA,kCAAuB,GAAE,EAAE,EAAE,mBAAmB,EAAE,sCAA8B,EAAE,CAAC,CACnH,CAAC,UAAU,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;YAC7D,MAAM,MAAM,GAAmC;gBAC7C,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE;gBACzD,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;aACjE,CAAC;YAEF,MAAM,CACJ,IAAA,sBAAQ,EAAC,YAAY,EAAE,MAAM,EAAE,IAAA,kCAAuB,GAAE,EAAE,EAAE,mBAAmB,EAAE,sCAA8B,EAAE,CAAC,CACnH,CAAC,UAAU,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;YACxD,MAAM,CACJ,IAAA,sBAAQ,EAAC,YAAY,EAAE,EAAE,EAAE,IAAA,kCAAuB,GAAE,EAAE,EAAE,mBAAmB,EAAE,sCAA8B,EAAE,CAAC,CAC/G,CAAC,UAAU,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oEAAoE,EAAE,GAAG,EAAE;YAC5E,MAAM,MAAM,GAAmC;gBAC7C,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE;gBACzD,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE;aAC9D,CAAC;YAEF,MAAM,CACJ,IAAA,sBAAQ,EAAC,YAAY,EAAE,MAAM,EAAE,IAAA,kCAAuB,GAAE,EAAE,EAAE,mBAAmB,EAAE,sCAA8B,EAAE,CAAC,CACnH,CAAC,SAAS,EAAE,CAAC;QAChB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;YAC/D,MAAM,MAAM,GAAmC;gBAC7C,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;gBAC5D,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE;aAC9D,CAAC;YAEF,MAAM,CACJ,IAAA,sBAAQ,EAAC,YAAY,EAAE,MAAM,EAAE,IAAA,kCAAuB,GAAE,EAAE,EAAE,mBAAmB,EAAE,sCAA8B,EAAE,CAAC,CACnH,CAAC,SAAS,EAAE,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;QACjC,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;YACzD,MAAM,OAAO,GAAG,IAAA,kCAAuB,GAAE,CAAC;YAC1C,MAAM,MAAM,GAAmC;gBAC7C,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE;gBACxE,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE;aAC3E,CAAC;YAEF,MAAM,CAAC,IAAA,sBAAQ,EAAC,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,mBAAmB,EAAE,sCAA8B,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;YACxH,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACzD,MAAM,CAAO,OAAO,CAAC,KAAM,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;QAC5D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ import _ from 'lodash';
2
+ import { IRequestPlainContext, IResponsePlainContext } from '../../models';
3
+ export type TExpectationExecOperatorHandler<TContext extends IRequestPlainContext | IResponsePlainContext> = TFunction<unknown, [{
4
+ _: typeof _;
5
+ context: TContext;
6
+ }]>;
7
+ declare const _default: import("..").TExpectationOperatorHandler<"$exec">;
8
+ export default _default;
9
+ //# sourceMappingURL=exec.operator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exec.operator.d.ts","sourceRoot":"","sources":["../../../../../src/server/expectations/operators/exec.operator.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,QAAQ,CAAC;AAGvB,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAE3E,MAAM,MAAM,+BAA+B,CAAC,QAAQ,SAAS,oBAAoB,GAAG,qBAAqB,IACvG,SAAS,CAAC,OAAO,EAAE,CAAC;IAAE,CAAC,EAAE,OAAO,CAAC,CAAC;IAAC,OAAO,EAAE,QAAQ,CAAA;CAAE,CAAC,CAAC,CAAC;;AAE3D,wBASE"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const lodash_1 = __importDefault(require("lodash"));
7
+ const utils_1 = require("./utils");
8
+ exports.default = (0, utils_1.buildExpectationOperatorHandler)((mode, command, context) => {
9
+ if (mode !== 'manipulation') {
10
+ return true;
11
+ }
12
+ Function(`return ({ _, context }) => ${command}`)()({ _: lodash_1.default, context });
13
+ return true;
14
+ });
15
+ //# sourceMappingURL=exec.operator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exec.operator.js","sourceRoot":"","sources":["../../../../../src/server/expectations/operators/exec.operator.ts"],"names":[],"mappings":";;;;;AAAA,oDAAuB;AAEvB,mCAA0D;AAM1D,kBAAe,IAAA,uCAA+B,EAC5C,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;IACzB,IAAI,IAAI,KAAK,cAAc,EAAE;QAC3B,OAAO,IAAI,CAAC;KACb;IAED,QAAQ,CAAC,8BAA8B,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAD,gBAAC,EAAE,OAAO,EAAE,CAAC,CAAC;IACpE,OAAO,IAAI,CAAC;AACd,CAAC,CACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=exec.operator.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exec.operator.spec.d.ts","sourceRoot":"","sources":["../../../../../src/server/expectations/operators/exec.operator.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const __utils__1 = require("../__utils__");
7
+ const utils_1 = require("../utils");
8
+ const exec_operator_1 = __importDefault(require("./exec.operator"));
9
+ describe('Expectations.Operators.Exec', () => {
10
+ it('should exec by inline command', () => {
11
+ const context = (0, __utils__1.buildExpectationContext)();
12
+ const command = '_.set(context, "query.test", "foo")';
13
+ expect((0, exec_operator_1.default)('manipulation', command, context, { exploreNestedSchema: utils_1.exploreNestedExpectationSchema })).toBeTruthy();
14
+ expect(context.query.test).toEqual('foo');
15
+ });
16
+ it('should exec by multiline command', () => {
17
+ const context = (0, __utils__1.buildExpectationContext)();
18
+ const command = `{
19
+ context.body.foo.push({ test: 1 });
20
+ context.body.foo.push({ test: 2 });
21
+ }`;
22
+ expect((0, exec_operator_1.default)('manipulation', command, context, { exploreNestedSchema: utils_1.exploreNestedExpectationSchema })).toBeTruthy();
23
+ expect(context.body.foo[2].test).toEqual(1);
24
+ expect(context.body.foo[3].test).toEqual(2);
25
+ });
26
+ });
27
+ //# sourceMappingURL=exec.operator.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exec.operator.spec.js","sourceRoot":"","sources":["../../../../../src/server/expectations/operators/exec.operator.spec.ts"],"names":[],"mappings":";;;;;AAAA,2CAAuD;AACvD,oCAA0D;AAE1D,oEAAuC;AAEvC,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;IAC3C,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;QACvC,MAAM,OAAO,GAAG,IAAA,kCAAuB,GAAE,CAAA;QACzC,MAAM,OAAO,GAAG,qCAAqC,CAAC;QAEtD,MAAM,CAAC,IAAA,uBAAQ,EAAC,cAAc,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,mBAAmB,EAAE,sCAA8B,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;QACzH,MAAM,CAAO,OAAO,CAAC,KAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;QAC1C,MAAM,OAAO,GAAG,IAAA,kCAAuB,GAAE,CAAA;QACzC,MAAM,OAAO,GAAG;;;MAGd,CAAC;QAEH,MAAM,CAAC,IAAA,uBAAQ,EAAC,cAAc,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,mBAAmB,EAAE,sCAA8B,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;QACzH,MAAM,CAAO,OAAO,CAAC,IAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACnD,MAAM,CAAO,OAAO,CAAC,IAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ declare const _default: import("..").TExpectationOperatorHandler<"$has">;
2
+ export default _default;
3
+ //# sourceMappingURL=has.operator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"has.operator.d.ts","sourceRoot":"","sources":["../../../../../src/server/expectations/operators/has.operator.ts"],"names":[],"mappings":";AAMA,wBAoFG"}
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const minimatch_1 = __importDefault(require("minimatch"));
7
+ const lodash_1 = __importDefault(require("lodash"));
8
+ const utils_1 = require("./utils");
9
+ const utils_2 = require("../../../utils");
10
+ exports.default = (0, utils_1.buildExpectationOperatorHandler)((mode, schema, context) => {
11
+ if (!schema.$location) {
12
+ return false;
13
+ }
14
+ const payload = (0, utils_1.extractContextPayloadSegment)(schema.$location, context);
15
+ if (!payload) {
16
+ return false;
17
+ }
18
+ switch (payload.type) {
19
+ case 'string': {
20
+ if (schema.$value !== undefined) {
21
+ return payload.value === schema.$value;
22
+ }
23
+ if (schema.$valueAnyOf) {
24
+ return schema.$valueAnyOf.some((value) => payload.value === value);
25
+ }
26
+ if (schema.$regExp) {
27
+ return schema.$regExp.test(payload.value);
28
+ }
29
+ if (schema.$regExpAnyOf) {
30
+ return schema.$regExpAnyOf.some((regExp) => regExp.test(payload.value));
31
+ }
32
+ if (schema.$minimatch) {
33
+ return (0, minimatch_1.default)(payload.value, schema.$minimatch);
34
+ }
35
+ if (schema.$minimatchAnyOf) {
36
+ return schema.$minimatchAnyOf.some((pattern) => (0, minimatch_1.default)(payload.value, pattern));
37
+ }
38
+ }
39
+ case 'number': {
40
+ if (schema.$value !== undefined) {
41
+ return payload.value === schema.$value;
42
+ }
43
+ if (schema.$valueAnyOf) {
44
+ return schema.$valueAnyOf.some((value) => payload.value === value);
45
+ }
46
+ if (schema.$minimatch) {
47
+ return (0, minimatch_1.default)(String(payload.value), schema.$minimatch);
48
+ }
49
+ if (schema.$minimatchAnyOf) {
50
+ const value = String(payload.value);
51
+ return schema.$minimatchAnyOf.some((pattern) => (0, minimatch_1.default)(value, pattern));
52
+ }
53
+ }
54
+ case 'object': {
55
+ const values = schema.$path
56
+ ? [lodash_1.default.get(payload.value, schema.$path)]
57
+ : schema.$jsonPath
58
+ ? (0, utils_2.extractByJsonPathSafe)({ path: schema.$jsonPath, json: payload.value }).results?.map(({ value }) => value) ?? []
59
+ : [];
60
+ if (schema.$value !== undefined) {
61
+ return values.every((value) => schema.$value === value);
62
+ }
63
+ if (schema.$valueAnyOf) {
64
+ return values.every((valueToCheck) => (schema.$valueAnyOf).some((value) => valueToCheck === value));
65
+ }
66
+ if (schema.$regExp) {
67
+ return values.every((value) => (schema.$regExp).test(String(value)));
68
+ }
69
+ if (schema.$regExpAnyOf) {
70
+ return values.every((value) => (schema.$regExpAnyOf).some((regExp) => regExp.test(String(value))));
71
+ }
72
+ if (schema.$minimatch) {
73
+ return values.every((value) => (0, minimatch_1.default)(String(value), schema.$minimatch));
74
+ }
75
+ if (schema.$minimatchAnyOf) {
76
+ return values.every((value) => (schema.$minimatchAnyOf).some((pattern) => (0, minimatch_1.default)(String(value), pattern)));
77
+ }
78
+ return values.length !== 0;
79
+ }
80
+ default: return false;
81
+ }
82
+ });
83
+ //# sourceMappingURL=has.operator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"has.operator.js","sourceRoot":"","sources":["../../../../../src/server/expectations/operators/has.operator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=has.operator.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"has.operator.spec.d.ts","sourceRoot":"","sources":["../../../../../src/server/expectations/operators/has.operator.spec.ts"],"names":[],"mappings":""}