@n1k1t/mock-server 0.1.61 → 0.1.63

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 (639) hide show
  1. package/lib/package.json +1 -1
  2. package/lib/src/client/helpers/expectations.d.ts.map +1 -1
  3. package/lib/src/client/helpers/expectations.js.map +1 -1
  4. package/lib/src/client/models/client.d.ts +6 -25
  5. package/lib/src/client/models/client.d.ts.map +1 -1
  6. package/lib/src/client/models/client.js +0 -2
  7. package/lib/src/client/models/client.js.map +1 -1
  8. package/lib/src/client/models/types.d.ts +28 -0
  9. package/lib/src/client/models/types.d.ts.map +1 -0
  10. package/lib/src/client/models/types.js +6 -0
  11. package/lib/src/client/models/types.js.map +1 -0
  12. package/lib/src/client/onsite.d.ts +3 -3
  13. package/lib/src/client/onsite.d.ts.map +1 -1
  14. package/lib/src/client/onsite.js.map +1 -1
  15. package/lib/src/client/remote.d.ts +4 -4
  16. package/lib/src/client/remote.d.ts.map +1 -1
  17. package/lib/src/client/remote.js +3 -3
  18. package/lib/src/client/remote.js.map +1 -1
  19. package/lib/src/expectations/models/expectation.d.ts +6 -6
  20. package/lib/src/expectations/models/expectation.d.ts.map +1 -1
  21. package/lib/src/expectations/models/expectation.js +1 -1
  22. package/lib/src/expectations/models/expectation.js.map +1 -1
  23. package/lib/src/expectations/models/operator.d.ts +1 -1
  24. package/lib/src/expectations/models/operator.d.ts.map +1 -1
  25. package/lib/src/expectations/models/storage.d.ts +1 -1
  26. package/lib/src/expectations/models/storage.d.ts.map +1 -1
  27. package/lib/src/expectations/models/storage.js.map +1 -1
  28. package/lib/src/expectations/types.d.ts +4 -4
  29. package/lib/src/expectations/types.d.ts.map +1 -1
  30. package/lib/src/expectations/types.js.map +1 -1
  31. package/lib/src/server/endpoints/expectations.create.endpoint.d.ts +1 -1
  32. package/lib/src/server/endpoints/gui.endpoint.d.ts +1 -8
  33. package/lib/src/server/endpoints/gui.endpoint.d.ts.map +1 -1
  34. package/lib/src/server/index.d.ts +17 -20
  35. package/lib/src/server/index.d.ts.map +1 -1
  36. package/lib/src/server/index.js +3 -2
  37. package/lib/src/server/index.js.map +1 -1
  38. package/lib/src/server/models/context/index.d.ts +4 -4
  39. package/lib/src/server/models/context/index.d.ts.map +1 -1
  40. package/lib/src/server/models/context/index.js +1 -1
  41. package/lib/src/server/models/context/index.js.map +1 -1
  42. package/lib/src/server/models/context/snapshot.d.ts +2 -2
  43. package/lib/src/server/models/context/snapshot.d.ts.map +1 -1
  44. package/lib/src/server/models/context/snapshot.js.map +1 -1
  45. package/lib/src/server/models/providers/model.d.ts +4 -4
  46. package/lib/src/server/models/providers/model.d.ts.map +1 -1
  47. package/lib/src/server/models/providers/model.js.map +1 -1
  48. package/lib/src/server/models/providers/storage.d.ts +5 -4
  49. package/lib/src/server/models/providers/storage.d.ts.map +1 -1
  50. package/lib/src/server/models/providers/storage.js +3 -0
  51. package/lib/src/server/models/providers/storage.js.map +1 -1
  52. package/lib/src/server/models/router.d.ts +4 -4
  53. package/lib/src/server/models/router.d.ts.map +1 -1
  54. package/lib/src/server/models/router.js.map +1 -1
  55. package/lib/src/server/models/transports/model.d.ts +1 -1
  56. package/lib/src/server/models/transports/model.d.ts.map +1 -1
  57. package/lib/src/server/models/transports/model.js.map +1 -1
  58. package/lib/src/server/models/transports/storage.d.ts +2 -1
  59. package/lib/src/server/models/transports/storage.d.ts.map +1 -1
  60. package/lib/src/server/models/transports/storage.js +3 -0
  61. package/lib/src/server/models/transports/storage.js.map +1 -1
  62. package/lib/src/server/transports/http.transport/context.d.ts +4 -4
  63. package/lib/src/server/transports/http.transport/context.d.ts.map +1 -1
  64. package/lib/src/server/transports/http.transport/context.js.map +1 -1
  65. package/lib/src/server/transports/http.transport/index.d.ts +2 -2
  66. package/lib/src/server/transports/http.transport/index.d.ts.map +1 -1
  67. package/lib/src/server/transports/http.transport/index.js.map +1 -1
  68. package/lib/src/server/transports/internal/http.transport/index.d.ts +1 -1
  69. package/lib/src/server/transports/internal/http.transport/index.d.ts.map +1 -1
  70. package/lib/src/server/transports/internal/http.transport/index.js.map +1 -1
  71. package/lib/src/server/transports/internal/io.transport/index.d.ts +1 -1
  72. package/lib/src/server/transports/internal/io.transport/index.d.ts.map +1 -1
  73. package/lib/src/server/transports/internal/io.transport/index.js.map +1 -1
  74. package/lib/src/server/transports/ws.transport/context.d.ts +3 -3
  75. package/lib/src/server/transports/ws.transport/context.d.ts.map +1 -1
  76. package/lib/src/server/transports/ws.transport/context.js.map +1 -1
  77. package/lib/src/server/transports/ws.transport/index.d.ts +2 -2
  78. package/lib/src/server/transports/ws.transport/index.d.ts.map +1 -1
  79. package/lib/src/server/transports/ws.transport/index.js.map +1 -1
  80. package/lib/src/server/types/index.d.ts +14 -4
  81. package/lib/src/server/types/index.d.ts.map +1 -1
  82. package/package.json +1 -1
  83. package/bin/index.ts +0 -33
  84. package/coverage/clover.xml +0 -1372
  85. package/coverage/cobertura-coverage.xml +0 -3466
  86. package/coverage/coverage-final.json +0 -76
  87. package/coverage/lcov-report/base.css +0 -224
  88. package/coverage/lcov-report/block-navigation.js +0 -87
  89. package/coverage/lcov-report/client/errors/connection.error.ts.html +0 -106
  90. package/coverage/lcov-report/client/errors/index.html +0 -161
  91. package/coverage/lcov-report/client/errors/index.ts.html +0 -97
  92. package/coverage/lcov-report/client/errors/internal-server.error.ts.html +0 -115
  93. package/coverage/lcov-report/client/errors/validation.error.ts.html +0 -115
  94. package/coverage/lcov-report/client/helpers/expectations.ts.html +0 -766
  95. package/coverage/lcov-report/client/helpers/index.html +0 -131
  96. package/coverage/lcov-report/client/helpers/index.ts.html +0 -88
  97. package/coverage/lcov-report/client/index.html +0 -161
  98. package/coverage/lcov-report/client/index.ts.html +0 -100
  99. package/coverage/lcov-report/client/methods/expectations-group.update.method.ts.html +0 -193
  100. package/coverage/lcov-report/client/methods/expectations.create.method.ts.html +0 -202
  101. package/coverage/lcov-report/client/methods/expectations.delete.method.ts.html +0 -184
  102. package/coverage/lcov-report/client/methods/expectations.update.method.ts.html +0 -241
  103. package/coverage/lcov-report/client/methods/index.html +0 -191
  104. package/coverage/lcov-report/client/methods/index.ts.html +0 -103
  105. package/coverage/lcov-report/client/methods/ping.method.ts.html +0 -160
  106. package/coverage/lcov-report/client/models/client.ts.html +0 -340
  107. package/coverage/lcov-report/client/models/index.html +0 -146
  108. package/coverage/lcov-report/client/models/index.ts.html +0 -91
  109. package/coverage/lcov-report/client/models/method.ts.html +0 -235
  110. package/coverage/lcov-report/client/onsite.ts.html +0 -172
  111. package/coverage/lcov-report/client/remote.ts.html +0 -187
  112. package/coverage/lcov-report/client/utils.ts.html +0 -211
  113. package/coverage/lcov-report/config/index.html +0 -131
  114. package/coverage/lcov-report/config/index.ts.html +0 -97
  115. package/coverage/lcov-report/config/model.ts.html +0 -226
  116. package/coverage/lcov-report/expectations/__utils__/index.html +0 -116
  117. package/coverage/lcov-report/expectations/__utils__/index.ts.html +0 -268
  118. package/coverage/lcov-report/expectations/index.html +0 -146
  119. package/coverage/lcov-report/expectations/index.ts.html +0 -94
  120. package/coverage/lcov-report/expectations/models/expectation.ts.html +0 -373
  121. package/coverage/lcov-report/expectations/models/index.html +0 -161
  122. package/coverage/lcov-report/expectations/models/index.ts.html +0 -94
  123. package/coverage/lcov-report/expectations/models/operator.ts.html +0 -352
  124. package/coverage/lcov-report/expectations/models/storage.ts.html +0 -211
  125. package/coverage/lcov-report/expectations/operators/and.operator.ts.html +0 -196
  126. package/coverage/lcov-report/expectations/operators/exec.operator.ts.html +0 -160
  127. package/coverage/lcov-report/expectations/operators/has.operator.ts.html +0 -778
  128. package/coverage/lcov-report/expectations/operators/if.operator.ts.html +0 -316
  129. package/coverage/lcov-report/expectations/operators/index.html +0 -281
  130. package/coverage/lcov-report/expectations/operators/index.ts.html +0 -118
  131. package/coverage/lcov-report/expectations/operators/merge.operator.ts.html +0 -379
  132. package/coverage/lcov-report/expectations/operators/not.operator.ts.html +0 -199
  133. package/coverage/lcov-report/expectations/operators/or.operator.ts.html +0 -196
  134. package/coverage/lcov-report/expectations/operators/remove.operator.ts.html +0 -238
  135. package/coverage/lcov-report/expectations/operators/root.operator.ts.html +0 -238
  136. package/coverage/lcov-report/expectations/operators/set.operator.ts.html +0 -436
  137. package/coverage/lcov-report/expectations/operators/switch.operator.ts.html +0 -463
  138. package/coverage/lcov-report/expectations/types.ts.html +0 -766
  139. package/coverage/lcov-report/expectations/utils.ts.html +0 -802
  140. package/coverage/lcov-report/favicon.png +0 -0
  141. package/coverage/lcov-report/index.html +0 -431
  142. package/coverage/lcov-report/logger/index.html +0 -131
  143. package/coverage/lcov-report/logger/index.ts.html +0 -325
  144. package/coverage/lcov-report/logger/utils.ts.html +0 -160
  145. package/coverage/lcov-report/meta/index.html +0 -146
  146. package/coverage/lcov-report/meta/index.ts.html +0 -103
  147. package/coverage/lcov-report/meta/model.ts.html +0 -172
  148. package/coverage/lcov-report/meta/storage.ts.html +0 -145
  149. package/coverage/lcov-report/prettify.css +0 -1
  150. package/coverage/lcov-report/prettify.js +0 -2
  151. package/coverage/lcov-report/server/expectations/__utils__/index.html +0 -116
  152. package/coverage/lcov-report/server/expectations/__utils__/index.ts.html +0 -199
  153. package/coverage/lcov-report/server/expectations/index.html +0 -131
  154. package/coverage/lcov-report/server/expectations/operators/and.operator.ts.html +0 -103
  155. package/coverage/lcov-report/server/expectations/operators/exec.operator.ts.html +0 -139
  156. package/coverage/lcov-report/server/expectations/operators/has.operator.ts.html +0 -358
  157. package/coverage/lcov-report/server/expectations/operators/if.operator.ts.html +0 -130
  158. package/coverage/lcov-report/server/expectations/operators/index.html +0 -266
  159. package/coverage/lcov-report/server/expectations/operators/index.ts.html +0 -112
  160. package/coverage/lcov-report/server/expectations/operators/merge.operator.ts.html +0 -193
  161. package/coverage/lcov-report/server/expectations/operators/not.operator.ts.html +0 -100
  162. package/coverage/lcov-report/server/expectations/operators/or.operator.ts.html +0 -115
  163. package/coverage/lcov-report/server/expectations/operators/remove.operator.ts.html +0 -169
  164. package/coverage/lcov-report/server/expectations/operators/set.operator.ts.html +0 -208
  165. package/coverage/lcov-report/server/expectations/operators/utils.ts.html +0 -346
  166. package/coverage/lcov-report/server/expectations/types.ts.html +0 -517
  167. package/coverage/lcov-report/server/expectations/utils.ts.html +0 -358
  168. package/coverage/lcov-report/server/models/containers/index.html +0 -161
  169. package/coverage/lcov-report/server/models/containers/index.ts.html +0 -91
  170. package/coverage/lcov-report/server/models/containers/model.ts.html +0 -328
  171. package/coverage/lcov-report/server/models/containers/storage.ts.html +0 -256
  172. package/coverage/lcov-report/server/models/containers/utils.ts.html +0 -97
  173. package/coverage/lcov-report/server/models/context/index.html +0 -146
  174. package/coverage/lcov-report/server/models/context/index.ts.html +0 -514
  175. package/coverage/lcov-report/server/models/context/snapshot.ts.html +0 -529
  176. package/coverage/lcov-report/server/models/context/utils.ts.html +0 -382
  177. package/coverage/lcov-report/server/models/endpoint.ts.html +0 -304
  178. package/coverage/lcov-report/server/models/exchanges/index.html +0 -131
  179. package/coverage/lcov-report/server/models/exchanges/index.ts.html +0 -88
  180. package/coverage/lcov-report/server/models/exchanges/socket-io.ts.html +0 -154
  181. package/coverage/lcov-report/server/models/executor/errors/index.html +0 -116
  182. package/coverage/lcov-report/server/models/executor/errors/index.ts.html +0 -130
  183. package/coverage/lcov-report/server/models/executor/index.html +0 -116
  184. package/coverage/lcov-report/server/models/executor/index.ts.html +0 -1018
  185. package/coverage/lcov-report/server/models/history/index.html +0 -146
  186. package/coverage/lcov-report/server/models/history/index.ts.html +0 -91
  187. package/coverage/lcov-report/server/models/history/model.ts.html +0 -331
  188. package/coverage/lcov-report/server/models/history/storage.ts.html +0 -184
  189. package/coverage/lcov-report/server/models/index.html +0 -161
  190. package/coverage/lcov-report/server/models/index.ts.html +0 -115
  191. package/coverage/lcov-report/server/models/providers/index.html +0 -146
  192. package/coverage/lcov-report/server/models/providers/index.ts.html +0 -91
  193. package/coverage/lcov-report/server/models/providers/model.ts.html +0 -211
  194. package/coverage/lcov-report/server/models/providers/storage.ts.html +0 -172
  195. package/coverage/lcov-report/server/models/reply.ts.html +0 -115
  196. package/coverage/lcov-report/server/models/router.ts.html +0 -313
  197. package/coverage/lcov-report/server/models/transports/index.html +0 -146
  198. package/coverage/lcov-report/server/models/transports/index.ts.html +0 -91
  199. package/coverage/lcov-report/server/models/transports/model.ts.html +0 -112
  200. package/coverage/lcov-report/server/models/transports/storage.ts.html +0 -124
  201. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  202. package/coverage/lcov-report/sorter.js +0 -196
  203. package/coverage/lcov-report/utils/common.ts.html +0 -187
  204. package/coverage/lcov-report/utils/index.html +0 -176
  205. package/coverage/lcov-report/utils/index.ts.html +0 -97
  206. package/coverage/lcov-report/utils/json.ts.html +0 -193
  207. package/coverage/lcov-report/utils/regexp.ts.html +0 -97
  208. package/coverage/lcov-report/utils/validation.ts.html +0 -190
  209. package/coverage/lcov.info +0 -3012
  210. package/discardedTests.txt +0 -35606
  211. package/images/preview.png +0 -0
  212. package/images/strategy.png +0 -0
  213. package/keploy.yml +0 -64
  214. package/lib/src/client/errors/connection.error.spec.d.ts +0 -2
  215. package/lib/src/client/errors/connection.error.spec.d.ts.map +0 -1
  216. package/lib/src/client/errors/connection.error.spec.js +0 -12
  217. package/lib/src/client/errors/connection.error.spec.js.map +0 -1
  218. package/lib/src/client/errors/internal-server.error.spec.d.ts +0 -2
  219. package/lib/src/client/errors/internal-server.error.spec.d.ts.map +0 -1
  220. package/lib/src/client/errors/internal-server.error.spec.js +0 -12
  221. package/lib/src/client/errors/internal-server.error.spec.js.map +0 -1
  222. package/lib/src/client/errors/validation.error.spec.d.ts +0 -2
  223. package/lib/src/client/errors/validation.error.spec.d.ts.map +0 -1
  224. package/lib/src/client/errors/validation.error.spec.js +0 -10
  225. package/lib/src/client/errors/validation.error.spec.js.map +0 -1
  226. package/lib/src/client/models/client.spec.d.ts +0 -2
  227. package/lib/src/client/models/client.spec.d.ts.map +0 -1
  228. package/lib/src/client/models/client.spec.js +0 -244
  229. package/lib/src/client/models/client.spec.js.map +0 -1
  230. package/lib/src/client/onsite.spec.d.ts +0 -2
  231. package/lib/src/client/onsite.spec.d.ts.map +0 -1
  232. package/lib/src/client/onsite.spec.js +0 -23
  233. package/lib/src/client/onsite.spec.js.map +0 -1
  234. package/lib/src/client/remote.spec.d.ts +0 -2
  235. package/lib/src/client/remote.spec.d.ts.map +0 -1
  236. package/lib/src/client/remote.spec.js +0 -16
  237. package/lib/src/client/remote.spec.js.map +0 -1
  238. package/lib/src/client/utils.spec.d.ts +0 -2
  239. package/lib/src/client/utils.spec.d.ts.map +0 -1
  240. package/lib/src/client/utils.spec.js +0 -57
  241. package/lib/src/client/utils.spec.js.map +0 -1
  242. package/lib/src/expectations/models/storage.spec.d.ts +0 -2
  243. package/lib/src/expectations/models/storage.spec.d.ts.map +0 -1
  244. package/lib/src/expectations/models/storage.spec.js +0 -57
  245. package/lib/src/expectations/models/storage.spec.js.map +0 -1
  246. package/lib/src/expectations/operators/and.operator.spec.d.ts +0 -2
  247. package/lib/src/expectations/operators/and.operator.spec.d.ts.map +0 -1
  248. package/lib/src/expectations/operators/and.operator.spec.js +0 -83
  249. package/lib/src/expectations/operators/and.operator.spec.js.map +0 -1
  250. package/lib/src/expectations/operators/exec.operator.spec.d.ts +0 -2
  251. package/lib/src/expectations/operators/exec.operator.spec.d.ts.map +0 -1
  252. package/lib/src/expectations/operators/exec.operator.spec.js +0 -68
  253. package/lib/src/expectations/operators/exec.operator.spec.js.map +0 -1
  254. package/lib/src/expectations/operators/has.operator.spec.d.ts +0 -2
  255. package/lib/src/expectations/operators/has.operator.spec.d.ts.map +0 -1
  256. package/lib/src/expectations/operators/has.operator.spec.js +0 -444
  257. package/lib/src/expectations/operators/has.operator.spec.js.map +0 -1
  258. package/lib/src/expectations/operators/if.operator.spec.d.ts +0 -2
  259. package/lib/src/expectations/operators/if.operator.spec.d.ts.map +0 -1
  260. package/lib/src/expectations/operators/if.operator.spec.js +0 -132
  261. package/lib/src/expectations/operators/if.operator.spec.js.map +0 -1
  262. package/lib/src/expectations/operators/merge.operator.spec.d.ts +0 -2
  263. package/lib/src/expectations/operators/merge.operator.spec.d.ts.map +0 -1
  264. package/lib/src/expectations/operators/merge.operator.spec.js +0 -75
  265. package/lib/src/expectations/operators/merge.operator.spec.js.map +0 -1
  266. package/lib/src/expectations/operators/not.operator.spec.d.ts +0 -2
  267. package/lib/src/expectations/operators/not.operator.spec.d.ts.map +0 -1
  268. package/lib/src/expectations/operators/not.operator.spec.js +0 -46
  269. package/lib/src/expectations/operators/not.operator.spec.js.map +0 -1
  270. package/lib/src/expectations/operators/or.operator.spec.d.ts +0 -2
  271. package/lib/src/expectations/operators/or.operator.spec.d.ts.map +0 -1
  272. package/lib/src/expectations/operators/or.operator.spec.js +0 -84
  273. package/lib/src/expectations/operators/or.operator.spec.js.map +0 -1
  274. package/lib/src/expectations/operators/remove.operator.spec.d.ts +0 -2
  275. package/lib/src/expectations/operators/remove.operator.spec.d.ts.map +0 -1
  276. package/lib/src/expectations/operators/remove.operator.spec.js +0 -67
  277. package/lib/src/expectations/operators/remove.operator.spec.js.map +0 -1
  278. package/lib/src/expectations/operators/root.operator.spec.d.ts +0 -2
  279. package/lib/src/expectations/operators/root.operator.spec.d.ts.map +0 -1
  280. package/lib/src/expectations/operators/root.operator.spec.js +0 -29
  281. package/lib/src/expectations/operators/root.operator.spec.js.map +0 -1
  282. package/lib/src/expectations/operators/set.operator.spec.d.ts +0 -2
  283. package/lib/src/expectations/operators/set.operator.spec.d.ts.map +0 -1
  284. package/lib/src/expectations/operators/set.operator.spec.js +0 -111
  285. package/lib/src/expectations/operators/set.operator.spec.js.map +0 -1
  286. package/lib/src/expectations/operators/switch.operator.spec.d.ts +0 -2
  287. package/lib/src/expectations/operators/switch.operator.spec.d.ts.map +0 -1
  288. package/lib/src/expectations/operators/switch.operator.spec.js +0 -139
  289. package/lib/src/expectations/operators/switch.operator.spec.js.map +0 -1
  290. package/lib/src/expectations/utils/location.spec.d.ts +0 -2
  291. package/lib/src/expectations/utils/location.spec.d.ts.map +0 -1
  292. package/lib/src/expectations/utils/location.spec.js +0 -62
  293. package/lib/src/expectations/utils/location.spec.js.map +0 -1
  294. package/lib/src/expectations/utils/schema.spec.d.ts +0 -2
  295. package/lib/src/expectations/utils/schema.spec.d.ts.map +0 -1
  296. package/lib/src/expectations/utils/schema.spec.js +0 -19
  297. package/lib/src/expectations/utils/schema.spec.js.map +0 -1
  298. package/lib/src/meta/model.spec.d.ts +0 -2
  299. package/lib/src/meta/model.spec.d.ts.map +0 -1
  300. package/lib/src/meta/model.spec.js +0 -28
  301. package/lib/src/meta/model.spec.js.map +0 -1
  302. package/lib/src/meta/storage.spec.d.ts +0 -2
  303. package/lib/src/meta/storage.spec.d.ts.map +0 -1
  304. package/lib/src/meta/storage.spec.js +0 -19
  305. package/lib/src/meta/storage.spec.js.map +0 -1
  306. package/lib/src/server/models/containers/model.spec.d.ts +0 -2
  307. package/lib/src/server/models/containers/model.spec.d.ts.map +0 -1
  308. package/lib/src/server/models/containers/model.spec.js +0 -79
  309. package/lib/src/server/models/containers/model.spec.js.map +0 -1
  310. package/lib/src/server/models/containers/storage.spec.d.ts +0 -2
  311. package/lib/src/server/models/containers/storage.spec.d.ts.map +0 -1
  312. package/lib/src/server/models/containers/storage.spec.js +0 -39
  313. package/lib/src/server/models/containers/storage.spec.js.map +0 -1
  314. package/lib/src/server/models/context/index.spec.d.ts +0 -2
  315. package/lib/src/server/models/context/index.spec.d.ts.map +0 -1
  316. package/lib/src/server/models/context/index.spec.js +0 -143
  317. package/lib/src/server/models/context/index.spec.js.map +0 -1
  318. package/lib/src/server/models/context/snapshot.spec.d.ts +0 -2
  319. package/lib/src/server/models/context/snapshot.spec.d.ts.map +0 -1
  320. package/lib/src/server/models/context/snapshot.spec.js +0 -75
  321. package/lib/src/server/models/context/snapshot.spec.js.map +0 -1
  322. package/lib/src/server/models/context/utils.spec.d.ts +0 -2
  323. package/lib/src/server/models/context/utils.spec.d.ts.map +0 -1
  324. package/lib/src/server/models/context/utils.spec.js +0 -69
  325. package/lib/src/server/models/context/utils.spec.js.map +0 -1
  326. package/lib/src/server/models/endpoint.spec.d.ts +0 -2
  327. package/lib/src/server/models/endpoint.spec.d.ts.map +0 -1
  328. package/lib/src/server/models/endpoint.spec.js +0 -28
  329. package/lib/src/server/models/endpoint.spec.js.map +0 -1
  330. package/lib/src/server/models/exchanges/socket-io.spec.d.ts +0 -2
  331. package/lib/src/server/models/exchanges/socket-io.spec.d.ts.map +0 -1
  332. package/lib/src/server/models/exchanges/socket-io.spec.js +0 -12
  333. package/lib/src/server/models/exchanges/socket-io.spec.js.map +0 -1
  334. package/lib/src/server/models/executor/errors/index.spec.d.ts +0 -2
  335. package/lib/src/server/models/executor/errors/index.spec.d.ts.map +0 -1
  336. package/lib/src/server/models/executor/errors/index.spec.js +0 -23
  337. package/lib/src/server/models/executor/errors/index.spec.js.map +0 -1
  338. package/lib/src/server/models/executor/index.spec.d.ts +0 -2
  339. package/lib/src/server/models/executor/index.spec.d.ts.map +0 -1
  340. package/lib/src/server/models/executor/index.spec.js +0 -137
  341. package/lib/src/server/models/executor/index.spec.js.map +0 -1
  342. package/lib/src/server/models/history/model.spec.d.ts +0 -2
  343. package/lib/src/server/models/history/model.spec.d.ts.map +0 -1
  344. package/lib/src/server/models/history/model.spec.js +0 -30
  345. package/lib/src/server/models/history/model.spec.js.map +0 -1
  346. package/lib/src/server/models/history/storage.spec.d.ts +0 -2
  347. package/lib/src/server/models/history/storage.spec.d.ts.map +0 -1
  348. package/lib/src/server/models/history/storage.spec.js +0 -42
  349. package/lib/src/server/models/history/storage.spec.js.map +0 -1
  350. package/lib/src/server/models/providers/model.spec.d.ts +0 -2
  351. package/lib/src/server/models/providers/model.spec.d.ts.map +0 -1
  352. package/lib/src/server/models/providers/model.spec.js +0 -13
  353. package/lib/src/server/models/providers/model.spec.js.map +0 -1
  354. package/lib/src/server/models/providers/storage.spec.d.ts +0 -2
  355. package/lib/src/server/models/providers/storage.spec.d.ts.map +0 -1
  356. package/lib/src/server/models/providers/storage.spec.js +0 -19
  357. package/lib/src/server/models/providers/storage.spec.js.map +0 -1
  358. package/lib/src/server/models/reply.spec.d.ts +0 -2
  359. package/lib/src/server/models/reply.spec.d.ts.map +0 -1
  360. package/lib/src/server/models/reply.spec.js +0 -20
  361. package/lib/src/server/models/reply.spec.js.map +0 -1
  362. package/lib/src/server/models/router.spec.d.ts +0 -2
  363. package/lib/src/server/models/router.spec.d.ts.map +0 -1
  364. package/lib/src/server/models/router.spec.js +0 -46
  365. package/lib/src/server/models/router.spec.js.map +0 -1
  366. package/lib/src/server/models/transports/storage.spec.d.ts +0 -2
  367. package/lib/src/server/models/transports/storage.spec.d.ts.map +0 -1
  368. package/lib/src/server/models/transports/storage.spec.js +0 -13
  369. package/lib/src/server/models/transports/storage.spec.js.map +0 -1
  370. package/lib/src/server/services/analytics.service.spec.d.ts +0 -2
  371. package/lib/src/server/services/analytics.service.spec.d.ts.map +0 -1
  372. package/lib/src/server/services/analytics.service.spec.js +0 -35
  373. package/lib/src/server/services/analytics.service.spec.js.map +0 -1
  374. package/lib/src/server/services/metrics.service.spec.d.ts +0 -2
  375. package/lib/src/server/services/metrics.service.spec.d.ts.map +0 -1
  376. package/lib/src/server/services/metrics.service.spec.js +0 -35
  377. package/lib/src/server/services/metrics.service.spec.js.map +0 -1
  378. package/lib/src/utils/index.spec.d.ts +0 -2
  379. package/lib/src/utils/index.spec.d.ts.map +0 -1
  380. package/lib/src/utils/index.spec.js +0 -30
  381. package/lib/src/utils/index.spec.js.map +0 -1
  382. package/lib/tsconfig.tsbuildinfo +0 -1
  383. package/lib/vite.config.d.ts +0 -3
  384. package/lib/vite.config.d.ts.map +0 -1
  385. package/lib/vite.config.js +0 -57
  386. package/lib/vite.config.js.map +0 -1
  387. package/src/client/errors/connection.error.spec.ts +0 -10
  388. package/src/client/errors/connection.error.ts +0 -7
  389. package/src/client/errors/index.ts +0 -4
  390. package/src/client/errors/internal-server.error.spec.ts +0 -12
  391. package/src/client/errors/internal-server.error.ts +0 -10
  392. package/src/client/errors/types.ts +0 -3
  393. package/src/client/errors/validation.error.spec.ts +0 -9
  394. package/src/client/errors/validation.error.ts +0 -10
  395. package/src/client/helpers/expectations.ts +0 -227
  396. package/src/client/helpers/index.ts +0 -1
  397. package/src/client/index.ts +0 -5
  398. package/src/client/methods/expectations-group.update.method.ts +0 -36
  399. package/src/client/methods/expectations.create.method.ts +0 -39
  400. package/src/client/methods/expectations.delete.method.ts +0 -33
  401. package/src/client/methods/expectations.update.method.ts +0 -58
  402. package/src/client/methods/index.ts +0 -6
  403. package/src/client/methods/ping.method.ts +0 -25
  404. package/src/client/models/__snapshots__/client.spec.ts.snap +0 -1294
  405. package/src/client/models/client.spec.ts +0 -316
  406. package/src/client/models/client.ts +0 -85
  407. package/src/client/models/index.ts +0 -2
  408. package/src/client/models/method.ts +0 -50
  409. package/src/client/onsite.spec.ts +0 -23
  410. package/src/client/onsite.ts +0 -29
  411. package/src/client/remote.spec.ts +0 -15
  412. package/src/client/remote.ts +0 -34
  413. package/src/client/types.ts +0 -31
  414. package/src/client/utils.spec.ts +0 -60
  415. package/src/client/utils.ts +0 -41
  416. package/src/config/index.ts +0 -34
  417. package/src/config/model.ts +0 -24
  418. package/src/expectations/__utils__/index.ts +0 -61
  419. package/src/expectations/errors/index.ts +0 -7
  420. package/src/expectations/index.ts +0 -3
  421. package/src/expectations/models/expectation.ts +0 -96
  422. package/src/expectations/models/index.ts +0 -3
  423. package/src/expectations/models/operator.ts +0 -89
  424. package/src/expectations/models/storage.spec.ts +0 -70
  425. package/src/expectations/models/storage.ts +0 -42
  426. package/src/expectations/operators/and.operator.spec.ts +0 -59
  427. package/src/expectations/operators/and.operator.ts +0 -37
  428. package/src/expectations/operators/exec.operator.spec.ts +0 -47
  429. package/src/expectations/operators/exec.operator.ts +0 -25
  430. package/src/expectations/operators/has.operator.spec.ts +0 -514
  431. package/src/expectations/operators/has.operator.ts +0 -230
  432. package/src/expectations/operators/if.operator.spec.ts +0 -116
  433. package/src/expectations/operators/if.operator.ts +0 -77
  434. package/src/expectations/operators/index.ts +0 -11
  435. package/src/expectations/operators/merge.operator.spec.ts +0 -48
  436. package/src/expectations/operators/merge.operator.ts +0 -97
  437. package/src/expectations/operators/not.operator.spec.ts +0 -12
  438. package/src/expectations/operators/not.operator.ts +0 -38
  439. package/src/expectations/operators/or.operator.spec.ts +0 -60
  440. package/src/expectations/operators/or.operator.ts +0 -37
  441. package/src/expectations/operators/remove.operator.spec.ts +0 -40
  442. package/src/expectations/operators/remove.operator.ts +0 -50
  443. package/src/expectations/operators/root.operator.spec.ts +0 -26
  444. package/src/expectations/operators/root.operator.ts +0 -51
  445. package/src/expectations/operators/set.operator.spec.ts +0 -96
  446. package/src/expectations/operators/set.operator.ts +0 -116
  447. package/src/expectations/operators/switch.operator.spec.ts +0 -157
  448. package/src/expectations/operators/switch.operator.ts +0 -126
  449. package/src/expectations/types.ts +0 -225
  450. package/src/expectations/utils/index.ts +0 -3
  451. package/src/expectations/utils/json.ts +0 -22
  452. package/src/expectations/utils/location.spec.ts +0 -64
  453. package/src/expectations/utils/location.ts +0 -180
  454. package/src/expectations/utils/schema.spec.ts +0 -17
  455. package/src/expectations/utils/schema.ts +0 -60
  456. package/src/gui/app/components/chart.component/index.ts +0 -173
  457. package/src/gui/app/components/chart.component/style.scss +0 -4
  458. package/src/gui/app/components/checkbox-area.component/index.ts +0 -101
  459. package/src/gui/app/components/checkbox-area.component/item.component.ts +0 -72
  460. package/src/gui/app/components/checkbox-area.component/style.scss +0 -19
  461. package/src/gui/app/components/checkbox-area.component/template.hbs +0 -3
  462. package/src/gui/app/components/curtain.component/index.ts +0 -19
  463. package/src/gui/app/components/curtain.component/style.scss +0 -14
  464. package/src/gui/app/components/empty.component/index.ts +0 -10
  465. package/src/gui/app/components/empty.component/style.scss +0 -34
  466. package/src/gui/app/components/empty.component/template.hbs +0 -6
  467. package/src/gui/app/components/expectation.component/index.ts +0 -60
  468. package/src/gui/app/components/expectation.component/style.scss +0 -5
  469. package/src/gui/app/components/expectation.component/template.hbs +0 -5
  470. package/src/gui/app/components/header.component/index.ts +0 -81
  471. package/src/gui/app/components/header.component/style.scss +0 -46
  472. package/src/gui/app/components/header.component/template.hbs +0 -15
  473. package/src/gui/app/components/history.component/index.ts +0 -86
  474. package/src/gui/app/components/history.component/style.scss +0 -5
  475. package/src/gui/app/components/history.component/template.hbs +0 -62
  476. package/src/gui/app/components/index.ts +0 -11
  477. package/src/gui/app/components/loader.component/index.ts +0 -12
  478. package/src/gui/app/components/loader.component/style.scss +0 -39
  479. package/src/gui/app/components/panel.component/index.ts +0 -52
  480. package/src/gui/app/components/panel.component/style.scss +0 -60
  481. package/src/gui/app/components/panel.component/template.hbs +0 -13
  482. package/src/gui/app/components/popups.component/index.ts +0 -26
  483. package/src/gui/app/components/popups.component/style.scss +0 -51
  484. package/src/gui/app/components/popups.component/template.hbs +0 -9
  485. package/src/gui/app/components/search.component/index.ts +0 -67
  486. package/src/gui/app/components/search.component/style.scss +0 -43
  487. package/src/gui/app/components/search.component/template.hbs +0 -7
  488. package/src/gui/app/components/viewer.component/index.ts +0 -28
  489. package/src/gui/app/components/viewer.component/style.scss +0 -38
  490. package/src/gui/app/components/viewer.component/template.hbs +0 -3
  491. package/src/gui/app/context.ts +0 -76
  492. package/src/gui/app/handlebars/helpers.ts +0 -32
  493. package/src/gui/app/handlebars/index.ts +0 -11
  494. package/src/gui/app/handlebars/partials/expectation-meta.hbs +0 -53
  495. package/src/gui/app/handlebars/partials/index.ts +0 -2
  496. package/src/gui/app/handlebars/partials/truncated.hbs +0 -10
  497. package/src/gui/app/handlebars/utils.ts +0 -9
  498. package/src/gui/app/main.ts +0 -38
  499. package/src/gui/app/models/button.ts +0 -41
  500. package/src/gui/app/models/client-storage.ts +0 -21
  501. package/src/gui/app/models/component.ts +0 -79
  502. package/src/gui/app/models/context.ts +0 -14
  503. package/src/gui/app/models/dynamic-storage.ts +0 -36
  504. package/src/gui/app/models/form.ts +0 -75
  505. package/src/gui/app/models/index.ts +0 -7
  506. package/src/gui/app/models/section.ts +0 -82
  507. package/src/gui/app/sections/analytics.section/index.ts +0 -97
  508. package/src/gui/app/sections/analytics.section/style.scss +0 -1
  509. package/src/gui/app/sections/analytics.section/template.hbs +0 -6
  510. package/src/gui/app/sections/expectations.section/index.ts +0 -179
  511. package/src/gui/app/sections/expectations.section/style.scss +0 -1
  512. package/src/gui/app/sections/expectations.section/template.hbs +0 -15
  513. package/src/gui/app/sections/history.section/index.ts +0 -175
  514. package/src/gui/app/sections/history.section/style.scss +0 -10
  515. package/src/gui/app/sections/history.section/templates/actions.hbs +0 -5
  516. package/src/gui/app/sections/history.section/templates/section.hbs +0 -15
  517. package/src/gui/app/sections/index.ts +0 -4
  518. package/src/gui/app/sections/settings.section/index.ts +0 -63
  519. package/src/gui/app/sections/settings.section/style.scss +0 -24
  520. package/src/gui/app/sections/settings.section/templates/cache.hbs +0 -6
  521. package/src/gui/app/sections/settings.section/templates/section.hbs +0 -6
  522. package/src/gui/app/sections/settings.section/templates/stats.hbs +0 -6
  523. package/src/gui/app/setup.ts +0 -7
  524. package/src/gui/app/tsconfig.json +0 -20
  525. package/src/gui/app/types/dev.ts +0 -6
  526. package/src/gui/app/types/index.ts +0 -1
  527. package/src/gui/app/types/window.global.ts +0 -9
  528. package/src/gui/app/utils.ts +0 -15
  529. package/src/gui/assets/fa-all.css +0 -5
  530. package/src/gui/assets/fa-regular-400.woff2 +0 -0
  531. package/src/gui/assets/fa-solid-900.woff2 +0 -0
  532. package/src/gui/assets/favicon.png +0 -0
  533. package/src/gui/index.html +0 -18
  534. package/src/gui/styles/_constants.scss +0 -11
  535. package/src/gui/styles/_elements.scss +0 -216
  536. package/src/gui/styles/_soon.scss +0 -35
  537. package/src/gui/styles/main.scss +0 -245
  538. package/src/index.ts +0 -9
  539. package/src/logger/index.ts +0 -80
  540. package/src/logger/types.ts +0 -4
  541. package/src/logger/utils.ts +0 -25
  542. package/src/meta/index.ts +0 -6
  543. package/src/meta/model.spec.ts +0 -28
  544. package/src/meta/model.ts +0 -29
  545. package/src/meta/storage.spec.ts +0 -18
  546. package/src/meta/storage.ts +0 -20
  547. package/src/server/endpoints/cache.delete.endpoint.ts +0 -54
  548. package/src/server/endpoints/cache.usage.get.endpoint.ts +0 -12
  549. package/src/server/endpoints/config.get.endpoint.ts +0 -10
  550. package/src/server/endpoints/expectations-group.update.endpoint.ts +0 -32
  551. package/src/server/endpoints/expectations.create.endpoint.ts +0 -23
  552. package/src/server/endpoints/expectations.delete.endpoint.ts +0 -12
  553. package/src/server/endpoints/expectations.get-list.endpoint.ts +0 -15
  554. package/src/server/endpoints/expectations.update.endpoint.ts +0 -29
  555. package/src/server/endpoints/gui.endpoint.ts +0 -76
  556. package/src/server/endpoints/history.delete.endpoint.ts +0 -10
  557. package/src/server/endpoints/history.get-list.endpoint.ts +0 -15
  558. package/src/server/endpoints/index.ts +0 -18
  559. package/src/server/endpoints/metrics.endpoint.ts +0 -12
  560. package/src/server/endpoints/ping.endpoint.ts +0 -7
  561. package/src/server/endpoints/stats.endpoint.ts +0 -20
  562. package/src/server/index.ts +0 -182
  563. package/src/server/models/containers/index.ts +0 -2
  564. package/src/server/models/containers/model.spec.ts +0 -81
  565. package/src/server/models/containers/model.ts +0 -79
  566. package/src/server/models/containers/storage.spec.ts +0 -41
  567. package/src/server/models/containers/storage.ts +0 -59
  568. package/src/server/models/containers/utils.ts +0 -4
  569. package/src/server/models/context/index.spec.ts +0 -171
  570. package/src/server/models/context/index.ts +0 -136
  571. package/src/server/models/context/snapshot.spec.ts +0 -84
  572. package/src/server/models/context/snapshot.ts +0 -148
  573. package/src/server/models/context/types.ts +0 -65
  574. package/src/server/models/context/utils.spec.ts +0 -77
  575. package/src/server/models/context/utils.ts +0 -99
  576. package/src/server/models/endpoint.spec.ts +0 -28
  577. package/src/server/models/endpoint.ts +0 -69
  578. package/src/server/models/exchanges/index.ts +0 -1
  579. package/src/server/models/exchanges/socket-io.spec.ts +0 -13
  580. package/src/server/models/exchanges/socket-io.ts +0 -14
  581. package/src/server/models/executor/errors/index.spec.ts +0 -23
  582. package/src/server/models/executor/errors/index.ts +0 -15
  583. package/src/server/models/executor/index.spec.ts +0 -148
  584. package/src/server/models/executor/index.ts +0 -297
  585. package/src/server/models/history/index.ts +0 -2
  586. package/src/server/models/history/model.spec.ts +0 -35
  587. package/src/server/models/history/model.ts +0 -82
  588. package/src/server/models/history/storage.spec.ts +0 -41
  589. package/src/server/models/history/storage.ts +0 -38
  590. package/src/server/models/index.ts +0 -11
  591. package/src/server/models/providers/index.ts +0 -2
  592. package/src/server/models/providers/model.spec.ts +0 -11
  593. package/src/server/models/providers/model.ts +0 -33
  594. package/src/server/models/providers/storage.spec.ts +0 -21
  595. package/src/server/models/providers/storage.ts +0 -34
  596. package/src/server/models/reply.spec.ts +0 -17
  597. package/src/server/models/reply.ts +0 -10
  598. package/src/server/models/router.spec.ts +0 -50
  599. package/src/server/models/router.ts +0 -79
  600. package/src/server/models/service.ts +0 -5
  601. package/src/server/models/transports/index.ts +0 -2
  602. package/src/server/models/transports/model.ts +0 -9
  603. package/src/server/models/transports/storage.spec.ts +0 -14
  604. package/src/server/models/transports/storage.ts +0 -13
  605. package/src/server/services/analytics.service.spec.ts +0 -38
  606. package/src/server/services/analytics.service.ts +0 -58
  607. package/src/server/services/index.ts +0 -2
  608. package/src/server/services/metrics.service.spec.ts +0 -42
  609. package/src/server/services/metrics.service.ts +0 -46
  610. package/src/server/transports/http.transport/context.ts +0 -72
  611. package/src/server/transports/http.transport/executor.ts +0 -156
  612. package/src/server/transports/http.transport/index.ts +0 -53
  613. package/src/server/transports/index.ts +0 -3
  614. package/src/server/transports/internal/http.transport/context.ts +0 -50
  615. package/src/server/transports/internal/http.transport/executor.ts +0 -56
  616. package/src/server/transports/internal/http.transport/index.ts +0 -23
  617. package/src/server/transports/internal/http.transport/reply.ts +0 -82
  618. package/src/server/transports/internal/index.ts +0 -2
  619. package/src/server/transports/internal/io.transport/context.ts +0 -40
  620. package/src/server/transports/internal/io.transport/executor.ts +0 -27
  621. package/src/server/transports/internal/io.transport/index.ts +0 -36
  622. package/src/server/transports/internal/io.transport/reply.ts +0 -26
  623. package/src/server/transports/internal/utils.ts +0 -6
  624. package/src/server/transports/ws.transport/context.ts +0 -90
  625. package/src/server/transports/ws.transport/executor.ts +0 -64
  626. package/src/server/transports/ws.transport/index.ts +0 -105
  627. package/src/server/types/index.ts +0 -32
  628. package/src/server/utils/index.ts +0 -35
  629. package/src/utils/index.spec.ts +0 -31
  630. package/src/utils/index.ts +0 -51
  631. package/test/index.ts +0 -299
  632. package/test/providers/index.ts +0 -2
  633. package/test/providers/root.ts +0 -241
  634. package/test/providers/statics.ts +0 -37
  635. package/tsconfig.json +0 -108
  636. package/tsconfig.tsbuildinfo +0 -1
  637. package/types/common.ts +0 -127
  638. package/types/index.ts +0 -1
  639. package/vite.config.ts +0 -64
@@ -1,1018 +0,0 @@
1
-
2
- <!doctype html>
3
- <html lang="en">
4
-
5
- <head>
6
- <title>Code coverage report for server/models/executor/index.ts</title>
7
- <meta charset="utf-8" />
8
- <link rel="stylesheet" href="../../../prettify.css" />
9
- <link rel="stylesheet" href="../../../base.css" />
10
- <link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
11
- <meta name="viewport" content="width=device-width, initial-scale=1" />
12
- <style type='text/css'>
13
- .coverage-summary .sorter {
14
- background-image: url(../../../sort-arrow-sprite.png);
15
- }
16
- </style>
17
- </head>
18
-
19
- <body>
20
- <div class='wrapper'>
21
- <div class='pad1'>
22
- <h1><a href="../../../index.html">All files</a> / <a href="index.html">server/models/executor</a> index.ts</h1>
23
- <div class='clearfix'>
24
-
25
- <div class='fl pad1y space-right2'>
26
- <span class="strong">11% </span>
27
- <span class="quiet">Statements</span>
28
- <span class='fraction'>12/109</span>
29
- </div>
30
-
31
-
32
- <div class='fl pad1y space-right2'>
33
- <span class="strong">0% </span>
34
- <span class="quiet">Branches</span>
35
- <span class='fraction'>0/81</span>
36
- </div>
37
-
38
-
39
- <div class='fl pad1y space-right2'>
40
- <span class="strong">0% </span>
41
- <span class="quiet">Functions</span>
42
- <span class='fraction'>0/20</span>
43
- </div>
44
-
45
-
46
- <div class='fl pad1y space-right2'>
47
- <span class="strong">11.32% </span>
48
- <span class="quiet">Lines</span>
49
- <span class='fraction'>12/106</span>
50
- </div>
51
-
52
-
53
- </div>
54
- <p class="quiet">
55
- Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
- </p>
57
- <template id="filterTemplate">
58
- <div class="quiet">
59
- Filter:
60
- <input oninput="onInput()" type="search" id="fileSearch">
61
- </div>
62
- </template>
63
- </div>
64
- <div class='status-line low'></div>
65
- <pre><table class="coverage">
66
- <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
- <a name='L2'></a><a href='#L2'>2</a>
68
- <a name='L3'></a><a href='#L3'>3</a>
69
- <a name='L4'></a><a href='#L4'>4</a>
70
- <a name='L5'></a><a href='#L5'>5</a>
71
- <a name='L6'></a><a href='#L6'>6</a>
72
- <a name='L7'></a><a href='#L7'>7</a>
73
- <a name='L8'></a><a href='#L8'>8</a>
74
- <a name='L9'></a><a href='#L9'>9</a>
75
- <a name='L10'></a><a href='#L10'>10</a>
76
- <a name='L11'></a><a href='#L11'>11</a>
77
- <a name='L12'></a><a href='#L12'>12</a>
78
- <a name='L13'></a><a href='#L13'>13</a>
79
- <a name='L14'></a><a href='#L14'>14</a>
80
- <a name='L15'></a><a href='#L15'>15</a>
81
- <a name='L16'></a><a href='#L16'>16</a>
82
- <a name='L17'></a><a href='#L17'>17</a>
83
- <a name='L18'></a><a href='#L18'>18</a>
84
- <a name='L19'></a><a href='#L19'>19</a>
85
- <a name='L20'></a><a href='#L20'>20</a>
86
- <a name='L21'></a><a href='#L21'>21</a>
87
- <a name='L22'></a><a href='#L22'>22</a>
88
- <a name='L23'></a><a href='#L23'>23</a>
89
- <a name='L24'></a><a href='#L24'>24</a>
90
- <a name='L25'></a><a href='#L25'>25</a>
91
- <a name='L26'></a><a href='#L26'>26</a>
92
- <a name='L27'></a><a href='#L27'>27</a>
93
- <a name='L28'></a><a href='#L28'>28</a>
94
- <a name='L29'></a><a href='#L29'>29</a>
95
- <a name='L30'></a><a href='#L30'>30</a>
96
- <a name='L31'></a><a href='#L31'>31</a>
97
- <a name='L32'></a><a href='#L32'>32</a>
98
- <a name='L33'></a><a href='#L33'>33</a>
99
- <a name='L34'></a><a href='#L34'>34</a>
100
- <a name='L35'></a><a href='#L35'>35</a>
101
- <a name='L36'></a><a href='#L36'>36</a>
102
- <a name='L37'></a><a href='#L37'>37</a>
103
- <a name='L38'></a><a href='#L38'>38</a>
104
- <a name='L39'></a><a href='#L39'>39</a>
105
- <a name='L40'></a><a href='#L40'>40</a>
106
- <a name='L41'></a><a href='#L41'>41</a>
107
- <a name='L42'></a><a href='#L42'>42</a>
108
- <a name='L43'></a><a href='#L43'>43</a>
109
- <a name='L44'></a><a href='#L44'>44</a>
110
- <a name='L45'></a><a href='#L45'>45</a>
111
- <a name='L46'></a><a href='#L46'>46</a>
112
- <a name='L47'></a><a href='#L47'>47</a>
113
- <a name='L48'></a><a href='#L48'>48</a>
114
- <a name='L49'></a><a href='#L49'>49</a>
115
- <a name='L50'></a><a href='#L50'>50</a>
116
- <a name='L51'></a><a href='#L51'>51</a>
117
- <a name='L52'></a><a href='#L52'>52</a>
118
- <a name='L53'></a><a href='#L53'>53</a>
119
- <a name='L54'></a><a href='#L54'>54</a>
120
- <a name='L55'></a><a href='#L55'>55</a>
121
- <a name='L56'></a><a href='#L56'>56</a>
122
- <a name='L57'></a><a href='#L57'>57</a>
123
- <a name='L58'></a><a href='#L58'>58</a>
124
- <a name='L59'></a><a href='#L59'>59</a>
125
- <a name='L60'></a><a href='#L60'>60</a>
126
- <a name='L61'></a><a href='#L61'>61</a>
127
- <a name='L62'></a><a href='#L62'>62</a>
128
- <a name='L63'></a><a href='#L63'>63</a>
129
- <a name='L64'></a><a href='#L64'>64</a>
130
- <a name='L65'></a><a href='#L65'>65</a>
131
- <a name='L66'></a><a href='#L66'>66</a>
132
- <a name='L67'></a><a href='#L67'>67</a>
133
- <a name='L68'></a><a href='#L68'>68</a>
134
- <a name='L69'></a><a href='#L69'>69</a>
135
- <a name='L70'></a><a href='#L70'>70</a>
136
- <a name='L71'></a><a href='#L71'>71</a>
137
- <a name='L72'></a><a href='#L72'>72</a>
138
- <a name='L73'></a><a href='#L73'>73</a>
139
- <a name='L74'></a><a href='#L74'>74</a>
140
- <a name='L75'></a><a href='#L75'>75</a>
141
- <a name='L76'></a><a href='#L76'>76</a>
142
- <a name='L77'></a><a href='#L77'>77</a>
143
- <a name='L78'></a><a href='#L78'>78</a>
144
- <a name='L79'></a><a href='#L79'>79</a>
145
- <a name='L80'></a><a href='#L80'>80</a>
146
- <a name='L81'></a><a href='#L81'>81</a>
147
- <a name='L82'></a><a href='#L82'>82</a>
148
- <a name='L83'></a><a href='#L83'>83</a>
149
- <a name='L84'></a><a href='#L84'>84</a>
150
- <a name='L85'></a><a href='#L85'>85</a>
151
- <a name='L86'></a><a href='#L86'>86</a>
152
- <a name='L87'></a><a href='#L87'>87</a>
153
- <a name='L88'></a><a href='#L88'>88</a>
154
- <a name='L89'></a><a href='#L89'>89</a>
155
- <a name='L90'></a><a href='#L90'>90</a>
156
- <a name='L91'></a><a href='#L91'>91</a>
157
- <a name='L92'></a><a href='#L92'>92</a>
158
- <a name='L93'></a><a href='#L93'>93</a>
159
- <a name='L94'></a><a href='#L94'>94</a>
160
- <a name='L95'></a><a href='#L95'>95</a>
161
- <a name='L96'></a><a href='#L96'>96</a>
162
- <a name='L97'></a><a href='#L97'>97</a>
163
- <a name='L98'></a><a href='#L98'>98</a>
164
- <a name='L99'></a><a href='#L99'>99</a>
165
- <a name='L100'></a><a href='#L100'>100</a>
166
- <a name='L101'></a><a href='#L101'>101</a>
167
- <a name='L102'></a><a href='#L102'>102</a>
168
- <a name='L103'></a><a href='#L103'>103</a>
169
- <a name='L104'></a><a href='#L104'>104</a>
170
- <a name='L105'></a><a href='#L105'>105</a>
171
- <a name='L106'></a><a href='#L106'>106</a>
172
- <a name='L107'></a><a href='#L107'>107</a>
173
- <a name='L108'></a><a href='#L108'>108</a>
174
- <a name='L109'></a><a href='#L109'>109</a>
175
- <a name='L110'></a><a href='#L110'>110</a>
176
- <a name='L111'></a><a href='#L111'>111</a>
177
- <a name='L112'></a><a href='#L112'>112</a>
178
- <a name='L113'></a><a href='#L113'>113</a>
179
- <a name='L114'></a><a href='#L114'>114</a>
180
- <a name='L115'></a><a href='#L115'>115</a>
181
- <a name='L116'></a><a href='#L116'>116</a>
182
- <a name='L117'></a><a href='#L117'>117</a>
183
- <a name='L118'></a><a href='#L118'>118</a>
184
- <a name='L119'></a><a href='#L119'>119</a>
185
- <a name='L120'></a><a href='#L120'>120</a>
186
- <a name='L121'></a><a href='#L121'>121</a>
187
- <a name='L122'></a><a href='#L122'>122</a>
188
- <a name='L123'></a><a href='#L123'>123</a>
189
- <a name='L124'></a><a href='#L124'>124</a>
190
- <a name='L125'></a><a href='#L125'>125</a>
191
- <a name='L126'></a><a href='#L126'>126</a>
192
- <a name='L127'></a><a href='#L127'>127</a>
193
- <a name='L128'></a><a href='#L128'>128</a>
194
- <a name='L129'></a><a href='#L129'>129</a>
195
- <a name='L130'></a><a href='#L130'>130</a>
196
- <a name='L131'></a><a href='#L131'>131</a>
197
- <a name='L132'></a><a href='#L132'>132</a>
198
- <a name='L133'></a><a href='#L133'>133</a>
199
- <a name='L134'></a><a href='#L134'>134</a>
200
- <a name='L135'></a><a href='#L135'>135</a>
201
- <a name='L136'></a><a href='#L136'>136</a>
202
- <a name='L137'></a><a href='#L137'>137</a>
203
- <a name='L138'></a><a href='#L138'>138</a>
204
- <a name='L139'></a><a href='#L139'>139</a>
205
- <a name='L140'></a><a href='#L140'>140</a>
206
- <a name='L141'></a><a href='#L141'>141</a>
207
- <a name='L142'></a><a href='#L142'>142</a>
208
- <a name='L143'></a><a href='#L143'>143</a>
209
- <a name='L144'></a><a href='#L144'>144</a>
210
- <a name='L145'></a><a href='#L145'>145</a>
211
- <a name='L146'></a><a href='#L146'>146</a>
212
- <a name='L147'></a><a href='#L147'>147</a>
213
- <a name='L148'></a><a href='#L148'>148</a>
214
- <a name='L149'></a><a href='#L149'>149</a>
215
- <a name='L150'></a><a href='#L150'>150</a>
216
- <a name='L151'></a><a href='#L151'>151</a>
217
- <a name='L152'></a><a href='#L152'>152</a>
218
- <a name='L153'></a><a href='#L153'>153</a>
219
- <a name='L154'></a><a href='#L154'>154</a>
220
- <a name='L155'></a><a href='#L155'>155</a>
221
- <a name='L156'></a><a href='#L156'>156</a>
222
- <a name='L157'></a><a href='#L157'>157</a>
223
- <a name='L158'></a><a href='#L158'>158</a>
224
- <a name='L159'></a><a href='#L159'>159</a>
225
- <a name='L160'></a><a href='#L160'>160</a>
226
- <a name='L161'></a><a href='#L161'>161</a>
227
- <a name='L162'></a><a href='#L162'>162</a>
228
- <a name='L163'></a><a href='#L163'>163</a>
229
- <a name='L164'></a><a href='#L164'>164</a>
230
- <a name='L165'></a><a href='#L165'>165</a>
231
- <a name='L166'></a><a href='#L166'>166</a>
232
- <a name='L167'></a><a href='#L167'>167</a>
233
- <a name='L168'></a><a href='#L168'>168</a>
234
- <a name='L169'></a><a href='#L169'>169</a>
235
- <a name='L170'></a><a href='#L170'>170</a>
236
- <a name='L171'></a><a href='#L171'>171</a>
237
- <a name='L172'></a><a href='#L172'>172</a>
238
- <a name='L173'></a><a href='#L173'>173</a>
239
- <a name='L174'></a><a href='#L174'>174</a>
240
- <a name='L175'></a><a href='#L175'>175</a>
241
- <a name='L176'></a><a href='#L176'>176</a>
242
- <a name='L177'></a><a href='#L177'>177</a>
243
- <a name='L178'></a><a href='#L178'>178</a>
244
- <a name='L179'></a><a href='#L179'>179</a>
245
- <a name='L180'></a><a href='#L180'>180</a>
246
- <a name='L181'></a><a href='#L181'>181</a>
247
- <a name='L182'></a><a href='#L182'>182</a>
248
- <a name='L183'></a><a href='#L183'>183</a>
249
- <a name='L184'></a><a href='#L184'>184</a>
250
- <a name='L185'></a><a href='#L185'>185</a>
251
- <a name='L186'></a><a href='#L186'>186</a>
252
- <a name='L187'></a><a href='#L187'>187</a>
253
- <a name='L188'></a><a href='#L188'>188</a>
254
- <a name='L189'></a><a href='#L189'>189</a>
255
- <a name='L190'></a><a href='#L190'>190</a>
256
- <a name='L191'></a><a href='#L191'>191</a>
257
- <a name='L192'></a><a href='#L192'>192</a>
258
- <a name='L193'></a><a href='#L193'>193</a>
259
- <a name='L194'></a><a href='#L194'>194</a>
260
- <a name='L195'></a><a href='#L195'>195</a>
261
- <a name='L196'></a><a href='#L196'>196</a>
262
- <a name='L197'></a><a href='#L197'>197</a>
263
- <a name='L198'></a><a href='#L198'>198</a>
264
- <a name='L199'></a><a href='#L199'>199</a>
265
- <a name='L200'></a><a href='#L200'>200</a>
266
- <a name='L201'></a><a href='#L201'>201</a>
267
- <a name='L202'></a><a href='#L202'>202</a>
268
- <a name='L203'></a><a href='#L203'>203</a>
269
- <a name='L204'></a><a href='#L204'>204</a>
270
- <a name='L205'></a><a href='#L205'>205</a>
271
- <a name='L206'></a><a href='#L206'>206</a>
272
- <a name='L207'></a><a href='#L207'>207</a>
273
- <a name='L208'></a><a href='#L208'>208</a>
274
- <a name='L209'></a><a href='#L209'>209</a>
275
- <a name='L210'></a><a href='#L210'>210</a>
276
- <a name='L211'></a><a href='#L211'>211</a>
277
- <a name='L212'></a><a href='#L212'>212</a>
278
- <a name='L213'></a><a href='#L213'>213</a>
279
- <a name='L214'></a><a href='#L214'>214</a>
280
- <a name='L215'></a><a href='#L215'>215</a>
281
- <a name='L216'></a><a href='#L216'>216</a>
282
- <a name='L217'></a><a href='#L217'>217</a>
283
- <a name='L218'></a><a href='#L218'>218</a>
284
- <a name='L219'></a><a href='#L219'>219</a>
285
- <a name='L220'></a><a href='#L220'>220</a>
286
- <a name='L221'></a><a href='#L221'>221</a>
287
- <a name='L222'></a><a href='#L222'>222</a>
288
- <a name='L223'></a><a href='#L223'>223</a>
289
- <a name='L224'></a><a href='#L224'>224</a>
290
- <a name='L225'></a><a href='#L225'>225</a>
291
- <a name='L226'></a><a href='#L226'>226</a>
292
- <a name='L227'></a><a href='#L227'>227</a>
293
- <a name='L228'></a><a href='#L228'>228</a>
294
- <a name='L229'></a><a href='#L229'>229</a>
295
- <a name='L230'></a><a href='#L230'>230</a>
296
- <a name='L231'></a><a href='#L231'>231</a>
297
- <a name='L232'></a><a href='#L232'>232</a>
298
- <a name='L233'></a><a href='#L233'>233</a>
299
- <a name='L234'></a><a href='#L234'>234</a>
300
- <a name='L235'></a><a href='#L235'>235</a>
301
- <a name='L236'></a><a href='#L236'>236</a>
302
- <a name='L237'></a><a href='#L237'>237</a>
303
- <a name='L238'></a><a href='#L238'>238</a>
304
- <a name='L239'></a><a href='#L239'>239</a>
305
- <a name='L240'></a><a href='#L240'>240</a>
306
- <a name='L241'></a><a href='#L241'>241</a>
307
- <a name='L242'></a><a href='#L242'>242</a>
308
- <a name='L243'></a><a href='#L243'>243</a>
309
- <a name='L244'></a><a href='#L244'>244</a>
310
- <a name='L245'></a><a href='#L245'>245</a>
311
- <a name='L246'></a><a href='#L246'>246</a>
312
- <a name='L247'></a><a href='#L247'>247</a>
313
- <a name='L248'></a><a href='#L248'>248</a>
314
- <a name='L249'></a><a href='#L249'>249</a>
315
- <a name='L250'></a><a href='#L250'>250</a>
316
- <a name='L251'></a><a href='#L251'>251</a>
317
- <a name='L252'></a><a href='#L252'>252</a>
318
- <a name='L253'></a><a href='#L253'>253</a>
319
- <a name='L254'></a><a href='#L254'>254</a>
320
- <a name='L255'></a><a href='#L255'>255</a>
321
- <a name='L256'></a><a href='#L256'>256</a>
322
- <a name='L257'></a><a href='#L257'>257</a>
323
- <a name='L258'></a><a href='#L258'>258</a>
324
- <a name='L259'></a><a href='#L259'>259</a>
325
- <a name='L260'></a><a href='#L260'>260</a>
326
- <a name='L261'></a><a href='#L261'>261</a>
327
- <a name='L262'></a><a href='#L262'>262</a>
328
- <a name='L263'></a><a href='#L263'>263</a>
329
- <a name='L264'></a><a href='#L264'>264</a>
330
- <a name='L265'></a><a href='#L265'>265</a>
331
- <a name='L266'></a><a href='#L266'>266</a>
332
- <a name='L267'></a><a href='#L267'>267</a>
333
- <a name='L268'></a><a href='#L268'>268</a>
334
- <a name='L269'></a><a href='#L269'>269</a>
335
- <a name='L270'></a><a href='#L270'>270</a>
336
- <a name='L271'></a><a href='#L271'>271</a>
337
- <a name='L272'></a><a href='#L272'>272</a>
338
- <a name='L273'></a><a href='#L273'>273</a>
339
- <a name='L274'></a><a href='#L274'>274</a>
340
- <a name='L275'></a><a href='#L275'>275</a>
341
- <a name='L276'></a><a href='#L276'>276</a>
342
- <a name='L277'></a><a href='#L277'>277</a>
343
- <a name='L278'></a><a href='#L278'>278</a>
344
- <a name='L279'></a><a href='#L279'>279</a>
345
- <a name='L280'></a><a href='#L280'>280</a>
346
- <a name='L281'></a><a href='#L281'>281</a>
347
- <a name='L282'></a><a href='#L282'>282</a>
348
- <a name='L283'></a><a href='#L283'>283</a>
349
- <a name='L284'></a><a href='#L284'>284</a>
350
- <a name='L285'></a><a href='#L285'>285</a>
351
- <a name='L286'></a><a href='#L286'>286</a>
352
- <a name='L287'></a><a href='#L287'>287</a>
353
- <a name='L288'></a><a href='#L288'>288</a>
354
- <a name='L289'></a><a href='#L289'>289</a>
355
- <a name='L290'></a><a href='#L290'>290</a>
356
- <a name='L291'></a><a href='#L291'>291</a>
357
- <a name='L292'></a><a href='#L292'>292</a>
358
- <a name='L293'></a><a href='#L293'>293</a>
359
- <a name='L294'></a><a href='#L294'>294</a>
360
- <a name='L295'></a><a href='#L295'>295</a>
361
- <a name='L296'></a><a href='#L296'>296</a>
362
- <a name='L297'></a><a href='#L297'>297</a>
363
- <a name='L298'></a><a href='#L298'>298</a>
364
- <a name='L299'></a><a href='#L299'>299</a>
365
- <a name='L300'></a><a href='#L300'>300</a>
366
- <a name='L301'></a><a href='#L301'>301</a>
367
- <a name='L302'></a><a href='#L302'>302</a>
368
- <a name='L303'></a><a href='#L303'>303</a>
369
- <a name='L304'></a><a href='#L304'>304</a>
370
- <a name='L305'></a><a href='#L305'>305</a>
371
- <a name='L306'></a><a href='#L306'>306</a>
372
- <a name='L307'></a><a href='#L307'>307</a>
373
- <a name='L308'></a><a href='#L308'>308</a>
374
- <a name='L309'></a><a href='#L309'>309</a>
375
- <a name='L310'></a><a href='#L310'>310</a>
376
- <a name='L311'></a><a href='#L311'>311</a>
377
- <a name='L312'></a><a href='#L312'>312</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">10x</span>
378
- <span class="cline-any cline-yes">10x</span>
379
- <span class="cline-any cline-yes">10x</span>
380
- <span class="cline-any cline-yes">10x</span>
381
- <span class="cline-any cline-neutral">&nbsp;</span>
382
- <span class="cline-any cline-neutral">&nbsp;</span>
383
- <span class="cline-any cline-neutral">&nbsp;</span>
384
- <span class="cline-any cline-yes">10x</span>
385
- <span class="cline-any cline-yes">10x</span>
386
- <span class="cline-any cline-yes">10x</span>
387
- <span class="cline-any cline-yes">10x</span>
388
- <span class="cline-any cline-neutral">&nbsp;</span>
389
- <span class="cline-any cline-neutral">&nbsp;</span>
390
- <span class="cline-any cline-neutral">&nbsp;</span>
391
- <span class="cline-any cline-neutral">&nbsp;</span>
392
- <span class="cline-any cline-neutral">&nbsp;</span>
393
- <span class="cline-any cline-neutral">&nbsp;</span>
394
- <span class="cline-any cline-neutral">&nbsp;</span>
395
- <span class="cline-any cline-neutral">&nbsp;</span>
396
- <span class="cline-any cline-neutral">&nbsp;</span>
397
- <span class="cline-any cline-neutral">&nbsp;</span>
398
- <span class="cline-any cline-yes">10x</span>
399
- <span class="cline-any cline-neutral">&nbsp;</span>
400
- <span class="cline-any cline-yes">10x</span>
401
- <span class="cline-any cline-yes">10x</span>
402
- <span class="cline-any cline-neutral">&nbsp;</span>
403
- <span class="cline-any cline-yes">10x</span>
404
- <span class="cline-any cline-neutral">&nbsp;</span>
405
- <span class="cline-any cline-neutral">&nbsp;</span>
406
- <span class="cline-any cline-neutral">&nbsp;</span>
407
- <span class="cline-any cline-neutral">&nbsp;</span>
408
- <span class="cline-any cline-neutral">&nbsp;</span>
409
- <span class="cline-any cline-neutral">&nbsp;</span>
410
- <span class="cline-any cline-neutral">&nbsp;</span>
411
- <span class="cline-any cline-neutral">&nbsp;</span>
412
- <span class="cline-any cline-neutral">&nbsp;</span>
413
- <span class="cline-any cline-neutral">&nbsp;</span>
414
- <span class="cline-any cline-neutral">&nbsp;</span>
415
- <span class="cline-any cline-neutral">&nbsp;</span>
416
- <span class="cline-any cline-neutral">&nbsp;</span>
417
- <span class="cline-any cline-neutral">&nbsp;</span>
418
- <span class="cline-any cline-neutral">&nbsp;</span>
419
- <span class="cline-any cline-neutral">&nbsp;</span>
420
- <span class="cline-any cline-neutral">&nbsp;</span>
421
- <span class="cline-any cline-neutral">&nbsp;</span>
422
- <span class="cline-any cline-neutral">&nbsp;</span>
423
- <span class="cline-any cline-neutral">&nbsp;</span>
424
- <span class="cline-any cline-neutral">&nbsp;</span>
425
- <span class="cline-any cline-neutral">&nbsp;</span>
426
- <span class="cline-any cline-neutral">&nbsp;</span>
427
- <span class="cline-any cline-neutral">&nbsp;</span>
428
- <span class="cline-any cline-neutral">&nbsp;</span>
429
- <span class="cline-any cline-neutral">&nbsp;</span>
430
- <span class="cline-any cline-neutral">&nbsp;</span>
431
- <span class="cline-any cline-neutral">&nbsp;</span>
432
- <span class="cline-any cline-neutral">&nbsp;</span>
433
- <span class="cline-any cline-neutral">&nbsp;</span>
434
- <span class="cline-any cline-neutral">&nbsp;</span>
435
- <span class="cline-any cline-neutral">&nbsp;</span>
436
- <span class="cline-any cline-no">&nbsp;</span>
437
- <span class="cline-any cline-no">&nbsp;</span>
438
- <span class="cline-any cline-no">&nbsp;</span>
439
- <span class="cline-any cline-neutral">&nbsp;</span>
440
- <span class="cline-any cline-neutral">&nbsp;</span>
441
- <span class="cline-any cline-no">&nbsp;</span>
442
- <span class="cline-any cline-no">&nbsp;</span>
443
- <span class="cline-any cline-neutral">&nbsp;</span>
444
- <span class="cline-any cline-neutral">&nbsp;</span>
445
- <span class="cline-any cline-neutral">&nbsp;</span>
446
- <span class="cline-any cline-neutral">&nbsp;</span>
447
- <span class="cline-any cline-no">&nbsp;</span>
448
- <span class="cline-any cline-no">&nbsp;</span>
449
- <span class="cline-any cline-no">&nbsp;</span>
450
- <span class="cline-any cline-neutral">&nbsp;</span>
451
- <span class="cline-any cline-neutral">&nbsp;</span>
452
- <span class="cline-any cline-no">&nbsp;</span>
453
- <span class="cline-any cline-no">&nbsp;</span>
454
- <span class="cline-any cline-neutral">&nbsp;</span>
455
- <span class="cline-any cline-neutral">&nbsp;</span>
456
- <span class="cline-any cline-no">&nbsp;</span>
457
- <span class="cline-any cline-neutral">&nbsp;</span>
458
- <span class="cline-any cline-neutral">&nbsp;</span>
459
- <span class="cline-any cline-no">&nbsp;</span>
460
- <span class="cline-any cline-no">&nbsp;</span>
461
- <span class="cline-any cline-neutral">&nbsp;</span>
462
- <span class="cline-any cline-neutral">&nbsp;</span>
463
- <span class="cline-any cline-neutral">&nbsp;</span>
464
- <span class="cline-any cline-neutral">&nbsp;</span>
465
- <span class="cline-any cline-no">&nbsp;</span>
466
- <span class="cline-any cline-neutral">&nbsp;</span>
467
- <span class="cline-any cline-neutral">&nbsp;</span>
468
- <span class="cline-any cline-no">&nbsp;</span>
469
- <span class="cline-any cline-neutral">&nbsp;</span>
470
- <span class="cline-any cline-neutral">&nbsp;</span>
471
- <span class="cline-any cline-neutral">&nbsp;</span>
472
- <span class="cline-any cline-neutral">&nbsp;</span>
473
- <span class="cline-any cline-no">&nbsp;</span>
474
- <span class="cline-any cline-no">&nbsp;</span>
475
- <span class="cline-any cline-neutral">&nbsp;</span>
476
- <span class="cline-any cline-neutral">&nbsp;</span>
477
- <span class="cline-any cline-no">&nbsp;</span>
478
- <span class="cline-any cline-no">&nbsp;</span>
479
- <span class="cline-any cline-no">&nbsp;</span>
480
- <span class="cline-any cline-neutral">&nbsp;</span>
481
- <span class="cline-any cline-neutral">&nbsp;</span>
482
- <span class="cline-any cline-no">&nbsp;</span>
483
- <span class="cline-any cline-no">&nbsp;</span>
484
- <span class="cline-any cline-neutral">&nbsp;</span>
485
- <span class="cline-any cline-no">&nbsp;</span>
486
- <span class="cline-any cline-no">&nbsp;</span>
487
- <span class="cline-any cline-neutral">&nbsp;</span>
488
- <span class="cline-any cline-neutral">&nbsp;</span>
489
- <span class="cline-any cline-no">&nbsp;</span>
490
- <span class="cline-any cline-no">&nbsp;</span>
491
- <span class="cline-any cline-no">&nbsp;</span>
492
- <span class="cline-any cline-no">&nbsp;</span>
493
- <span class="cline-any cline-neutral">&nbsp;</span>
494
- <span class="cline-any cline-neutral">&nbsp;</span>
495
- <span class="cline-any cline-no">&nbsp;</span>
496
- <span class="cline-any cline-no">&nbsp;</span>
497
- <span class="cline-any cline-neutral">&nbsp;</span>
498
- <span class="cline-any cline-neutral">&nbsp;</span>
499
- <span class="cline-any cline-neutral">&nbsp;</span>
500
- <span class="cline-any cline-neutral">&nbsp;</span>
501
- <span class="cline-any cline-neutral">&nbsp;</span>
502
- <span class="cline-any cline-neutral">&nbsp;</span>
503
- <span class="cline-any cline-neutral">&nbsp;</span>
504
- <span class="cline-any cline-neutral">&nbsp;</span>
505
- <span class="cline-any cline-neutral">&nbsp;</span>
506
- <span class="cline-any cline-neutral">&nbsp;</span>
507
- <span class="cline-any cline-neutral">&nbsp;</span>
508
- <span class="cline-any cline-neutral">&nbsp;</span>
509
- <span class="cline-any cline-neutral">&nbsp;</span>
510
- <span class="cline-any cline-neutral">&nbsp;</span>
511
- <span class="cline-any cline-neutral">&nbsp;</span>
512
- <span class="cline-any cline-neutral">&nbsp;</span>
513
- <span class="cline-any cline-neutral">&nbsp;</span>
514
- <span class="cline-any cline-neutral">&nbsp;</span>
515
- <span class="cline-any cline-neutral">&nbsp;</span>
516
- <span class="cline-any cline-neutral">&nbsp;</span>
517
- <span class="cline-any cline-neutral">&nbsp;</span>
518
- <span class="cline-any cline-no">&nbsp;</span>
519
- <span class="cline-any cline-no">&nbsp;</span>
520
- <span class="cline-any cline-neutral">&nbsp;</span>
521
- <span class="cline-any cline-neutral">&nbsp;</span>
522
- <span class="cline-any cline-neutral">&nbsp;</span>
523
- <span class="cline-any cline-neutral">&nbsp;</span>
524
- <span class="cline-any cline-neutral">&nbsp;</span>
525
- <span class="cline-any cline-neutral">&nbsp;</span>
526
- <span class="cline-any cline-neutral">&nbsp;</span>
527
- <span class="cline-any cline-neutral">&nbsp;</span>
528
- <span class="cline-any cline-neutral">&nbsp;</span>
529
- <span class="cline-any cline-neutral">&nbsp;</span>
530
- <span class="cline-any cline-neutral">&nbsp;</span>
531
- <span class="cline-any cline-neutral">&nbsp;</span>
532
- <span class="cline-any cline-no">&nbsp;</span>
533
- <span class="cline-any cline-neutral">&nbsp;</span>
534
- <span class="cline-any cline-neutral">&nbsp;</span>
535
- <span class="cline-any cline-neutral">&nbsp;</span>
536
- <span class="cline-any cline-no">&nbsp;</span>
537
- <span class="cline-any cline-no">&nbsp;</span>
538
- <span class="cline-any cline-neutral">&nbsp;</span>
539
- <span class="cline-any cline-neutral">&nbsp;</span>
540
- <span class="cline-any cline-no">&nbsp;</span>
541
- <span class="cline-any cline-no">&nbsp;</span>
542
- <span class="cline-any cline-no">&nbsp;</span>
543
- <span class="cline-any cline-neutral">&nbsp;</span>
544
- <span class="cline-any cline-neutral">&nbsp;</span>
545
- <span class="cline-any cline-no">&nbsp;</span>
546
- <span class="cline-any cline-neutral">&nbsp;</span>
547
- <span class="cline-any cline-neutral">&nbsp;</span>
548
- <span class="cline-any cline-neutral">&nbsp;</span>
549
- <span class="cline-any cline-no">&nbsp;</span>
550
- <span class="cline-any cline-no">&nbsp;</span>
551
- <span class="cline-any cline-no">&nbsp;</span>
552
- <span class="cline-any cline-neutral">&nbsp;</span>
553
- <span class="cline-any cline-neutral">&nbsp;</span>
554
- <span class="cline-any cline-no">&nbsp;</span>
555
- <span class="cline-any cline-neutral">&nbsp;</span>
556
- <span class="cline-any cline-no">&nbsp;</span>
557
- <span class="cline-any cline-neutral">&nbsp;</span>
558
- <span class="cline-any cline-neutral">&nbsp;</span>
559
- <span class="cline-any cline-neutral">&nbsp;</span>
560
- <span class="cline-any cline-neutral">&nbsp;</span>
561
- <span class="cline-any cline-no">&nbsp;</span>
562
- <span class="cline-any cline-no">&nbsp;</span>
563
- <span class="cline-any cline-neutral">&nbsp;</span>
564
- <span class="cline-any cline-neutral">&nbsp;</span>
565
- <span class="cline-any cline-neutral">&nbsp;</span>
566
- <span class="cline-any cline-no">&nbsp;</span>
567
- <span class="cline-any cline-no">&nbsp;</span>
568
- <span class="cline-any cline-neutral">&nbsp;</span>
569
- <span class="cline-any cline-neutral">&nbsp;</span>
570
- <span class="cline-any cline-no">&nbsp;</span>
571
- <span class="cline-any cline-neutral">&nbsp;</span>
572
- <span class="cline-any cline-no">&nbsp;</span>
573
- <span class="cline-any cline-no">&nbsp;</span>
574
- <span class="cline-any cline-no">&nbsp;</span>
575
- <span class="cline-any cline-no">&nbsp;</span>
576
- <span class="cline-any cline-neutral">&nbsp;</span>
577
- <span class="cline-any cline-neutral">&nbsp;</span>
578
- <span class="cline-any cline-no">&nbsp;</span>
579
- <span class="cline-any cline-neutral">&nbsp;</span>
580
- <span class="cline-any cline-no">&nbsp;</span>
581
- <span class="cline-any cline-no">&nbsp;</span>
582
- <span class="cline-any cline-neutral">&nbsp;</span>
583
- <span class="cline-any cline-neutral">&nbsp;</span>
584
- <span class="cline-any cline-neutral">&nbsp;</span>
585
- <span class="cline-any cline-no">&nbsp;</span>
586
- <span class="cline-any cline-no">&nbsp;</span>
587
- <span class="cline-any cline-neutral">&nbsp;</span>
588
- <span class="cline-any cline-no">&nbsp;</span>
589
- <span class="cline-any cline-no">&nbsp;</span>
590
- <span class="cline-any cline-neutral">&nbsp;</span>
591
- <span class="cline-any cline-no">&nbsp;</span>
592
- <span class="cline-any cline-no">&nbsp;</span>
593
- <span class="cline-any cline-neutral">&nbsp;</span>
594
- <span class="cline-any cline-neutral">&nbsp;</span>
595
- <span class="cline-any cline-no">&nbsp;</span>
596
- <span class="cline-any cline-neutral">&nbsp;</span>
597
- <span class="cline-any cline-neutral">&nbsp;</span>
598
- <span class="cline-any cline-neutral">&nbsp;</span>
599
- <span class="cline-any cline-neutral">&nbsp;</span>
600
- <span class="cline-any cline-neutral">&nbsp;</span>
601
- <span class="cline-any cline-neutral">&nbsp;</span>
602
- <span class="cline-any cline-neutral">&nbsp;</span>
603
- <span class="cline-any cline-neutral">&nbsp;</span>
604
- <span class="cline-any cline-neutral">&nbsp;</span>
605
- <span class="cline-any cline-neutral">&nbsp;</span>
606
- <span class="cline-any cline-neutral">&nbsp;</span>
607
- <span class="cline-any cline-no">&nbsp;</span>
608
- <span class="cline-any cline-no">&nbsp;</span>
609
- <span class="cline-any cline-neutral">&nbsp;</span>
610
- <span class="cline-any cline-neutral">&nbsp;</span>
611
- <span class="cline-any cline-neutral">&nbsp;</span>
612
- <span class="cline-any cline-neutral">&nbsp;</span>
613
- <span class="cline-any cline-neutral">&nbsp;</span>
614
- <span class="cline-any cline-no">&nbsp;</span>
615
- <span class="cline-any cline-neutral">&nbsp;</span>
616
- <span class="cline-any cline-neutral">&nbsp;</span>
617
- <span class="cline-any cline-no">&nbsp;</span>
618
- <span class="cline-any cline-no">&nbsp;</span>
619
- <span class="cline-any cline-neutral">&nbsp;</span>
620
- <span class="cline-any cline-neutral">&nbsp;</span>
621
- <span class="cline-any cline-no">&nbsp;</span>
622
- <span class="cline-any cline-no">&nbsp;</span>
623
- <span class="cline-any cline-no">&nbsp;</span>
624
- <span class="cline-any cline-no">&nbsp;</span>
625
- <span class="cline-any cline-no">&nbsp;</span>
626
- <span class="cline-any cline-neutral">&nbsp;</span>
627
- <span class="cline-any cline-neutral">&nbsp;</span>
628
- <span class="cline-any cline-neutral">&nbsp;</span>
629
- <span class="cline-any cline-no">&nbsp;</span>
630
- <span class="cline-any cline-neutral">&nbsp;</span>
631
- <span class="cline-any cline-neutral">&nbsp;</span>
632
- <span class="cline-any cline-neutral">&nbsp;</span>
633
- <span class="cline-any cline-no">&nbsp;</span>
634
- <span class="cline-any cline-neutral">&nbsp;</span>
635
- <span class="cline-any cline-neutral">&nbsp;</span>
636
- <span class="cline-any cline-neutral">&nbsp;</span>
637
- <span class="cline-any cline-no">&nbsp;</span>
638
- <span class="cline-any cline-no">&nbsp;</span>
639
- <span class="cline-any cline-neutral">&nbsp;</span>
640
- <span class="cline-any cline-neutral">&nbsp;</span>
641
- <span class="cline-any cline-neutral">&nbsp;</span>
642
- <span class="cline-any cline-neutral">&nbsp;</span>
643
- <span class="cline-any cline-neutral">&nbsp;</span>
644
- <span class="cline-any cline-no">&nbsp;</span>
645
- <span class="cline-any cline-neutral">&nbsp;</span>
646
- <span class="cline-any cline-neutral">&nbsp;</span>
647
- <span class="cline-any cline-no">&nbsp;</span>
648
- <span class="cline-any cline-no">&nbsp;</span>
649
- <span class="cline-any cline-neutral">&nbsp;</span>
650
- <span class="cline-any cline-neutral">&nbsp;</span>
651
- <span class="cline-any cline-no">&nbsp;</span>
652
- <span class="cline-any cline-neutral">&nbsp;</span>
653
- <span class="cline-any cline-neutral">&nbsp;</span>
654
- <span class="cline-any cline-neutral">&nbsp;</span>
655
- <span class="cline-any cline-neutral">&nbsp;</span>
656
- <span class="cline-any cline-neutral">&nbsp;</span>
657
- <span class="cline-any cline-no">&nbsp;</span>
658
- <span class="cline-any cline-no">&nbsp;</span>
659
- <span class="cline-any cline-no">&nbsp;</span>
660
- <span class="cline-any cline-neutral">&nbsp;</span>
661
- <span class="cline-any cline-neutral">&nbsp;</span>
662
- <span class="cline-any cline-neutral">&nbsp;</span>
663
- <span class="cline-any cline-neutral">&nbsp;</span>
664
- <span class="cline-any cline-neutral">&nbsp;</span>
665
- <span class="cline-any cline-no">&nbsp;</span>
666
- <span class="cline-any cline-no">&nbsp;</span>
667
- <span class="cline-any cline-neutral">&nbsp;</span>
668
- <span class="cline-any cline-neutral">&nbsp;</span>
669
- <span class="cline-any cline-no">&nbsp;</span>
670
- <span class="cline-any cline-no">&nbsp;</span>
671
- <span class="cline-any cline-no">&nbsp;</span>
672
- <span class="cline-any cline-neutral">&nbsp;</span>
673
- <span class="cline-any cline-neutral">&nbsp;</span>
674
- <span class="cline-any cline-no">&nbsp;</span>
675
- <span class="cline-any cline-no">&nbsp;</span>
676
- <span class="cline-any cline-neutral">&nbsp;</span>
677
- <span class="cline-any cline-neutral">&nbsp;</span>
678
- <span class="cline-any cline-neutral">&nbsp;</span>
679
- <span class="cline-any cline-neutral">&nbsp;</span>
680
- <span class="cline-any cline-no">&nbsp;</span>
681
- <span class="cline-any cline-no">&nbsp;</span>
682
- <span class="cline-any cline-neutral">&nbsp;</span>
683
- <span class="cline-any cline-neutral">&nbsp;</span>
684
- <span class="cline-any cline-neutral">&nbsp;</span>
685
- <span class="cline-any cline-no">&nbsp;</span>
686
- <span class="cline-any cline-neutral">&nbsp;</span>
687
- <span class="cline-any cline-neutral">&nbsp;</span>
688
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { gzip, ungzip } from 'node-gzip';
689
- import { from } from 'rxjs';
690
- import rfdc from 'rfdc';
691
- import _ from 'lodash';
692
- &nbsp;
693
- import type { Expectation, IExpectationSchemaForward } from '../../../expectations';
694
- &nbsp;
695
- import { ExecutorManualError } from './errors';
696
- import { cast, wait } from '../../../utils';
697
- import { Logger } from '../../../logger';
698
- import {
699
- parsePayload,
700
- RequestContext,
701
- serializePayload,
702
- extractPayloadType,
703
- IRequestContextCache,
704
- IRequestContextOutgoing,
705
- IRequestContextIncoming,
706
- IRequestContextForwarded,
707
- } from '../context';
708
- &nbsp;
709
- export * from './errors';
710
- &nbsp;
711
- const clone = rfdc();
712
- const logger = Logger.build('Server.Models.Executor');
713
- &nbsp;
714
- export abstract class Executor&lt;TRequestContext extends RequestContext = RequestContext&gt; {
715
- public TRequestContext!: TRequestContext;
716
- public TContext!: TRequestContext['TContext'];
717
- &nbsp;
718
- /**
719
- * Uses to handle a request flow when expectation is matched or not
720
- */
721
- public abstract handleExpectationMatch(
722
- context: TRequestContext,
723
- expectation: Expectation&lt;any&gt; | null
724
- ): Promise&lt;unknown&gt;;
725
- &nbsp;
726
- /**
727
- * Uses to handle request forwarding
728
- */
729
- public abstract forward(
730
- context: TRequestContext,
731
- incoming: IRequestContextIncoming,
732
- configuration: IExpectationSchemaForward,
733
- ): Promise&lt;IRequestContextForwarded | null&gt;;
734
- &nbsp;
735
- /**
736
- * Uses to handle outgoing payload and reply
737
- */
738
- public abstract reply(
739
- context: TRequestContext,
740
- outgoing: IRequestContextOutgoing
741
- ): Promise&lt;IRequestContextOutgoing | null&gt;;
742
- &nbsp;
743
- /**
744
- * Uses to handle whole request
745
- */
746
- public <span class="fstat-no" title="function not covered" >async </span>exec(context: TRequestContext): Promise&lt;TRequestContext&gt; {
747
- const expectation = <span class="cstat-no" title="statement not covered" >await this.matchExpectation(context).catch(<span class="fstat-no" title="function not covered" >(e</span>rror) =&gt; {</span>
748
- <span class="cstat-no" title="statement not covered" > logger.error('Got error while execution [matchExpectation] method', error?.stack ?? error);</span>
749
- <span class="cstat-no" title="statement not covered" > return null;</span>
750
- });
751
- &nbsp;
752
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!expectation) {</span>
753
- <span class="cstat-no" title="statement not covered" > await this.handleExpectationMatch(context, null).catch(<span class="fstat-no" title="function not covered" >(e</span>rror) =&gt; <span class="cstat-no" title="statement not covered" >logger.error(</span></span>
754
- 'Got error while execution [handleAfterExpectationMatch] method',
755
- error?.stack ?? error
756
- ));
757
- &nbsp;
758
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!context.outgoing) {</span>
759
- <span class="cstat-no" title="statement not covered" > context.provider.storages.history.unregister(context.history);</span>
760
- <span class="cstat-no" title="statement not covered" > return context;</span>
761
- }
762
- &nbsp;
763
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (context.history?.hasStatus('registred')) {</span>
764
- <span class="cstat-no" title="statement not covered" > context.history.switchStatus('pending');</span>
765
- }
766
- &nbsp;
767
- <span class="cstat-no" title="statement not covered" > return context;</span>
768
- }
769
- &nbsp;
770
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (context.history?.hasStatus('registred')) {</span>
771
- <span class="cstat-no" title="statement not covered" > context.history</span>
772
- .switchStatus('pending')
773
- .actualizeSnapshot(context.snapshot)
774
- .assign({ expectation: context.expectation });
775
- &nbsp;
776
- <span class="cstat-no" title="statement not covered" > context.provider.exchanges.io.publish('history:added', context.history.toPlain());</span>
777
- }
778
- &nbsp;
779
- <span class="cstat-no" title="statement not covered" > await this.handleExpectationMatch(context, expectation).catch(<span class="fstat-no" title="function not covered" >(e</span>rror) =&gt; <span class="cstat-no" title="statement not covered" >logger.error(</span></span>
780
- 'Got error while execution [handleAfterExpectationMatch] method',
781
- error?.stack ?? error
782
- ));
783
- &nbsp;
784
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!context.hasStatus('handling')) {</span>
785
- <span class="cstat-no" title="statement not covered" > return context;</span>
786
- }
787
- &nbsp;
788
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (context.snapshot.incoming.delay) {</span>
789
- <span class="cstat-no" title="statement not covered" > logger.info(`Has delayed over [${context.snapshot.incoming.delay}ms]`);</span>
790
- <span class="cstat-no" title="statement not covered" > await wait(context.snapshot.incoming.delay);</span>
791
- }
792
- &nbsp;
793
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (context.snapshot.incoming.error) {</span>
794
- <span class="cstat-no" title="statement not covered" > logger.info(`Has destroyed using [${context.snapshot.incoming.error}]`);</span>
795
- &nbsp;
796
- <span class="cstat-no" title="statement not covered" > context.snapshot.assign({ error: { code: context.snapshot.incoming.error, isManual: true } });</span>
797
- <span class="cstat-no" title="statement not covered" > throw ExecutorManualError.build(context.snapshot.incoming.error);</span>
798
- }
799
- &nbsp;
800
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (expectation.forward) {</span>
801
- const forwarded = <span class="cstat-no" title="statement not covered" >await this.handleForwarding(context).catch(<span class="fstat-no" title="function not covered" >(e</span>rror) =&gt; {</span>
802
- <span class="cstat-no" title="statement not covered" > logger.error('Got error while execution [handleForwarding] method', error?.stack ?? error);</span>
803
- <span class="cstat-no" title="statement not covered" > return null;</span>
804
- });
805
- &nbsp;
806
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (forwarded) {</span>
807
- <span class="cstat-no" title="statement not covered" > context.snapshot.assign({</span>
808
- outgoing: forwarded.outgoing ?? context.snapshot.outgoing,
809
- &nbsp;
810
- forwarded: {
811
- isCached: forwarded.isCached,
812
- messages: clone(forwarded.messages),
813
- &nbsp;
814
- incoming: Object.assign(
815
- clone(_.omit(forwarded.incoming, ['stream'])),
816
- _.pick(forwarded.incoming, ['stream'])
817
- ),
818
- &nbsp;
819
- ...(forwarded.outgoing &amp;&amp; {
820
- outgoing: Object.assign(
821
- clone(_.omit(forwarded.outgoing, ['stream'])),
822
- _.pick(forwarded.outgoing, ['stream'])
823
- ),
824
- }),
825
- }
826
- });
827
- }
828
- &nbsp;
829
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (context.snapshot.forwarded &amp;&amp; context.history?.hasStatus('pending')) {</span>
830
- <span class="cstat-no" title="statement not covered" > context.history.snapshot.assign({</span>
831
- cache: context.snapshot.cache,
832
- &nbsp;
833
- forwarded: {
834
- isCached: context.snapshot.forwarded.isCached,
835
- incoming: _.omit(context.snapshot.forwarded.incoming, ['stream']),
836
- &nbsp;
837
- ...(context.snapshot.forwarded.outgoing &amp;&amp; {
838
- outgoing: _.omit(context.snapshot.forwarded.outgoing, ['stream'])
839
- }),
840
- },
841
- });
842
- &nbsp;
843
- <span class="cstat-no" title="statement not covered" > context.provider.exchanges.io.publish('history:updated', context.history.toPlain());</span>
844
- }
845
- }
846
- &nbsp;
847
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!context.hasStatus('handling')) {</span>
848
- <span class="cstat-no" title="statement not covered" > return context;</span>
849
- }
850
- &nbsp;
851
- const outgoing = <span class="cstat-no" title="statement not covered" >await this.handleReplying(context).catch(<span class="fstat-no" title="function not covered" >(e</span>rror) =&gt; {</span>
852
- <span class="cstat-no" title="statement not covered" > logger.error('Got error while execution [handleReplying] method', error?.stack ?? error);</span>
853
- <span class="cstat-no" title="statement not covered" > return null;</span>
854
- });
855
- &nbsp;
856
- <span class="cstat-no" title="statement not covered" > return outgoing ? context.assign({ outgoing }) : context;</span>
857
- }
858
- &nbsp;
859
- private <span class="fstat-no" title="function not covered" >async </span>matchExpectation(context: TRequestContext): Promise&lt;Expectation&lt;any&gt; | null&gt; {
860
- const expectation = <span class="cstat-no" title="statement not covered" >context.provider.storages.expectations.match(context.snapshot);</span>
861
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!expectation) {</span>
862
- <span class="cstat-no" title="statement not covered" > return null;</span>
863
- }
864
- &nbsp;
865
- <span class="cstat-no" title="statement not covered" > logger.info('Expectation has matched as', `"${expectation.name}" [${expectation.id}]`);</span>
866
- &nbsp;
867
- <span class="cstat-no" title="statement not covered" > context.assign({</span>
868
- snapshot: expectation.request.manipulate(context.snapshot),
869
- expectation: expectation.increaseExecutionsCounter(),
870
- });
871
- &nbsp;
872
- <span class="cstat-no" title="statement not covered" > context.provider.exchanges.io.publish('expectation:updated', expectation.toPlain());</span>
873
- <span class="cstat-no" title="statement not covered" > return expectation;</span>
874
- }
875
- &nbsp;
876
- private <span class="fstat-no" title="function not covered" >async </span>handleForwarding(context: TRequestContext): Promise&lt;IRequestContextForwarded | null&gt; {
877
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!context.expectation?.forward) {</span>
878
- <span class="cstat-no" title="statement not covered" > return context.snapshot;</span>
879
- }
880
- &nbsp;
881
- const snapshot = <span class="cstat-no" title="statement not covered" >context.snapshot.assign({ cache: context.compileCacheConfiguration() });</span>
882
- &nbsp;
883
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (snapshot.cache.isEnabled) {</span>
884
- const cached = <span class="cstat-no" title="statement not covered" >await context.provider.databases.redis!.get(snapshot.cache.key).catch(<span class="fstat-no" title="function not covered" >(e</span>rror) =&gt; {</span>
885
- <span class="cstat-no" title="statement not covered" > logger.error('Got error while redis get', error?.stack ?? error);</span>
886
- <span class="cstat-no" title="statement not covered" > return null;</span>
887
- });
888
- &nbsp;
889
- const unziped = <span class="cstat-no" title="statement not covered" >cached</span>
890
- ? await ungzip(Buffer.from(cached, 'base64')).catch(<span class="fstat-no" title="function not covered" >(e</span>rror) =&gt; {
891
- <span class="cstat-no" title="statement not covered" > logger.error('Got error while cache unzip', error?.stack ?? error);</span>
892
- <span class="cstat-no" title="statement not covered" > return null;</span>
893
- })
894
- : null;
895
- &nbsp;
896
- const parsed = &lt;IRequestContextCache | null&gt;(<span class="cstat-no" title="statement not covered" >unziped ? parsePayload('json', unziped) : null)</span>;
897
- const dataRaw = <span class="cstat-no" title="statement not covered" >parsed?.outgoing.dataRaw ? Buffer.from(parsed?.outgoing.dataRaw, 'base64') : undefined;</span>
898
- &nbsp;
899
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (parsed) {</span>
900
- <span class="cstat-no" title="statement not covered" > logger.info(`Got cache [${snapshot.cache.key}]`);</span>
901
- &nbsp;
902
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (parsed.messages?.length) {</span>
903
- <span class="cstat-no" title="statement not covered" > parsed.outgoing.stream = from(parsed.messages.map(<span class="fstat-no" title="function not covered" >(m</span>essage) =&gt; <span class="cstat-no" title="statement not covered" >message.data)</span> ?? []);</span>
904
- }
905
- &nbsp;
906
- <span class="cstat-no" title="statement not covered" > return Object.assign(snapshot.pick(['incoming']), {</span>
907
- isCached: true,
908
- messages: parsed.messages,
909
- &nbsp;
910
- outgoing: Object.assign(_.omit(parsed.outgoing, ['dataRaw']), {
911
- data: dataRaw ? parsePayload(parsed.outgoing.type, dataRaw) : undefined,
912
- dataRaw,
913
- }),
914
- });
915
- }
916
- }
917
- &nbsp;
918
- const type = <span class="cstat-no" title="statement not covered" >extractPayloadType(snapshot.incoming.headers) ?? 'plain';</span>
919
- const dataRaw = <span class="cstat-no" title="statement not covered" >snapshot.incoming.data === undefined</span>
920
- ? snapshot.incoming.dataRaw
921
- : typeof snapshot.incoming.data === 'object'
922
- ? serializePayload(type, snapshot.incoming.data)
923
- : Buffer.from(String(snapshot.incoming.data));
924
- &nbsp;
925
- const forwarded = <span class="cstat-no" title="statement not covered" >await this</span>
926
- .forward(context, Object.assign(snapshot.incoming, { type, dataRaw }), context.expectation.forward)
927
- .catch(<span class="fstat-no" title="function not covered" >(e</span>rror) =&gt; {
928
- <span class="cstat-no" title="statement not covered" > logger.error('Got error while execution [forward] method', error?.stack ?? error);</span>
929
- <span class="cstat-no" title="statement not covered" > return null;</span>
930
- });
931
- &nbsp;
932
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (forwarded) {</span>
933
- <span class="cstat-no" title="statement not covered" > forwarded.messages = [];</span>
934
- <span class="cstat-no" title="statement not covered" > forwarded.outgoing?.stream?.subscribe({</span>
935
- error: <span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >null,</span>
936
- next: <span class="fstat-no" title="function not covered" >(d</span>ata) =&gt; <span class="cstat-no" title="statement not covered" >forwarded.messages!.push({ data, location: 'outgoing' }),</span>
937
- });
938
- }
939
- &nbsp;
940
- <span class="cstat-no" title="statement not covered" > return forwarded;</span>
941
- }
942
- &nbsp;
943
- private <span class="fstat-no" title="function not covered" >async </span>handleReplying(context: TRequestContext): Promise&lt;IRequestContextOutgoing | null&gt; {
944
- const snapshot = <span class="cstat-no" title="statement not covered" >context.expectation?.response</span>
945
- ? context.expectation.response.manipulate(context.snapshot)
946
- : context.snapshot;
947
- &nbsp;
948
- const type = <span class="cstat-no" title="statement not covered" >extractPayloadType(snapshot.outgoing.headers) ?? snapshot.outgoing.type;</span>
949
- const dataRaw = <span class="cstat-no" title="statement not covered" >snapshot.outgoing.data === undefined</span>
950
- ? snapshot.outgoing.dataRaw
951
- : typeof snapshot.outgoing.data === 'object'
952
- ? serializePayload(type, snapshot.outgoing.data)
953
- : Buffer.from(String(snapshot.outgoing.data));
954
- &nbsp;
955
- const outgoing = <span class="cstat-no" title="statement not covered" >await this</span>
956
- .reply(context, Object.assign(snapshot.outgoing, { type, dataRaw }))
957
- .catch(<span class="fstat-no" title="function not covered" >(e</span>rror) =&gt; {
958
- <span class="cstat-no" title="statement not covered" > logger.error('Got error while execution [reply] method', error?.stack ?? error);</span>
959
- <span class="cstat-no" title="statement not covered" > return null;</span>
960
- });
961
- &nbsp;
962
- const shouldBeCached = <span class="cstat-no" title="statement not covered" >snapshot.cache.isEnabled</span>
963
- &amp;&amp; snapshot.forwarded?.outgoing
964
- &amp;&amp; !snapshot.forwarded.isCached
965
- &amp;&amp; snapshot.cache.ttl
966
- &amp;&amp; typeof snapshot.cache.key === 'string';
967
- &nbsp;
968
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (shouldBeCached) {</span>
969
- const serialized = <span class="cstat-no" title="statement not covered" >serializePayload('json', cast&lt;IRequestContextCache&gt;({</span>
970
- messages: snapshot.forwarded!.messages?.filter(<span class="fstat-no" title="function not covered" >(m</span>essage) =&gt; <span class="cstat-no" title="statement not covered" >message.location === 'outgoing')</span>,
971
- outgoing: Object.assign(_.omit(snapshot.forwarded!.outgoing, ['data']), {
972
- dataRaw: snapshot.forwarded!.outgoing?.dataRaw?.toString('base64'),
973
- }),
974
- }));
975
- &nbsp;
976
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!serialized) {</span>
977
- <span class="cstat-no" title="statement not covered" > return outgoing;</span>
978
- }
979
- &nbsp;
980
- const zipped = <span class="cstat-no" title="statement not covered" >await gzip(serialized).catch(<span class="fstat-no" title="function not covered" >(e</span>rror) =&gt; {</span>
981
- <span class="cstat-no" title="statement not covered" > logger.error('Got error while zip payload', error?.stack ?? error);</span>
982
- <span class="cstat-no" title="statement not covered" > return null;</span>
983
- });
984
- &nbsp;
985
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (zipped) {</span>
986
- <span class="cstat-no" title="statement not covered" > await context.provider.databases.redis!.setex(</span>
987
- &lt;string&gt;snapshot.cache.key,
988
- snapshot.cache.ttl!,
989
- zipped.toString('base64')
990
- )
991
- .then(<span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >logger.info(`Wrote cache [${snapshot.cache.key}] for [${snapshot.cache.ttl}] seconds`))</span>
992
- .catch(<span class="fstat-no" title="function not covered" >(e</span>rror) =&gt; <span class="cstat-no" title="statement not covered" >logger.error('Got error while redis set', error?.stack ?? error))</span>;
993
- }
994
- }
995
- &nbsp;
996
- <span class="cstat-no" title="statement not covered" > return outgoing;</span>
997
- }
998
- }
999
- &nbsp;</pre></td></tr></table></pre>
1000
-
1001
- <div class='push'></div><!-- for sticky footer -->
1002
- </div><!-- /wrapper -->
1003
- <div class='footer quiet pad2 space-top1 center small'>
1004
- Code coverage generated by
1005
- <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
1006
- at 2025-02-26T06:03:47.554Z
1007
- </div>
1008
- <script src="../../../prettify.js"></script>
1009
- <script>
1010
- window.onload = function () {
1011
- prettyPrint();
1012
- };
1013
- </script>
1014
- <script src="../../../sorter.js"></script>
1015
- <script src="../../../block-navigation.js"></script>
1016
- </body>
1017
- </html>
1018
-