@n1k1t/mock-server 0.1.6 → 0.1.9

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 (195) hide show
  1. package/README.md +229 -35
  2. package/lib/package.json +4 -1
  3. package/lib/src/client/helpers/expectations.d.ts +18 -18
  4. package/lib/src/client/helpers/expectations.d.ts.map +1 -1
  5. package/lib/src/client/helpers/expectations.js.map +1 -1
  6. package/lib/src/client/methods/expectations.create.method.d.ts +1 -1
  7. package/lib/src/client/methods/expectations.create.method.js +2 -2
  8. package/lib/src/client/methods/expectations.create.method.js.map +1 -1
  9. package/lib/src/client/methods/expectations.delete.method.js +2 -2
  10. package/lib/src/client/methods/expectations.delete.method.js.map +1 -1
  11. package/lib/src/client/methods/expectations.update.method.d.ts +1 -1
  12. package/lib/src/client/methods/expectations.update.method.js +4 -4
  13. package/lib/src/client/methods/expectations.update.method.js.map +1 -1
  14. package/lib/src/client/models/client.d.ts +13 -13
  15. package/lib/src/client/models/client.d.ts.map +1 -1
  16. package/lib/src/client/models/client.js.map +1 -1
  17. package/lib/src/client/utils.d.ts.map +1 -1
  18. package/lib/src/client/utils.js +3 -0
  19. package/lib/src/client/utils.js.map +1 -1
  20. package/lib/src/config/model.d.ts +4 -1
  21. package/lib/src/config/model.d.ts.map +1 -1
  22. package/lib/src/config/model.js +5 -1
  23. package/lib/src/config/model.js.map +1 -1
  24. package/lib/src/expectations/__utils__/index.d.ts +1 -2
  25. package/lib/src/expectations/__utils__/index.d.ts.map +1 -1
  26. package/lib/src/expectations/__utils__/index.js +8 -0
  27. package/lib/src/expectations/__utils__/index.js.map +1 -1
  28. package/lib/src/expectations/models/expectation.d.ts +15 -9
  29. package/lib/src/expectations/models/expectation.d.ts.map +1 -1
  30. package/lib/src/expectations/models/expectation.js +1 -1
  31. package/lib/src/expectations/models/expectation.js.map +1 -1
  32. package/lib/src/expectations/models/operator.d.ts +3 -3
  33. package/lib/src/expectations/models/operator.d.ts.map +1 -1
  34. package/lib/src/expectations/models/storage.d.ts +1 -2
  35. package/lib/src/expectations/models/storage.d.ts.map +1 -1
  36. package/lib/src/expectations/models/storage.js.map +1 -1
  37. package/lib/src/expectations/operators/and.operator.d.ts +1 -2
  38. package/lib/src/expectations/operators/and.operator.d.ts.map +1 -1
  39. package/lib/src/expectations/operators/and.operator.js.map +1 -1
  40. package/lib/src/expectations/operators/exec.operator.d.ts +2 -2
  41. package/lib/src/expectations/operators/exec.operator.d.ts.map +1 -1
  42. package/lib/src/expectations/operators/exec.operator.js.map +1 -1
  43. package/lib/src/expectations/operators/exec.operator.spec.js.map +1 -1
  44. package/lib/src/expectations/operators/has.operator.d.ts +1 -1
  45. package/lib/src/expectations/operators/has.operator.d.ts.map +1 -1
  46. package/lib/src/expectations/operators/has.operator.spec.js.map +1 -1
  47. package/lib/src/expectations/operators/if.operator.d.ts +1 -2
  48. package/lib/src/expectations/operators/if.operator.d.ts.map +1 -1
  49. package/lib/src/expectations/operators/if.operator.js.map +1 -1
  50. package/lib/src/expectations/operators/merge.operator.d.ts +11 -4
  51. package/lib/src/expectations/operators/merge.operator.d.ts.map +1 -1
  52. package/lib/src/expectations/operators/merge.operator.js +21 -4
  53. package/lib/src/expectations/operators/merge.operator.js.map +1 -1
  54. package/lib/src/expectations/operators/merge.operator.spec.js.map +1 -1
  55. package/lib/src/expectations/operators/not.operator.d.ts +1 -2
  56. package/lib/src/expectations/operators/not.operator.d.ts.map +1 -1
  57. package/lib/src/expectations/operators/not.operator.js.map +1 -1
  58. package/lib/src/expectations/operators/or.operator.d.ts +1 -2
  59. package/lib/src/expectations/operators/or.operator.d.ts.map +1 -1
  60. package/lib/src/expectations/operators/or.operator.js.map +1 -1
  61. package/lib/src/expectations/operators/remove.operator.d.ts +1 -2
  62. package/lib/src/expectations/operators/remove.operator.d.ts.map +1 -1
  63. package/lib/src/expectations/operators/remove.operator.js.map +1 -1
  64. package/lib/src/expectations/operators/remove.operator.spec.js.map +1 -1
  65. package/lib/src/expectations/operators/root.operator.d.ts +1 -2
  66. package/lib/src/expectations/operators/root.operator.d.ts.map +1 -1
  67. package/lib/src/expectations/operators/root.operator.js.map +1 -1
  68. package/lib/src/expectations/operators/set.operator.d.ts +2 -2
  69. package/lib/src/expectations/operators/set.operator.d.ts.map +1 -1
  70. package/lib/src/expectations/operators/set.operator.js.map +1 -1
  71. package/lib/src/expectations/operators/switch.operator.d.ts +2 -2
  72. package/lib/src/expectations/operators/switch.operator.d.ts.map +1 -1
  73. package/lib/src/expectations/types.d.ts +28 -14
  74. package/lib/src/expectations/types.d.ts.map +1 -1
  75. package/lib/src/expectations/types.js +2 -0
  76. package/lib/src/expectations/types.js.map +1 -1
  77. package/lib/src/expectations/utils.d.ts +3 -4
  78. package/lib/src/expectations/utils.d.ts.map +1 -1
  79. package/lib/src/expectations/utils.js +12 -0
  80. package/lib/src/expectations/utils.js.map +1 -1
  81. package/lib/src/server/endpoints/config.get.endpoint.d.ts +3 -0
  82. package/lib/src/server/endpoints/config.get.endpoint.d.ts.map +1 -1
  83. package/lib/src/server/endpoints/expectations.create.endpoint.d.ts +2 -2
  84. package/lib/src/server/endpoints/expectations.get-list.endpoint.d.ts +2 -2
  85. package/lib/src/server/endpoints/expectations.get-list.endpoint.js +1 -1
  86. package/lib/src/server/endpoints/expectations.get-list.endpoint.js.map +1 -1
  87. package/lib/src/server/endpoints/expectations.update.endpoint.d.ts +2 -2
  88. package/lib/src/server/endpoints/history.get-list.endpoint.d.ts +6 -3
  89. package/lib/src/server/endpoints/history.get-list.endpoint.d.ts.map +1 -1
  90. package/lib/src/server/endpoints/history.get-list.endpoint.js +1 -1
  91. package/lib/src/server/endpoints/history.get-list.endpoint.js.map +1 -1
  92. package/lib/src/server/history/index.d.ts +0 -1
  93. package/lib/src/server/history/index.d.ts.map +1 -1
  94. package/lib/src/server/history/index.js +0 -1
  95. package/lib/src/server/history/index.js.map +1 -1
  96. package/lib/src/server/history/model.d.ts +12 -12
  97. package/lib/src/server/history/model.d.ts.map +1 -1
  98. package/lib/src/server/history/model.js +8 -23
  99. package/lib/src/server/history/model.js.map +1 -1
  100. package/lib/src/server/history/storage.d.ts +1 -1
  101. package/lib/src/server/history/storage.d.ts.map +1 -1
  102. package/lib/src/server/history/storage.js.map +1 -1
  103. package/lib/src/server/index.d.ts +1 -0
  104. package/lib/src/server/index.d.ts.map +1 -1
  105. package/lib/src/server/index.js +10 -1
  106. package/lib/src/server/index.js.map +1 -1
  107. package/lib/src/server/middlewares/delay.middleware.d.ts +7 -13
  108. package/lib/src/server/middlewares/delay.middleware.d.ts.map +1 -1
  109. package/lib/src/server/middlewares/delay.middleware.js +4 -4
  110. package/lib/src/server/middlewares/delay.middleware.js.map +1 -1
  111. package/lib/src/server/middlewares/destroy.midleware.d.ts +7 -13
  112. package/lib/src/server/middlewares/destroy.midleware.d.ts.map +1 -1
  113. package/lib/src/server/middlewares/destroy.midleware.js +7 -8
  114. package/lib/src/server/middlewares/destroy.midleware.js.map +1 -1
  115. package/lib/src/server/middlewares/forward.middleware.d.ts +7 -13
  116. package/lib/src/server/middlewares/forward.middleware.d.ts.map +1 -1
  117. package/lib/src/server/middlewares/forward.middleware.js +81 -27
  118. package/lib/src/server/middlewares/forward.middleware.js.map +1 -1
  119. package/lib/src/server/middlewares/history.middleware.d.ts +4 -10
  120. package/lib/src/server/middlewares/history.middleware.d.ts.map +1 -1
  121. package/lib/src/server/middlewares/history.middleware.js +7 -3
  122. package/lib/src/server/middlewares/history.middleware.js.map +1 -1
  123. package/lib/src/server/middlewares/internal.middleware.d.ts +4 -10
  124. package/lib/src/server/middlewares/internal.middleware.d.ts.map +1 -1
  125. package/lib/src/server/middlewares/manipulate-expectation.middleware.d.ts +4 -10
  126. package/lib/src/server/middlewares/manipulate-expectation.middleware.d.ts.map +1 -1
  127. package/lib/src/server/middlewares/manipulate-expectation.middleware.js +1 -7
  128. package/lib/src/server/middlewares/manipulate-expectation.middleware.js.map +1 -1
  129. package/lib/src/server/middlewares/match-expectation.middleware.d.ts +4 -10
  130. package/lib/src/server/middlewares/match-expectation.middleware.d.ts.map +1 -1
  131. package/lib/src/server/middlewares/match-expectation.middleware.js +7 -8
  132. package/lib/src/server/middlewares/match-expectation.middleware.js.map +1 -1
  133. package/lib/src/server/middlewares/public.middleware.d.ts +4 -10
  134. package/lib/src/server/middlewares/public.middleware.d.ts.map +1 -1
  135. package/lib/src/server/middlewares/reply.middleware.d.ts +9 -15
  136. package/lib/src/server/middlewares/reply.middleware.d.ts.map +1 -1
  137. package/lib/src/server/middlewares/reply.middleware.js +23 -28
  138. package/lib/src/server/middlewares/reply.middleware.js.map +1 -1
  139. package/lib/src/server/models/containers/index.d.ts +3 -0
  140. package/lib/src/server/models/containers/index.d.ts.map +1 -0
  141. package/lib/src/server/models/containers/index.js +19 -0
  142. package/lib/src/server/models/containers/index.js.map +1 -0
  143. package/lib/src/server/models/containers/model.d.ts +44 -0
  144. package/lib/src/server/models/containers/model.d.ts.map +1 -0
  145. package/lib/src/server/models/containers/model.js +43 -0
  146. package/lib/src/server/models/containers/model.js.map +1 -0
  147. package/lib/src/server/models/containers/storage.d.ts +19 -0
  148. package/lib/src/server/models/containers/storage.d.ts.map +1 -0
  149. package/lib/src/server/models/containers/storage.js +42 -0
  150. package/lib/src/server/models/containers/storage.js.map +1 -0
  151. package/lib/src/server/models/containers/utils.d.ts +2 -0
  152. package/lib/src/server/models/containers/utils.d.ts.map +1 -0
  153. package/lib/src/server/models/containers/utils.js +7 -0
  154. package/lib/src/server/models/containers/utils.js.map +1 -0
  155. package/lib/src/server/models/index.d.ts +1 -0
  156. package/lib/src/server/models/index.d.ts.map +1 -1
  157. package/lib/src/server/models/index.js +1 -0
  158. package/lib/src/server/models/index.js.map +1 -1
  159. package/lib/src/server/models/middleware.d.ts +2 -5
  160. package/lib/src/server/models/middleware.d.ts.map +1 -1
  161. package/lib/src/server/models/plugins.d.ts +7 -2
  162. package/lib/src/server/models/plugins.d.ts.map +1 -1
  163. package/lib/src/server/models/plugins.js.map +1 -1
  164. package/lib/src/server/models/request-context/http.d.ts +20 -15
  165. package/lib/src/server/models/request-context/http.d.ts.map +1 -1
  166. package/lib/src/server/models/request-context/http.js +25 -31
  167. package/lib/src/server/models/request-context/http.js.map +1 -1
  168. package/lib/src/server/models/request-context/index.d.ts +1 -0
  169. package/lib/src/server/models/request-context/index.d.ts.map +1 -1
  170. package/lib/src/server/models/request-context/index.js +1 -0
  171. package/lib/src/server/models/request-context/index.js.map +1 -1
  172. package/lib/src/server/models/request-context/snapshot.d.ts +28 -0
  173. package/lib/src/server/models/request-context/snapshot.d.ts.map +1 -0
  174. package/lib/src/server/models/request-context/snapshot.js +49 -0
  175. package/lib/src/server/models/request-context/snapshot.js.map +1 -0
  176. package/lib/src/server/models/request-context/types.d.ts +12 -0
  177. package/lib/src/server/models/request-context/types.d.ts.map +1 -1
  178. package/lib/src/server/models/request-context/utils.d.ts +1 -0
  179. package/lib/src/server/models/request-context/utils.d.ts.map +1 -1
  180. package/lib/src/server/models/request-context/utils.js +1 -1
  181. package/lib/src/server/models/request-context/utils.js.map +1 -1
  182. package/lib/src/server/models/server-context.d.ts +7 -2
  183. package/lib/src/server/models/server-context.d.ts.map +1 -1
  184. package/lib/src/server/models/server-context.js +17 -3
  185. package/lib/src/server/models/server-context.js.map +1 -1
  186. package/lib/src/server/ws-exchange/types.d.ts +2 -2
  187. package/lib/src/server/ws-exchange/types.d.ts.map +1 -1
  188. package/lib/tsconfig.tsbuildinfo +1 -1
  189. package/package.json +4 -1
  190. package/public/scripts/main.js +18 -17
  191. package/public/styles/main.css +4 -0
  192. package/lib/src/server/history/types.d.ts +0 -14
  193. package/lib/src/server/history/types.d.ts.map +0 -1
  194. package/lib/src/server/history/types.js +0 -3
  195. package/lib/src/server/history/types.js.map +0 -1
@@ -4,46 +4,86 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const axios_1 = __importDefault(require("axios"));
7
+ const node_gzip_1 = require("node-gzip");
7
8
  const https_proxy_agent_1 = __importDefault(require("https-proxy-agent"));
9
+ const value_1 = require("@n1k1t/typebox/value");
10
+ const url_1 = require("url");
8
11
  const lodash_1 = __importDefault(require("lodash"));
9
12
  const models_1 = require("../models");
10
- const url_1 = require("url");
13
+ const compileCacheContext = (context, forwarded) => {
14
+ if (!context.server.storages.redis || !forwarded.options.cache.isEnabled) {
15
+ return null;
16
+ }
17
+ const payload = forwarded.options.cache.key ?? lodash_1.default.pick(forwarded.incoming, ['path', 'method', 'body', 'query']);
18
+ const key = typeof payload === 'object' ? value_1.Value.Hash(payload).toString() : String(payload);
19
+ return {
20
+ key: `${forwarded.options.cache.prefix ?? ''}${key}`,
21
+ ttl: forwarded.options.cache.ttl ?? 3600,
22
+ };
23
+ };
11
24
  exports.default = models_1.Middleware
12
- .build(__filename, ['expectation', 'manipulated', 'history'])
25
+ .build(__filename, ['expectation', 'history'])
13
26
  .assignHandler(async (context, { logger }) => {
14
27
  if (!context.shared.expectation.forward) {
15
28
  return null;
16
29
  }
17
- const { url, baseUrl, timeout, proxy } = context.shared.expectation.forward;
18
- const forwarded = context.shared.manipulated;
19
- const incomingType = (0, models_1.extractPayloadType)(forwarded.incoming.headers);
20
- const body = forwarded.incoming.body === undefined ? forwarded.incoming.bodyRaw : forwarded.incoming.body;
30
+ const snapshot = context.shared.snapshot.assign({ forwarded: lodash_1.default.pick(context.shared.snapshot, ['incoming']) });
31
+ const incomingType = (0, models_1.extractPayloadType)(snapshot.incoming.headers);
32
+ const cache = compileCacheContext(context, snapshot);
33
+ context.shared.history.snapshot.assign({ forwarded: snapshot.forwarded });
34
+ context.server.exchanges.ws.publish('history:updated', context.shared.history.toPlain());
35
+ if (cache) {
36
+ const cached = await context.server.storages.redis.get(cache.key).catch((error) => {
37
+ logger.error('Got error while redis get', error?.stack ?? error);
38
+ return null;
39
+ });
40
+ const unziped = cached
41
+ ? await (0, node_gzip_1.ungzip)(Buffer.from(cached, 'base64')).catch((error) => {
42
+ logger.error('Got error while cache unzip', error?.stack ?? error);
43
+ return null;
44
+ })
45
+ : null;
46
+ const outgoing = (unziped ? (0, models_1.parsePayload)('json', unziped.toString()) : null);
47
+ if (outgoing) {
48
+ logger.info(`Got cache [${cache.key}]`);
49
+ snapshot.assign({ forwarded: Object.assign(snapshot.forwarded, { outgoing }) });
50
+ context.shared.history.snapshot.assign({ forwarded: snapshot.forwarded });
51
+ context.server.exchanges.ws.publish('history:updated', context.shared.history.toPlain());
52
+ return context.share({ snapshot });
53
+ }
54
+ }
55
+ const body = snapshot.incoming.body === undefined ? snapshot.incoming.bodyRaw : snapshot.incoming.body;
21
56
  const bodyRaw = Buffer.from(typeof body === 'object' ? (0, models_1.serializePayload)(incomingType, body) : String(body));
57
+ const url = new url_1.URL(context.shared.expectation.forward.url ?? snapshot.incoming.path, context.shared.expectation.forward.baseUrl);
22
58
  const configuration = await context.server.plugins.exec('forward.request', {
23
- timeout: timeout ?? 1000 * 30,
24
- method: forwarded.incoming.method,
59
+ timeout: context.shared.expectation.forward.timeout ?? 1000 * 30,
60
+ method: snapshot.incoming.method,
25
61
  headers: {
26
62
  'connection': 'close',
27
- ...forwarded.incoming.headers,
28
- ...((!forwarded.incoming.headers?.['transfer-encoding'] && bodyRaw.length) && {
63
+ ...snapshot.incoming.headers,
64
+ ...(context.shared.expectation.forward.options?.host === 'origin' && { host: url.host }),
65
+ ...((!snapshot.incoming.headers?.['transfer-encoding'] && bodyRaw.length) && {
29
66
  'content-length': String(bodyRaw.length),
30
67
  }),
31
68
  },
32
- ...(url && { url }),
33
- ...(baseUrl && { baseURL: baseUrl, url: forwarded.incoming.path }),
69
+ ...(context.shared.expectation.forward.url && { url: context.shared.expectation.forward.url }),
70
+ ...(context.shared.expectation.forward.baseUrl && {
71
+ baseURL: context.shared.expectation.forward.baseUrl,
72
+ url: snapshot.incoming.path
73
+ }),
34
74
  data: bodyRaw,
35
75
  params: context.incoming.query,
36
76
  responseType: 'arraybuffer',
37
- ...(proxy && {
38
- proxy,
39
- httpsAgent: (0, https_proxy_agent_1.default)(proxy.host)
77
+ ...(context.shared.expectation.forward.proxy && {
78
+ proxy: context.shared.expectation.forward.proxy,
79
+ httpsAgent: (0, https_proxy_agent_1.default)(context.shared.expectation.forward.proxy.host)
40
80
  }),
41
81
  }, context);
42
82
  const forwardedType = (0, models_1.extractPayloadType)(configuration.headers ?? {});
43
- Object.assign(forwarded.incoming, {
83
+ Object.assign(snapshot.incoming, {
44
84
  type: forwardedType,
45
- path: new url_1.URL(configuration.url ?? forwarded.incoming.path, baseUrl).pathname,
46
- method: configuration.method ?? forwarded.incoming.method,
85
+ path: url.pathname,
86
+ method: configuration.method ?? snapshot.incoming.method,
47
87
  headers: configuration.headers ?? {},
48
88
  ...(configuration.params && { query: configuration.params }),
49
89
  body: (0, models_1.parsePayload)(forwardedType, configuration.data instanceof Buffer ? configuration.data.toString() : configuration.data),
@@ -53,12 +93,11 @@ exports.default = models_1.Middleware
53
93
  ? configuration.data
54
94
  : '',
55
95
  });
56
- const history = context.shared.history.extendForwarded(forwarded);
57
- context.server.exchange.ws.publish('history:updated', history.toPlain());
58
96
  const response = await axios_1.default.request(configuration).catch((error) => {
59
97
  if (!error.response) {
60
- history.assignError(lodash_1.default.pick(error, ['message', 'code'])).switchState('finished');
61
- context.server.exchange.ws.publish('history:updated', history.toPlain());
98
+ context.shared.history.snapshot.assign({ error: lodash_1.default.pick(error, ['message', 'code']) });
99
+ context.shared.history.switchStatus('finished');
100
+ context.server.exchanges.ws.publish('history:updated', context.shared.history.toPlain());
62
101
  context.reply.internalError(error.message);
63
102
  logger.error('Got error while forwaring', error?.stack ?? error);
64
103
  throw error;
@@ -66,16 +105,31 @@ exports.default = models_1.Middleware
66
105
  return error.response;
67
106
  });
68
107
  const parsed = await context.server.plugins.exec('forward.response', response, context);
69
- const outgoingType = (0, models_1.extractPayloadType)(response.headers);
70
- forwarded.outgoing = {
108
+ const outgoingType = parsed.type ?? (0, models_1.extractPayloadType)(response.headers);
109
+ snapshot.forwarded.outgoing = {
71
110
  type: outgoingType,
72
111
  status: response.status,
73
112
  headers: response.headers,
74
113
  dataRaw: parsed.raw,
75
114
  data: 'payload' in parsed ? parsed.payload : (0, models_1.parsePayload)(outgoingType, parsed.raw),
76
115
  };
77
- history.extendForwarded(forwarded);
78
- context.server.exchange.ws.publish('history:updated', history.toPlain());
79
- context.share({ forwarded });
116
+ if (cache) {
117
+ const payload = Object.assign({ isCached: true }, snapshot.forwarded.outgoing);
118
+ const serialized = await (0, node_gzip_1.gzip)((0, models_1.serializePayload)('json', payload)).catch((error) => {
119
+ logger.error('Got error while zip payload', error?.stack ?? error);
120
+ return null;
121
+ });
122
+ if (serialized) {
123
+ await context.server.storages.redis.setex(cache.key, cache.ttl, serialized.toString('base64'))
124
+ .then(() => logger.info(`Wrote cache [${cache.key}] for [${cache.ttl}] seconds`))
125
+ .catch((error) => {
126
+ logger.error('Got error while redis set', error?.stack ?? error);
127
+ return null;
128
+ });
129
+ }
130
+ }
131
+ context.shared.history.snapshot.assign({ forwarded: snapshot.forwarded });
132
+ context.server.exchanges.ws.publish('history:updated', context.shared.history.toPlain());
133
+ context.share({ snapshot });
80
134
  });
81
135
  //# sourceMappingURL=forward.middleware.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"forward.middleware.js","sourceRoot":"","sources":["../../../../src/server/middlewares/forward.middleware.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"forward.middleware.js","sourceRoot":"","sources":["../../../../src/server/middlewares/forward.middleware.ts"],"names":[],"mappings":"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"}
@@ -1,21 +1,15 @@
1
1
  import { Middleware } from '../models';
2
2
  declare const _default: Middleware<"expectation", import("../models").HttpRequestContext<unknown> & {
3
3
  shared: import("../..").SetRequiredKeys<{
4
- state: Record<string, unknown>;
5
- seed?: number;
6
- expectation?: import("../../expectations").Expectation<Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">>;
7
- manipulated?: import("../../expectations").IExpectationOperatorContext;
8
- forwarded?: Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">;
4
+ snapshot: import("../models").RequestContextSnapshot;
5
+ expectation?: import("../../expectations").Expectation<any>;
9
6
  history?: import("../history").History;
10
7
  }, "expectation">;
11
8
  }> & {
12
9
  handler: import("../..").TFunction<unknown, [import("../models").HttpRequestContext<unknown> & {
13
10
  shared: import("../..").SetRequiredKeys<{
14
- state: Record<string, unknown>;
15
- seed?: number;
16
- expectation?: import("../../expectations").Expectation<Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">>;
17
- manipulated?: import("../../expectations").IExpectationOperatorContext;
18
- forwarded?: Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">;
11
+ snapshot: import("../models").RequestContextSnapshot;
12
+ expectation?: import("../../expectations").Expectation<any>;
19
13
  history?: import("../history").History;
20
14
  }, "expectation">;
21
15
  }, {
@@ -1 +1 @@
1
- {"version":3,"file":"history.middleware.d.ts","sourceRoot":"","sources":["../../../../src/server/middlewares/history.middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;;;;;AAEvC,wBASK"}
1
+ {"version":3,"file":"history.middleware.d.ts","sourceRoot":"","sources":["../../../../src/server/middlewares/history.middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;;;;;;;;;;;;;;;;;;AAEvC,wBASK"}
@@ -1,13 +1,17 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ const lodash_1 = __importDefault(require("lodash"));
3
7
  const models_1 = require("../models");
4
8
  exports.default = models_1.Middleware
5
9
  .build(__filename, ['expectation'])
6
10
  .assignHandler((context) => {
7
- const history = context.server.storage.history
8
- .register(context.toPlain({ locations: ['incoming'] }))
11
+ const history = context.server.storages.history
12
+ .register(context.compileSnapshot().assign(lodash_1.default.omit(context.shared.snapshot, ['incoming'])))
9
13
  .assignExpectation(context.shared.expectation);
10
- context.server.exchange.ws.publish('history:added', history.toPlain());
14
+ context.server.exchanges.ws.publish('history:added', history.toPlain());
11
15
  context.share({ history });
12
16
  });
13
17
  //# sourceMappingURL=history.middleware.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"history.middleware.js","sourceRoot":"","sources":["../../../../src/server/middlewares/history.middleware.ts"],"names":[],"mappings":";;AACA,sCAAuC;AAEvC,kBAAe,mBAAU;KACtB,KAAK,CAAC,UAAU,EAAE,CAAC,aAAa,CAAC,CAAC;KAClC,aAAa,CAAC,CAAC,OAAO,EAAE,EAAE;IACzB,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO;SAC3C,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;SACtD,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAEjD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,eAAe,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IACvE,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;AAC7B,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"history.middleware.js","sourceRoot":"","sources":["../../../../src/server/middlewares/history.middleware.ts"],"names":[],"mappings":";;;;;AAAA,oDAAuB;AACvB,sCAAuC;AAEvC,kBAAe,mBAAU;KACtB,KAAK,CAAC,UAAU,EAAE,CAAC,aAAa,CAAC,CAAC;KAClC,aAAa,CAAC,CAAC,OAAO,EAAE,EAAE;IACzB,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO;SAC5C,QAAQ,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC,MAAM,CAAC,gBAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;SACzF,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAEjD,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,eAAe,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IACxE,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;AAC7B,CAAC,CAAC,CAAC"}
@@ -1,21 +1,15 @@
1
1
  import { Middleware } from '../models';
2
2
  declare const _default: Middleware<never, import("../models").HttpRequestContext<unknown> & {
3
3
  shared: import("../..").SetRequiredKeys<{
4
- state: Record<string, unknown>;
5
- seed?: number;
6
- expectation?: import("../../expectations").Expectation<Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">>;
7
- manipulated?: import("../../expectations").IExpectationOperatorContext;
8
- forwarded?: Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">;
4
+ snapshot: import("../models").RequestContextSnapshot;
5
+ expectation?: import("../../expectations").Expectation<any>;
9
6
  history?: import("../history").History;
10
7
  }, never>;
11
8
  }> & {
12
9
  handler: import("../..").TFunction<unknown, [import("../models").HttpRequestContext<unknown> & {
13
10
  shared: import("../..").SetRequiredKeys<{
14
- state: Record<string, unknown>;
15
- seed?: number;
16
- expectation?: import("../../expectations").Expectation<Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">>;
17
- manipulated?: import("../../expectations").IExpectationOperatorContext;
18
- forwarded?: Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">;
11
+ snapshot: import("../models").RequestContextSnapshot;
12
+ expectation?: import("../../expectations").Expectation<any>;
19
13
  history?: import("../history").History;
20
14
  }, never>;
21
15
  }, {
@@ -1 +1 @@
1
- {"version":3,"file":"internal.middleware.d.ts","sourceRoot":"","sources":["../../../../src/server/middlewares/internal.middleware.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;;;;;AAGvC,wBAUK"}
1
+ {"version":3,"file":"internal.middleware.d.ts","sourceRoot":"","sources":["../../../../src/server/middlewares/internal.middleware.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;;;;;;;;;;;;;;;;;;AAGvC,wBAUK"}
@@ -1,21 +1,15 @@
1
1
  import { Middleware } from '../models';
2
2
  declare const _default: Middleware<"expectation", import("../models").HttpRequestContext<unknown> & {
3
3
  shared: import("../..").SetRequiredKeys<{
4
- state: Record<string, unknown>;
5
- seed?: number;
6
- expectation?: import("../../expectations").Expectation<Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">>;
7
- manipulated?: import("../../expectations").IExpectationOperatorContext;
8
- forwarded?: Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">;
4
+ snapshot: import("../models").RequestContextSnapshot;
5
+ expectation?: import("../../expectations").Expectation<any>;
9
6
  history?: import("../history").History;
10
7
  }, "expectation">;
11
8
  }> & {
12
9
  handler: import("../..").TFunction<unknown, [import("../models").HttpRequestContext<unknown> & {
13
10
  shared: import("../..").SetRequiredKeys<{
14
- state: Record<string, unknown>;
15
- seed?: number;
16
- expectation?: import("../../expectations").Expectation<Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">>;
17
- manipulated?: import("../../expectations").IExpectationOperatorContext;
18
- forwarded?: Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">;
11
+ snapshot: import("../models").RequestContextSnapshot;
12
+ expectation?: import("../../expectations").Expectation<any>;
19
13
  history?: import("../history").History;
20
14
  }, "expectation">;
21
15
  }, {
@@ -1 +1 @@
1
- {"version":3,"file":"manipulate-expectation.middleware.d.ts","sourceRoot":"","sources":["../../../../src/server/middlewares/manipulate-expectation.middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;;;;;AAEvC,wBAWK"}
1
+ {"version":3,"file":"manipulate-expectation.middleware.d.ts","sourceRoot":"","sources":["../../../../src/server/middlewares/manipulate-expectation.middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;;;;;;;;;;;;;;;;;;AAEvC,wBAII"}
@@ -3,11 +3,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const models_1 = require("../models");
4
4
  exports.default = models_1.Middleware
5
5
  .build(__filename, ['expectation'])
6
- .assignHandler((context) => {
7
- const manipulated = context.shared.expectation.request?.manipulate(context.toPlain({ clone: true, locations: ['incoming'] }));
8
- context.share({
9
- manipulated,
10
- ...(manipulated?.seed !== undefined && { seed: manipulated.seed }),
11
- });
12
- });
6
+ .assignHandler((context) => context.share({ snapshot: context.shared.expectation.request.manipulate(context.shared.snapshot) }));
13
7
  //# sourceMappingURL=manipulate-expectation.middleware.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"manipulate-expectation.middleware.js","sourceRoot":"","sources":["../../../../src/server/middlewares/manipulate-expectation.middleware.ts"],"names":[],"mappings":";;AACA,sCAAuC;AAEvC,kBAAe,mBAAU;KACtB,KAAK,CAAC,UAAU,EAAE,CAAC,aAAa,CAAC,CAAC;KAClC,aAAa,CAAC,CAAC,OAAO,EAAE,EAAE;IACzB,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,UAAU,CAChE,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAC1D,CAAC;IAEF,OAAO,CAAC,KAAK,CAAC;QACZ,WAAW;QACX,GAAG,CAAC,WAAW,EAAE,IAAI,KAAK,SAAS,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC;KACnE,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"manipulate-expectation.middleware.js","sourceRoot":"","sources":["../../../../src/server/middlewares/manipulate-expectation.middleware.ts"],"names":[],"mappings":";;AACA,sCAAuC;AAEvC,kBAAe,mBAAU;KACtB,KAAK,CAAC,UAAU,EAAE,CAAC,aAAa,CAAC,CAAC;KAClC,aAAa,CAAC,CAAC,OAAO,EAAE,EAAE,CACzB,OAAO,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CACpG,CAAC"}
@@ -1,21 +1,15 @@
1
1
  import { Middleware } from '../models';
2
2
  declare const _default: Middleware<never, import("../models").HttpRequestContext<unknown> & {
3
3
  shared: import("../..").SetRequiredKeys<{
4
- state: Record<string, unknown>;
5
- seed?: number;
6
- expectation?: import("../../expectations").Expectation<Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">>;
7
- manipulated?: import("../../expectations").IExpectationOperatorContext;
8
- forwarded?: Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">;
4
+ snapshot: import("../models").RequestContextSnapshot;
5
+ expectation?: import("../../expectations").Expectation<any>;
9
6
  history?: import("../history").History;
10
7
  }, never>;
11
8
  }> & {
12
9
  handler: import("../..").TFunction<unknown, [import("../models").HttpRequestContext<unknown> & {
13
10
  shared: import("../..").SetRequiredKeys<{
14
- state: Record<string, unknown>;
15
- seed?: number;
16
- expectation?: import("../../expectations").Expectation<Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">>;
17
- manipulated?: import("../../expectations").IExpectationOperatorContext;
18
- forwarded?: Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">;
11
+ snapshot: import("../models").RequestContextSnapshot;
12
+ expectation?: import("../../expectations").Expectation<any>;
19
13
  history?: import("../history").History;
20
14
  }, never>;
21
15
  }, {
@@ -1 +1 @@
1
- {"version":3,"file":"match-expectation.middleware.d.ts","sourceRoot":"","sources":["../../../../src/server/middlewares/match-expectation.middleware.ts"],"names":[],"mappings":"AAEA,OAAO,EAA2B,UAAU,EAAE,MAAM,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;;;;;AAGhE,wBAyBK"}
1
+ {"version":3,"file":"match-expectation.middleware.d.ts","sourceRoot":"","sources":["../../../../src/server/middlewares/match-expectation.middleware.ts"],"names":[],"mappings":"AAEA,OAAO,EAA2B,UAAU,EAAE,MAAM,WAAW,CAAC;;;;;;;;;;;;;;;;;;AAGhE,wBA0BK"}
@@ -5,23 +5,22 @@ const utils_1 = require("../../utils");
5
5
  exports.default = models_1.Middleware
6
6
  .build(__filename)
7
7
  .assignHandler((context, { logger }) => {
8
- const plain = context.toPlain({ clone: true, locations: ['incoming'] });
9
- const expectation = context.server.storage.expectations.match('request', plain);
8
+ const expectation = context.server.storages.expectations.match('request', context.shared.snapshot);
10
9
  if (!expectation) {
11
- const history = context.server.storage.history
12
- .register(Object.assign(plain, {
10
+ const history = context.server.storages.history
11
+ .register(context.shared.snapshot.assign({
13
12
  outgoing: (0, utils_1.cast)({
14
13
  type: 'json',
15
14
  status: 404,
16
15
  headers: {},
17
16
  })
18
17
  }))
19
- .switchState('finished');
20
- context.server.exchange.ws.publish('history:added', history.toPlain());
18
+ .switchStatus('finished');
19
+ context.server.exchanges.ws.publish('history:added', history.toPlain());
21
20
  return context.reply.notFound();
22
21
  }
23
22
  logger.info('Has matched with', `"${expectation.name}" [${expectation.id}]`);
24
- context.server.exchange.ws.publish('expectation:updated', expectation.toPlain());
25
- context.share({ expectation });
23
+ context.server.exchanges.ws.publish('expectation:updated', expectation.toPlain());
24
+ context.assignExpectation(expectation);
26
25
  });
27
26
  //# sourceMappingURL=match-expectation.middleware.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"match-expectation.middleware.js","sourceRoot":"","sources":["../../../../src/server/middlewares/match-expectation.middleware.ts"],"names":[],"mappings":";;AAEA,sCAAgE;AAChE,uCAAmC;AAEnC,kBAAe,mBAAU;KACtB,KAAK,CAAC,UAAU,CAAC;KACjB,aAAa,CAAC,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;IACrC,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IACxE,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAM,SAAS,EAAE,KAAK,CAAC,CAAC;IAErF,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO;aAC3C,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE;YAC7B,QAAQ,EAAE,IAAA,YAAI,EAA0B;gBACtC,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,EAAE;aACZ,CAAC;SACH,CAAC,CAAC;aACF,WAAW,CAAC,UAAU,CAAC,CAAC;QAE3B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,eAAe,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QACvE,OAAO,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;IAClC,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,WAAW,CAAC,IAAI,MAAM,WAAW,CAAC,EAAE,GAAG,CAAC,CAAC;IAE7E,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,qBAAqB,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;IACjF,OAAO,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"match-expectation.middleware.js","sourceRoot":"","sources":["../../../../src/server/middlewares/match-expectation.middleware.ts"],"names":[],"mappings":";;AAEA,sCAAgE;AAChE,uCAAmC;AAEnC,kBAAe,mBAAU;KACtB,KAAK,CAAC,UAAU,CAAC;KACjB,aAAa,CAAC,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;IACrC,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAEnG,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO;aAC5C,QAAQ,CACP,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;YAC7B,QAAQ,EAAE,IAAA,YAAI,EAA0B;gBACtC,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,EAAE;aACZ,CAAC;SACH,CAAC,CACH;aACA,YAAY,CAAC,UAAU,CAAC,CAAC;QAE5B,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,eAAe,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QACxE,OAAO,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;IAClC,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,WAAW,CAAC,IAAI,MAAM,WAAW,CAAC,EAAE,GAAG,CAAC,CAAC;IAE7E,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,qBAAqB,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;IAClF,OAAO,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;AACzC,CAAC,CAAC,CAAC"}
@@ -1,21 +1,15 @@
1
1
  import { Middleware } from '../models';
2
2
  declare const _default: Middleware<never, import("../models").HttpRequestContext<unknown> & {
3
3
  shared: import("../..").SetRequiredKeys<{
4
- state: Record<string, unknown>;
5
- seed?: number;
6
- expectation?: import("../../expectations").Expectation<Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">>;
7
- manipulated?: import("../../expectations").IExpectationOperatorContext;
8
- forwarded?: Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">;
4
+ snapshot: import("../models").RequestContextSnapshot;
5
+ expectation?: import("../../expectations").Expectation<any>;
9
6
  history?: import("../history").History;
10
7
  }, never>;
11
8
  }> & {
12
9
  handler: import("../..").TFunction<unknown, [import("../models").HttpRequestContext<unknown> & {
13
10
  shared: import("../..").SetRequiredKeys<{
14
- state: Record<string, unknown>;
15
- seed?: number;
16
- expectation?: import("../../expectations").Expectation<Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">>;
17
- manipulated?: import("../../expectations").IExpectationOperatorContext;
18
- forwarded?: Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">;
11
+ snapshot: import("../models").RequestContextSnapshot;
12
+ expectation?: import("../../expectations").Expectation<any>;
19
13
  history?: import("../history").History;
20
14
  }, never>;
21
15
  }, {
@@ -1 +1 @@
1
- {"version":3,"file":"public.middleware.d.ts","sourceRoot":"","sources":["../../../../src/server/middlewares/public.middleware.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;;;;;AAGvC,wBAiCK"}
1
+ {"version":3,"file":"public.middleware.d.ts","sourceRoot":"","sources":["../../../../src/server/middlewares/public.middleware.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;;;;;;;;;;;;;;;;;;AAGvC,wBAiCK"}
@@ -1,23 +1,17 @@
1
- import { HttpRequestContext, Middleware } from '../models';
2
- declare const _default: Middleware<"history" | "expectation", HttpRequestContext<unknown> & {
1
+ import { Middleware } from '../models';
2
+ declare const _default: Middleware<"history" | "expectation" | "snapshot", import("../models").HttpRequestContext<unknown> & {
3
3
  shared: import("../..").SetRequiredKeys<{
4
- state: Record<string, unknown>;
5
- seed?: number;
6
- expectation?: import("../../expectations").Expectation<Pick<HttpRequestContext, "incoming" | "outgoing">>;
7
- manipulated?: import("../../expectations").IExpectationOperatorContext;
8
- forwarded?: Pick<HttpRequestContext, "incoming" | "outgoing">;
4
+ snapshot: import("../models").RequestContextSnapshot;
5
+ expectation?: import("../../expectations").Expectation<any>;
9
6
  history?: import("../history").History;
10
- }, "history" | "expectation">;
7
+ }, "history" | "expectation" | "snapshot">;
11
8
  }> & {
12
- handler: import("../..").TFunction<unknown, [HttpRequestContext<unknown> & {
9
+ handler: import("../..").TFunction<unknown, [import("../models").HttpRequestContext<unknown> & {
13
10
  shared: import("../..").SetRequiredKeys<{
14
- state: Record<string, unknown>;
15
- seed?: number;
16
- expectation?: import("../../expectations").Expectation<Pick<HttpRequestContext, "incoming" | "outgoing">>;
17
- manipulated?: import("../../expectations").IExpectationOperatorContext;
18
- forwarded?: Pick<HttpRequestContext, "incoming" | "outgoing">;
11
+ snapshot: import("../models").RequestContextSnapshot;
12
+ expectation?: import("../../expectations").Expectation<any>;
19
13
  history?: import("../history").History;
20
- }, "history" | "expectation">;
14
+ }, "history" | "expectation" | "snapshot">;
21
15
  }, {
22
16
  logger: import("../..").Logger;
23
17
  }]>;
@@ -1 +1 @@
1
- {"version":3,"file":"reply.middleware.d.ts","sourceRoot":"","sources":["../../../../src/server/middlewares/reply.middleware.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,kBAAkB,EAGlB,UAAU,EAEX,MAAM,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;;;;;AAkBnB,wBAgCK"}
1
+ {"version":3,"file":"reply.middleware.d.ts","sourceRoot":"","sources":["../../../../src/server/middlewares/reply.middleware.ts"],"names":[],"mappings":"AAGA,OAAO,EAAsB,UAAU,EAAoB,MAAM,WAAW,CAAC;;;;;;;;;;;;;;;;;;AAI7E,wBAoCK"}
@@ -1,43 +1,38 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ const rfdc_1 = __importDefault(require("rfdc"));
7
+ const lodash_1 = __importDefault(require("lodash"));
3
8
  const models_1 = require("../models");
4
- const buildEmptyOutgoing = (incoming) => ({
5
- type: incoming.type,
6
- status: 200,
7
- data: incoming.type === 'plain' ? '' : {},
8
- dataRaw: '',
9
- headers: {
10
- 'content-type': incoming.type === 'json'
11
- ? 'application/json'
12
- : incoming.type === 'xml'
13
- ? 'application/xml'
14
- : incoming.headers['content-type'] ?? 'text/plain',
15
- },
16
- });
9
+ const clone = (0, rfdc_1.default)();
17
10
  exports.default = models_1.Middleware
18
- .build(__filename, ['history', 'expectation'])
11
+ .build(__filename, ['history', 'snapshot', 'expectation'])
19
12
  .assignHandler(async (context) => {
20
- const plain = context.toPlain({ locations: ['incoming', 'forwarded.outgoing'], clone: true });
21
- const manipulated = context.shared.expectation.response?.manipulate({
22
- ...plain,
23
- outgoing: plain.forwarded?.outgoing ?? buildEmptyOutgoing(context.incoming),
24
- });
25
- const outgoing = manipulated?.outgoing ?? plain.forwarded?.outgoing ?? buildEmptyOutgoing(context.incoming);
26
- const type = (0, models_1.extractPayloadType)(outgoing.headers);
27
- const data = outgoing.data === undefined ? outgoing.dataRaw : outgoing.data;
13
+ const outgoing = context.shared.snapshot.forwarded?.outgoing
14
+ ? clone(context.shared.snapshot.forwarded.outgoing)
15
+ : context.shared.snapshot.outgoing;
16
+ const snapshot = context.shared.expectation.response
17
+ ? context.shared.expectation.response?.manipulate(context.shared.snapshot.assign({ outgoing }))
18
+ : context.shared.snapshot.assign({ outgoing });
19
+ const type = (0, models_1.extractPayloadType)(snapshot.outgoing.headers);
20
+ const data = snapshot.outgoing.data === undefined ? snapshot.outgoing.dataRaw : snapshot.outgoing.data;
28
21
  const dataRaw = Buffer.from(typeof data === 'object' ? (0, models_1.serializePayload)(type, data) : String(data));
29
- Object.assign(outgoing, {
22
+ Object.assign(snapshot.outgoing, {
30
23
  type,
31
24
  dataRaw: dataRaw.toString(),
32
- headers: Object.assign(outgoing.headers, {
33
- ...((!outgoing.headers?.['transfer-encoding'] && !context.request.headers['transfer-encoding']) && {
25
+ headers: Object.assign(snapshot.outgoing.headers, {
26
+ ...((!snapshot.outgoing.headers?.['transfer-encoding'] && !context.request.headers['transfer-encoding']) && {
34
27
  'content-length': String(dataRaw.length),
35
28
  }),
36
29
  })
37
30
  });
38
- await context.server.plugins.exec('outgoing.response', context.response, context.assignOutgoing(outgoing));
39
- context.shared.history.assignOutgoing(context.outgoing).switchState('finished');
40
- context.server.exchange.ws.publish('history:updated', context.shared.history.toPlain());
31
+ await context.server.plugins.exec('outgoing.response', context.response, context.assignOutgoing(snapshot.outgoing));
32
+ context.shared.snapshot.assign({ outgoing: snapshot.outgoing });
33
+ context.shared.history.snapshot.assign(lodash_1.default.omit(snapshot, ['incoming', 'forwarded']));
34
+ context.shared.history.switchStatus('finished');
35
+ context.server.exchanges.ws.publish('history:updated', context.shared.history.toPlain());
41
36
  context.complete();
42
37
  });
43
38
  //# sourceMappingURL=reply.middleware.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"reply.middleware.js","sourceRoot":"","sources":["../../../../src/server/middlewares/reply.middleware.ts"],"names":[],"mappings":";;AAEA,sCAOmB;AAEnB,MAAM,kBAAkB,GAAG,CAAC,QAAiC,EAA2B,EAAE,CAAC,CAAC;IAC1F,IAAI,EAAE,QAAQ,CAAC,IAAI;IACnB,MAAM,EAAE,GAAG;IAEX,IAAI,EAAE,QAAQ,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;IACzC,OAAO,EAAE,EAAE;IAEX,OAAO,EAAE;QACP,cAAc,EAAE,QAAQ,CAAC,IAAI,KAAK,MAAM;YACtC,CAAC,CAAC,kBAAkB;YACpB,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,KAAK;gBACzB,CAAC,CAAC,iBAAiB;gBACnB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,YAAY;KACrD;CACF,CAAC,CAAC;AAEH,kBAAe,mBAAU;KACtB,KAAK,CAAC,UAAU,EAAE,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;KAC7C,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IAC/B,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,CAAC,UAAU,EAAE,oBAAoB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9F,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,UAAU,CAAC;QAClE,GAAG,KAAK;QACR,QAAQ,EAAE,KAAK,CAAC,SAAS,EAAE,QAAQ,IAAI,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC;KAC5E,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,WAAW,EAAE,QAAQ,IAAI,KAAK,CAAC,SAAS,EAAE,QAAQ,IAAI,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC5G,MAAM,IAAI,GAAG,IAAA,2BAAkB,EAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAElD,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IAC5E,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAA,yBAAgB,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAEpG,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE;QACtB,IAAI;QAEJ,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAE;QAC3B,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE;YACvC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,IAAI;gBACjG,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;aACzC,CAAC;SACH,CAAC;KACH,CAAC,CAAC;IAEH,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,mBAAmB,EAAE,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE3G,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,QAAS,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IACjF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAExF,OAAO,CAAC,QAAQ,EAAE,CAAC;AACrB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"reply.middleware.js","sourceRoot":"","sources":["../../../../src/server/middlewares/reply.middleware.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export * from './storage';
2
+ export * from './model';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/server/models/containers/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./storage"), exports);
18
+ __exportStar(require("./model"), exports);
19
+ //# sourceMappingURL=index.js.map