@eggjs/mock 6.0.7 → 6.1.0-beta.11

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 (214) hide show
  1. package/README.md +36 -57
  2. package/README.zh_CN.md +31 -51
  3. package/dist/_virtual/rolldown_runtime.js +7 -0
  4. package/dist/app/extend/agent.d.ts +39 -0
  5. package/dist/app/extend/agent.js +48 -0
  6. package/dist/app/extend/application.d.ts +175 -0
  7. package/dist/app/extend/application.js +385 -0
  8. package/dist/app/middleware/cluster_app_mock.d.ts +6 -0
  9. package/dist/app/middleware/cluster_app_mock.js +97 -0
  10. package/dist/app.d.ts +10 -0
  11. package/dist/app.js +17 -0
  12. package/dist/bootstrap.d.ts +9 -0
  13. package/dist/bootstrap.js +14 -0
  14. package/dist/index.d.ts +81 -0
  15. package/dist/index.js +47 -0
  16. package/dist/inject_mocha.d.ts +1 -0
  17. package/dist/inject_mocha.js +34 -0
  18. package/dist/lib/agent_handler.d.ts +7 -0
  19. package/dist/lib/agent_handler.js +26 -0
  20. package/dist/lib/app.d.ts +7 -0
  21. package/dist/lib/app.js +251 -0
  22. package/dist/lib/app_handler.d.ts +9 -0
  23. package/dist/lib/app_handler.js +56 -0
  24. package/dist/lib/cluster.d.ts +126 -0
  25. package/dist/lib/cluster.js +283 -0
  26. package/dist/lib/context.d.ts +4 -0
  27. package/dist/lib/context.js +10 -0
  28. package/dist/lib/format_options.d.ts +10 -0
  29. package/dist/lib/format_options.js +65 -0
  30. package/dist/lib/inject_context.d.ts +9 -0
  31. package/dist/lib/inject_context.js +106 -0
  32. package/dist/lib/mock_agent.d.ts +9 -0
  33. package/dist/lib/mock_agent.js +45 -0
  34. package/dist/lib/mock_custom_loader.d.ts +4 -0
  35. package/dist/lib/mock_custom_loader.js +35 -0
  36. package/dist/lib/mock_http_server.d.ts +6 -0
  37. package/dist/lib/mock_http_server.js +17 -0
  38. package/dist/lib/mock_httpclient.d.ts +40 -0
  39. package/dist/lib/mock_httpclient.js +110 -0
  40. package/dist/lib/parallel/agent.d.ts +24 -0
  41. package/dist/lib/parallel/agent.js +111 -0
  42. package/dist/lib/parallel/app.d.ts +24 -0
  43. package/dist/lib/parallel/app.js +99 -0
  44. package/dist/lib/parallel/util.d.ts +6 -0
  45. package/dist/lib/parallel/util.js +59 -0
  46. package/dist/lib/prerequire.d.ts +1 -0
  47. package/dist/lib/prerequire.js +1 -0
  48. package/dist/lib/request_call_function.d.ts +1 -0
  49. package/dist/lib/request_call_function.js +37 -0
  50. package/dist/lib/restore.d.ts +4 -0
  51. package/dist/lib/restore.js +16 -0
  52. package/dist/lib/start-cluster.d.ts +1 -0
  53. package/dist/lib/start-cluster.js +19 -0
  54. package/dist/lib/supertest.d.ts +16 -0
  55. package/dist/lib/supertest.js +39 -0
  56. package/dist/lib/tmp/empty.d.ts +1 -0
  57. package/dist/lib/tmp/empty.js +1 -0
  58. package/{src/lib/types.ts → dist/lib/types.d.ts} +12 -29
  59. package/dist/lib/types.js +1 -0
  60. package/dist/lib/utils.d.ts +12 -0
  61. package/dist/lib/utils.js +40 -0
  62. package/dist/register.d.ts +10 -0
  63. package/dist/register.js +40 -0
  64. package/dist/typings/index.d.ts +1 -0
  65. package/package.json +69 -98
  66. package/dist/commonjs/app/extend/agent.d.ts +0 -34
  67. package/dist/commonjs/app/extend/agent.js +0 -49
  68. package/dist/commonjs/app/extend/application.d.ts +0 -172
  69. package/dist/commonjs/app/extend/application.js +0 -450
  70. package/dist/commonjs/app/middleware/cluster_app_mock.d.ts +0 -3
  71. package/dist/commonjs/app/middleware/cluster_app_mock.js +0 -101
  72. package/dist/commonjs/app.d.ts +0 -6
  73. package/dist/commonjs/app.js +0 -20
  74. package/dist/commonjs/bootstrap.d.ts +0 -5
  75. package/dist/commonjs/bootstrap.js +0 -59
  76. package/dist/commonjs/index.d.ts +0 -77
  77. package/dist/commonjs/index.js +0 -114
  78. package/dist/commonjs/lib/agent_handler.d.ts +0 -3
  79. package/dist/commonjs/lib/agent_handler.js +0 -28
  80. package/dist/commonjs/lib/app.d.ts +0 -3
  81. package/dist/commonjs/lib/app.js +0 -301
  82. package/dist/commonjs/lib/app_handler.d.ts +0 -5
  83. package/dist/commonjs/lib/app_handler.js +0 -71
  84. package/dist/commonjs/lib/cluster.d.ts +0 -114
  85. package/dist/commonjs/lib/cluster.js +0 -337
  86. package/dist/commonjs/lib/context.d.ts +0 -1
  87. package/dist/commonjs/lib/context.js +0 -16
  88. package/dist/commonjs/lib/format_options.d.ts +0 -5
  89. package/dist/commonjs/lib/format_options.js +0 -100
  90. package/dist/commonjs/lib/inject_context.d.ts +0 -6
  91. package/dist/commonjs/lib/inject_context.js +0 -132
  92. package/dist/commonjs/lib/mock_agent.d.ts +0 -5
  93. package/dist/commonjs/lib/mock_agent.js +0 -49
  94. package/dist/commonjs/lib/mock_custom_loader.d.ts +0 -1
  95. package/dist/commonjs/lib/mock_custom_loader.js +0 -37
  96. package/dist/commonjs/lib/mock_http_server.d.ts +0 -2
  97. package/dist/commonjs/lib/mock_http_server.js +0 -24
  98. package/dist/commonjs/lib/mock_httpclient.d.ts +0 -36
  99. package/dist/commonjs/lib/mock_httpclient.js +0 -147
  100. package/dist/commonjs/lib/parallel/agent.d.ts +0 -20
  101. package/dist/commonjs/lib/parallel/agent.js +0 -125
  102. package/dist/commonjs/lib/parallel/app.d.ts +0 -20
  103. package/dist/commonjs/lib/parallel/app.js +0 -115
  104. package/dist/commonjs/lib/parallel/util.d.ts +0 -3
  105. package/dist/commonjs/lib/parallel/util.js +0 -77
  106. package/dist/commonjs/lib/prerequire.d.ts +0 -1
  107. package/dist/commonjs/lib/prerequire.js +0 -26
  108. package/dist/commonjs/lib/request_call_function.d.ts +0 -1
  109. package/dist/commonjs/lib/request_call_function.js +0 -52
  110. package/dist/commonjs/lib/restore.d.ts +0 -1
  111. package/dist/commonjs/lib/restore.js +0 -16
  112. package/dist/commonjs/lib/start-cluster.d.ts +0 -2
  113. package/dist/commonjs/lib/start-cluster.js +0 -23
  114. package/dist/commonjs/lib/supertest.d.ts +0 -11
  115. package/dist/commonjs/lib/supertest.js +0 -48
  116. package/dist/commonjs/lib/tmp/empty.d.ts +0 -1
  117. package/dist/commonjs/lib/tmp/empty.js +0 -3
  118. package/dist/commonjs/lib/types.d.ts +0 -68
  119. package/dist/commonjs/lib/types.js +0 -3
  120. package/dist/commonjs/lib/utils.d.ts +0 -9
  121. package/dist/commonjs/lib/utils.js +0 -80
  122. package/dist/commonjs/package.json +0 -3
  123. package/dist/commonjs/register.d.ts +0 -8
  124. package/dist/commonjs/register.js +0 -80
  125. package/dist/esm/app/extend/agent.d.ts +0 -34
  126. package/dist/esm/app/extend/agent.js +0 -46
  127. package/dist/esm/app/extend/application.d.ts +0 -172
  128. package/dist/esm/app/extend/application.js +0 -444
  129. package/dist/esm/app/middleware/cluster_app_mock.d.ts +0 -3
  130. package/dist/esm/app/middleware/cluster_app_mock.js +0 -99
  131. package/dist/esm/app.d.ts +0 -6
  132. package/dist/esm/app.js +0 -17
  133. package/dist/esm/bootstrap.d.ts +0 -5
  134. package/dist/esm/bootstrap.js +0 -15
  135. package/dist/esm/index.d.ts +0 -77
  136. package/dist/esm/index.js +0 -91
  137. package/dist/esm/lib/agent_handler.d.ts +0 -3
  138. package/dist/esm/lib/agent_handler.js +0 -24
  139. package/dist/esm/lib/app.d.ts +0 -3
  140. package/dist/esm/lib/app.js +0 -295
  141. package/dist/esm/lib/app_handler.d.ts +0 -5
  142. package/dist/esm/lib/app_handler.js +0 -65
  143. package/dist/esm/lib/cluster.d.ts +0 -114
  144. package/dist/esm/lib/cluster.js +0 -328
  145. package/dist/esm/lib/context.d.ts +0 -1
  146. package/dist/esm/lib/context.js +0 -13
  147. package/dist/esm/lib/format_options.d.ts +0 -5
  148. package/dist/esm/lib/format_options.js +0 -94
  149. package/dist/esm/lib/inject_context.d.ts +0 -6
  150. package/dist/esm/lib/inject_context.js +0 -126
  151. package/dist/esm/lib/mock_agent.d.ts +0 -5
  152. package/dist/esm/lib/mock_agent.js +0 -45
  153. package/dist/esm/lib/mock_custom_loader.d.ts +0 -1
  154. package/dist/esm/lib/mock_custom_loader.js +0 -34
  155. package/dist/esm/lib/mock_http_server.d.ts +0 -2
  156. package/dist/esm/lib/mock_http_server.js +0 -18
  157. package/dist/esm/lib/mock_httpclient.d.ts +0 -36
  158. package/dist/esm/lib/mock_httpclient.js +0 -144
  159. package/dist/esm/lib/parallel/agent.d.ts +0 -20
  160. package/dist/esm/lib/parallel/agent.js +0 -117
  161. package/dist/esm/lib/parallel/app.d.ts +0 -20
  162. package/dist/esm/lib/parallel/app.js +0 -110
  163. package/dist/esm/lib/parallel/util.d.ts +0 -3
  164. package/dist/esm/lib/parallel/util.js +0 -73
  165. package/dist/esm/lib/prerequire.d.ts +0 -1
  166. package/dist/esm/lib/prerequire.js +0 -25
  167. package/dist/esm/lib/request_call_function.d.ts +0 -1
  168. package/dist/esm/lib/request_call_function.js +0 -47
  169. package/dist/esm/lib/restore.d.ts +0 -1
  170. package/dist/esm/lib/restore.js +0 -13
  171. package/dist/esm/lib/start-cluster.d.ts +0 -2
  172. package/dist/esm/lib/start-cluster.js +0 -18
  173. package/dist/esm/lib/supertest.d.ts +0 -11
  174. package/dist/esm/lib/supertest.js +0 -40
  175. package/dist/esm/lib/tmp/empty.d.ts +0 -1
  176. package/dist/esm/lib/tmp/empty.js +0 -2
  177. package/dist/esm/lib/types.d.ts +0 -68
  178. package/dist/esm/lib/types.js +0 -2
  179. package/dist/esm/lib/utils.d.ts +0 -9
  180. package/dist/esm/lib/utils.js +0 -69
  181. package/dist/esm/package.json +0 -3
  182. package/dist/esm/register.d.ts +0 -8
  183. package/dist/esm/register.js +0 -75
  184. package/dist/package.json +0 -4
  185. package/src/app/extend/agent.ts +0 -57
  186. package/src/app/extend/application.ts +0 -512
  187. package/src/app/middleware/cluster_app_mock.ts +0 -102
  188. package/src/app.ts +0 -18
  189. package/src/bootstrap.ts +0 -25
  190. package/src/index.ts +0 -112
  191. package/src/lib/agent_handler.ts +0 -28
  192. package/src/lib/app.ts +0 -314
  193. package/src/lib/app_handler.ts +0 -77
  194. package/src/lib/cluster.ts +0 -363
  195. package/src/lib/context.ts +0 -14
  196. package/src/lib/format_options.ts +0 -103
  197. package/src/lib/inject_context.ts +0 -134
  198. package/src/lib/mock_agent.ts +0 -57
  199. package/src/lib/mock_custom_loader.ts +0 -36
  200. package/src/lib/mock_http_server.ts +0 -19
  201. package/src/lib/mock_httpclient.ts +0 -183
  202. package/src/lib/parallel/agent.ts +0 -128
  203. package/src/lib/parallel/app.ts +0 -123
  204. package/src/lib/parallel/util.ts +0 -66
  205. package/src/lib/prerequire.ts +0 -25
  206. package/src/lib/request_call_function.ts +0 -49
  207. package/src/lib/restore.ts +0 -14
  208. package/src/lib/start-cluster.ts +0 -23
  209. package/src/lib/supertest.ts +0 -45
  210. package/src/lib/tmp/.gitkeep +0 -0
  211. package/src/lib/tmp/empty.ts +0 -0
  212. package/src/lib/utils.ts +0 -82
  213. package/src/register.ts +0 -80
  214. package/src/typings/index.d.ts +0 -4
@@ -1,450 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const node_util_1 = require("node:util");
7
- const node_http_1 = __importDefault(require("node:http"));
8
- const node_fs_1 = __importDefault(require("node:fs"));
9
- const node_assert_1 = __importDefault(require("node:assert"));
10
- const merge_descriptors_1 = __importDefault(require("merge-descriptors"));
11
- const is_type_of_1 = require("is-type-of");
12
- const mm_1 = require("mm");
13
- const egg_logger_1 = require("egg-logger");
14
- const core_1 = require("@eggjs/core");
15
- const mock_agent_js_1 = require("../../lib/mock_agent.js");
16
- const mock_httpclient_js_1 = require("../../lib/mock_httpclient.js");
17
- const supertest_js_1 = require("../../lib/supertest.js");
18
- const debug = (0, node_util_1.debuglog)('@eggjs/mock/app/extend/application');
19
- const ORIGIN_TYPES = Symbol('@eggjs/mock originTypes');
20
- const BACKGROUND_TASKS = Symbol('Application#backgroundTasks');
21
- const REUSED_CTX = Symbol('Context#reusedInSuite');
22
- class ApplicationUnittest extends core_1.EggCore {
23
- _mockHttpClient;
24
- /**
25
- * mock Context
26
- * @function App#mockContext
27
- * @param {Object} data - ctx data
28
- * @param {Object} [options] - mock ctx options
29
- * @example
30
- * ```js
31
- * const ctx = app.mockContext({
32
- * user: {
33
- * name: 'Jason'
34
- * }
35
- * });
36
- * console.log(ctx.user.name); // Jason
37
- *
38
- * // controller
39
- * module.exports = function*() {
40
- * this.body = this.user.name;
41
- * };
42
- * ```
43
- */
44
- mockContext(data, options) {
45
- data = data ?? {};
46
- function mockRequest(req) {
47
- for (const key in data?.headers) {
48
- (0, mm_1.mock)(req.headers, key, data.headers[key]);
49
- (0, mm_1.mock)(req.headers, key.toLowerCase(), data.headers[key]);
50
- }
51
- }
52
- // try to use app.options.mockCtxStorage first
53
- const mockCtxStorage = this.options.mockCtxStorage ?? true;
54
- options = Object.assign({ mockCtxStorage }, options);
55
- if ('_customMockContext' in this && typeof this._customMockContext === 'function') {
56
- this._customMockContext(data);
57
- }
58
- // 使用者自定义mock,可以覆盖上面的 mock
59
- for (const key in data) {
60
- (0, mm_1.mock)(this.context, key, data[key]);
61
- }
62
- const req = this.mockRequest(data);
63
- const res = new node_http_1.default.ServerResponse(req);
64
- if (options.reuseCtxStorage !== false) {
65
- if (this.currentContext && !this.currentContext[REUSED_CTX]) {
66
- mockRequest(this.currentContext.request.req);
67
- this.currentContext[REUSED_CTX] = true;
68
- return this.currentContext;
69
- }
70
- }
71
- const ctx = this.createContext(req, res);
72
- if (options.mockCtxStorage) {
73
- (0, mm_1.mock)(this.ctxStorage, 'getStore', () => ctx);
74
- }
75
- return ctx;
76
- }
77
- async mockContextScope(fn, data) {
78
- const ctx = this.mockContext(data, {
79
- mockCtxStorage: false,
80
- reuseCtxStorage: false,
81
- });
82
- return await this.ctxStorage.run(ctx, async () => {
83
- return await fn(ctx);
84
- });
85
- }
86
- /**
87
- * mock cookie session
88
- * @function App#mockSession
89
- * @param {Object} data - session object
90
- */
91
- mockSession(data) {
92
- if (!data) {
93
- return this;
94
- }
95
- if ((0, is_type_of_1.isObject)(data) && !('save' in data)) {
96
- // keep session.save() work
97
- Object.defineProperty(data, 'save', {
98
- value: () => { },
99
- enumerable: false,
100
- });
101
- }
102
- (0, mm_1.mock)(this.context, 'session', data);
103
- return this;
104
- }
105
- /**
106
- * Mock service
107
- * @function App#mockService
108
- * @param {String} service - name
109
- * @param {String} methodName - method
110
- * @param {Object|Function|Error} fn - mock you data
111
- */
112
- mockService(service, methodName, fn) {
113
- if (typeof service === 'string') {
114
- const splits = service.split('.');
115
- service = this.serviceClasses;
116
- for (const key of splits) {
117
- service = service[key];
118
- }
119
- service = service.prototype || service;
120
- }
121
- this._mockFn(service, methodName, fn);
122
- return this;
123
- }
124
- /**
125
- * mock service that return error
126
- * @function App#mockServiceError
127
- * @param {String} service - name
128
- * @param {String} methodName - method
129
- * @param {Error} [err] - error information
130
- */
131
- mockServiceError(service, methodName, err) {
132
- if (typeof err === 'string') {
133
- err = new Error(err);
134
- }
135
- if (!err) {
136
- // mockServiceError(service, methodName)
137
- err = new Error(`mock ${methodName} error`);
138
- }
139
- this.mockService(service, methodName, err);
140
- return this;
141
- }
142
- _mockFn(obj, name, data) {
143
- const origin = obj[name];
144
- (0, node_assert_1.default)(typeof origin === 'function', `property ${name} in original object must be function`);
145
- // keep origin properties' type to support mock multi times
146
- if (!obj[ORIGIN_TYPES])
147
- obj[ORIGIN_TYPES] = {};
148
- let type = obj[ORIGIN_TYPES][name];
149
- if (!type) {
150
- type = obj[ORIGIN_TYPES][name] = (0, is_type_of_1.isAsyncFunction)(origin) ? 'async' : 'sync';
151
- }
152
- if (typeof data === 'function') {
153
- const fn = data;
154
- // if original is async function
155
- // but the mock function is normal function, need to change it return a promise
156
- if (type === 'async' && !(0, is_type_of_1.isAsyncFunction)(fn)) {
157
- (0, mm_1.mock)(obj, name, function (...args) {
158
- return new Promise(resolve => {
159
- resolve(fn.apply(this, args));
160
- });
161
- });
162
- return;
163
- }
164
- (0, mm_1.mock)(obj, name, fn);
165
- return;
166
- }
167
- if (type === 'async') {
168
- (0, mm_1.mock)(obj, name, () => {
169
- return new Promise((resolve, reject) => {
170
- if (data instanceof Error)
171
- return reject(data);
172
- resolve(data);
173
- });
174
- });
175
- return;
176
- }
177
- (0, mm_1.mock)(obj, name, () => {
178
- if (data instanceof Error) {
179
- throw data;
180
- }
181
- return data;
182
- });
183
- }
184
- /**
185
- * mock request
186
- * @function App#mockRequest
187
- * @param {Request} req - mock request
188
- */
189
- mockRequest(req) {
190
- req = { ...req };
191
- const headers = req.headers ?? {};
192
- for (const key in req.headers) {
193
- headers[key.toLowerCase()] = req.headers[key];
194
- }
195
- if (!headers['x-forwarded-for']) {
196
- headers['x-forwarded-for'] = '127.0.0.1';
197
- }
198
- headers['x-mock-request-from'] = '@eggjs/mock';
199
- req.headers = headers;
200
- (0, merge_descriptors_1.default)(req, {
201
- query: {},
202
- querystring: '',
203
- host: '127.0.0.1',
204
- hostname: '127.0.0.1',
205
- protocol: 'http',
206
- secure: 'false',
207
- method: 'GET',
208
- url: '/',
209
- path: '/',
210
- socket: {
211
- remoteAddress: '127.0.0.1',
212
- remotePort: 7001,
213
- },
214
- });
215
- return req;
216
- }
217
- /**
218
- * mock cookies
219
- * @function App#mockCookies
220
- */
221
- mockCookies(cookies) {
222
- if (!cookies) {
223
- return this;
224
- }
225
- const createContext = this.createContext;
226
- (0, mm_1.mock)(this, 'createContext', function (req, res) {
227
- const ctx = createContext.call(this, req, res);
228
- const getCookie = ctx.cookies.get;
229
- (0, mm_1.mock)(ctx.cookies, 'get', function (key, opts) {
230
- if (cookies[key]) {
231
- return cookies[key];
232
- }
233
- return getCookie.call(this, key, opts);
234
- });
235
- return ctx;
236
- });
237
- return this;
238
- }
239
- /**
240
- * mock header
241
- * @function App#mockHeaders
242
- */
243
- mockHeaders(headers) {
244
- if (!headers) {
245
- return this;
246
- }
247
- const getHeader = this.request.get;
248
- (0, mm_1.mock)(this.request, 'get', function (field) {
249
- const value = findHeaders(headers, field);
250
- if (value)
251
- return value;
252
- return getHeader.call(this, field);
253
- });
254
- return this;
255
- }
256
- /**
257
- * mock csrf
258
- * @function App#mockCsrf
259
- * @since 1.11
260
- */
261
- mockCsrf() {
262
- (0, mm_1.mock)(this.context, 'assertCSRF', () => { });
263
- (0, mm_1.mock)(this.context, 'assertCsrf', () => { });
264
- return this;
265
- }
266
- /**
267
- * mock httpclient
268
- * @alias mockHttpClient
269
- * @function App#mockHttpclient
270
- */
271
- mockHttpclient(mockUrl, mockMethod, mockResult) {
272
- return this.mockHttpClient(mockUrl, mockMethod, mockResult);
273
- }
274
- /**
275
- * mock httpclient
276
- * @function App#mockHttpClient
277
- */
278
- mockHttpClient(mockUrl, mockMethod, mockResult) {
279
- if (!this._mockHttpClient) {
280
- this._mockHttpClient = (0, mock_httpclient_js_1.createMockHttpClient)(this);
281
- }
282
- this._mockHttpClient(mockUrl, mockMethod, mockResult);
283
- return this;
284
- }
285
- /**
286
- * @deprecated Please use app.mockHttpClient instead of app.mockUrllib
287
- */
288
- mockUrllib(mockUrl, mockMethod, mockResult) {
289
- this.deprecate('[@eggjs/mock] Please use app.mockHttpClient instead of app.mockUrllib');
290
- return this.mockHttpClient(mockUrl, mockMethod, mockResult);
291
- }
292
- /**
293
- * get mock httpclient agent
294
- * @function App#mockHttpclientAgent
295
- */
296
- mockAgent() {
297
- return (0, mock_agent_js_1.getMockAgent)(this);
298
- }
299
- async mockAgentRestore() {
300
- await (0, mock_agent_js_1.restoreMockAgent)();
301
- }
302
- /**
303
- * @see mm#restore
304
- * @function App#mockRestore
305
- */
306
- async mockRestore() {
307
- await this.mockAgentRestore();
308
- (0, mm_1.restore)();
309
- }
310
- /**
311
- * @see mm
312
- * @function App#mm
313
- */
314
- get mm() {
315
- return mm_1.mock;
316
- }
317
- /**
318
- * override loadAgent
319
- * @function App#loadAgent
320
- */
321
- loadAgent() { }
322
- /**
323
- * mock serverEnv
324
- * @function App#mockEnv
325
- * @param {String} env - serverEnv
326
- */
327
- mockEnv(env) {
328
- (0, mm_1.mock)(this.config, 'env', env);
329
- (0, mm_1.mock)(this.config, 'serverEnv', env);
330
- debug('mock env: %o', env);
331
- return this;
332
- }
333
- /**
334
- * http request helper
335
- * @function App#httpRequest
336
- * @return {SupertestRequest} req - supertest request
337
- * @see https://github.com/visionmedia/supertest
338
- */
339
- httpRequest() {
340
- return (0, supertest_js_1.request)(this);
341
- }
342
- /**
343
- * collection logger message, then can be use on `expectLog()`
344
- * @param {String|Logger} [logger] - logger instance, default is `app.logger`
345
- * @function App#mockLog
346
- */
347
- mockLog(logger) {
348
- logger = logger ?? this.logger;
349
- if (typeof logger === 'string') {
350
- logger = this.getLogger(logger);
351
- }
352
- // make sure mock once
353
- if ('_mockLogs' in logger && logger._mockLogs)
354
- return;
355
- const transport = new egg_logger_1.Transport(logger.options);
356
- // https://github.com/eggjs/egg-logger/blob/master/lib/logger.js#L64
357
- const log = logger.log;
358
- const mockLogs = [];
359
- (0, mm_1.mock)(logger, '_mockLogs', mockLogs);
360
- (0, mm_1.mock)(logger, 'log', (level, args, meta) => {
361
- const message = transport.log(level, args, meta);
362
- mockLogs.push(message);
363
- log.apply(logger, [level, args, meta]);
364
- });
365
- }
366
- __checkExpectLog(expectOrNot, str, logger) {
367
- logger = logger || this.logger;
368
- if (typeof logger === 'string') {
369
- logger = this.getLogger(logger);
370
- }
371
- const filepath = logger.options.file;
372
- let content;
373
- if ('_mockLogs' in logger && logger._mockLogs) {
374
- content = logger._mockLogs.join('\n');
375
- }
376
- else {
377
- content = node_fs_1.default.readFileSync(filepath, 'utf8');
378
- }
379
- let match;
380
- let type;
381
- if (str instanceof RegExp) {
382
- match = str.test(content);
383
- type = 'RegExp';
384
- }
385
- else {
386
- match = content.includes(String(str));
387
- type = 'String';
388
- }
389
- if (expectOrNot) {
390
- (0, node_assert_1.default)(match, `Can't find ${type}:"${str}" in ${filepath}, log content: ...${content.substring(content.length - 500)}`);
391
- }
392
- else {
393
- (0, node_assert_1.default)(!match, `Find ${type}:"${str}" in ${filepath}, log content: ...${content.substring(content.length - 500)}`);
394
- }
395
- }
396
- /**
397
- * expect str/regexp in the logger, if your server disk is slow, please call `mockLog()` first.
398
- * @param {String|RegExp} str - test str or regexp
399
- * @param {String|Logger} [logger] - logger instance, default is `ctx.logger`
400
- * @function App#expectLog
401
- */
402
- expectLog(str, logger) {
403
- this.__checkExpectLog(true, str, logger);
404
- }
405
- /**
406
- * not expect str/regexp in the logger, if your server disk is slow, please call `mockLog()` first.
407
- * @param {String|RegExp} str - test str or regexp
408
- * @param {String|Logger} [logger] - logger instance, default is `ctx.logger`
409
- * @function App#notExpectLog
410
- */
411
- notExpectLog(str, logger) {
412
- this.__checkExpectLog(false, str, logger);
413
- }
414
- async backgroundTasksFinished() {
415
- const tasks = this._backgroundTasks;
416
- debug('waiting %d background tasks', tasks.length);
417
- if (tasks.length === 0)
418
- return;
419
- this._backgroundTasks = [];
420
- await Promise.all(tasks);
421
- debug('finished %d background tasks', tasks.length);
422
- if (this._backgroundTasks.length) {
423
- debug('new background tasks created: %s', this._backgroundTasks.length);
424
- await this.backgroundTasksFinished();
425
- }
426
- }
427
- get _backgroundTasks() {
428
- if (!this[BACKGROUND_TASKS]) {
429
- this[BACKGROUND_TASKS] = [];
430
- }
431
- return this[BACKGROUND_TASKS];
432
- }
433
- set _backgroundTasks(tasks) {
434
- this[BACKGROUND_TASKS] = tasks;
435
- }
436
- }
437
- exports.default = ApplicationUnittest;
438
- function findHeaders(headers, key) {
439
- if (!headers || !key) {
440
- return null;
441
- }
442
- key = key.toLowerCase();
443
- for (const headerKey in headers) {
444
- if (key === headerKey.toLowerCase()) {
445
- return headers[headerKey];
446
- }
447
- }
448
- return null;
449
- }
450
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGljYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBwL2V4dGVuZC9hcHBsaWNhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHlDQUFxQztBQUNyQywwREFBa0Q7QUFDbEQsc0RBQXlCO0FBQ3pCLDhEQUFpQztBQUNqQywwRUFBaUQ7QUFDakQsMkNBQXVEO0FBQ3ZELDJCQUFtQztBQUVuQywyQ0FBd0U7QUFDeEUsc0NBQTJGO0FBRTNGLDJEQUF5RTtBQUN6RSxxRUFJc0M7QUFDdEMseURBQXFGO0FBR3JGLE1BQU0sS0FBSyxHQUFHLElBQUEsb0JBQVEsRUFBQyxvQ0FBb0MsQ0FBQyxDQUFDO0FBRTdELE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0FBQ3ZELE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLDZCQUE2QixDQUFDLENBQUM7QUFDL0QsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLHVCQUF1QixDQUFDLENBQUM7QUF1Qm5ELE1BQThCLG1CQUFvQixTQUFRLGNBQU87SUFHL0QsZUFBZSxDQUF3QjtJQUd2Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQW1CRztJQUNILFdBQVcsQ0FBQyxJQUFzQixFQUFFLE9BQTRCO1FBQzlELElBQUksR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ2xCLFNBQVMsV0FBVyxDQUFDLEdBQW9CO1lBQ3ZDLEtBQUssTUFBTSxHQUFHLElBQUksSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDO2dCQUNoQyxJQUFBLFNBQUksRUFBQyxHQUFHLENBQUMsT0FBTyxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQzFDLElBQUEsU0FBSSxFQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLFdBQVcsRUFBRSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUMxRCxDQUFDO1FBQ0gsQ0FBQztRQUVELDhDQUE4QztRQUM5QyxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsSUFBSSxJQUFJLENBQUM7UUFDM0QsT0FBTyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxjQUFjLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUVyRCxJQUFJLG9CQUFvQixJQUFJLElBQUksSUFBSSxPQUFPLElBQUksQ0FBQyxrQkFBa0IsS0FBSyxVQUFVLEVBQUUsQ0FBQztZQUNsRixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDaEMsQ0FBQztRQUVELDBCQUEwQjtRQUMxQixLQUFLLE1BQU0sR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ3ZCLElBQUEsU0FBSSxFQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ3JDLENBQUM7UUFFRCxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25DLE1BQU0sR0FBRyxHQUFHLElBQUksbUJBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFekMsSUFBSSxPQUFPLENBQUMsZUFBZSxLQUFLLEtBQUssRUFBRSxDQUFDO1lBQ3RDLElBQUksSUFBSSxDQUFDLGNBQWMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztnQkFDNUQsV0FBVyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUM3QyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxHQUFHLElBQUksQ0FBQztnQkFDdkMsT0FBTyxJQUFJLENBQUMsY0FBNkIsQ0FBQztZQUM1QyxDQUFDO1FBQ0gsQ0FBQztRQUNELE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ3pDLElBQUksT0FBTyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQzNCLElBQUEsU0FBSSxFQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQy9DLENBQUM7UUFDRCxPQUFPLEdBQWtCLENBQUM7SUFDNUIsQ0FBQztJQUVELEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxFQUF1QyxFQUFFLElBQXNCO1FBQ3BGLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFO1lBQ2pDLGNBQWMsRUFBRSxLQUFLO1lBQ3JCLGVBQWUsRUFBRSxLQUFLO1NBQ3ZCLENBQUMsQ0FBQztRQUNILE9BQU8sTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxHQUFVLEVBQUUsS0FBSyxJQUFJLEVBQUU7WUFDdEQsT0FBTyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN2QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsV0FBVyxDQUFDLElBQVM7UUFDbkIsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ1YsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsSUFBSSxJQUFBLHFCQUFRLEVBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ3hDLDJCQUEyQjtZQUMzQixNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUU7Z0JBQ2xDLEtBQUssRUFBRSxHQUFHLEVBQUUsR0FBRSxDQUFDO2dCQUNmLFVBQVUsRUFBRSxLQUFLO2FBQ2xCLENBQUMsQ0FBQztRQUNMLENBQUM7UUFDRCxJQUFBLFNBQUksRUFBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNwQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxXQUFXLENBQUMsT0FBcUIsRUFBRSxVQUFrQixFQUFFLEVBQU87UUFDNUQsSUFBSSxPQUFPLE9BQU8sS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUNoQyxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ2xDLE9BQU8sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDO1lBQzlCLEtBQUssTUFBTSxHQUFHLElBQUksTUFBTSxFQUFFLENBQUM7Z0JBQ3pCLE9BQU8sR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDekIsQ0FBQztZQUNELE9BQU8sR0FBRyxPQUFPLENBQUMsU0FBUyxJQUFJLE9BQU8sQ0FBQztRQUN6QyxDQUFDO1FBQ0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsVUFBVSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3RDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILGdCQUFnQixDQUFDLE9BQXFCLEVBQUUsVUFBa0IsRUFBRSxHQUFvQjtRQUM5RSxJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQzVCLEdBQUcsR0FBRyxJQUFJLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN2QixDQUFDO1FBQ0QsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ1Qsd0NBQXdDO1lBQ3hDLEdBQUcsR0FBRyxJQUFJLEtBQUssQ0FBQyxRQUFRLFVBQVUsUUFBUSxDQUFDLENBQUM7UUFDOUMsQ0FBQztRQUNELElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUMzQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxPQUFPLENBQUMsR0FBUSxFQUFFLElBQVksRUFBRSxJQUFTO1FBQ3ZDLE1BQU0sTUFBTSxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6QixJQUFBLHFCQUFNLEVBQUMsT0FBTyxNQUFNLEtBQUssVUFBVSxFQUFFLFlBQVksSUFBSSxzQ0FBc0MsQ0FBQyxDQUFDO1FBRTdGLDJEQUEyRDtRQUMzRCxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQztZQUFFLEdBQUcsQ0FBQyxZQUFZLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDL0MsSUFBSSxJQUFJLEdBQUcsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25DLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNWLElBQUksR0FBRyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBQSw0QkFBZSxFQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztRQUM5RSxDQUFDO1FBRUQsSUFBSSxPQUFPLElBQUksS0FBSyxVQUFVLEVBQUUsQ0FBQztZQUMvQixNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUM7WUFDaEIsZ0NBQWdDO1lBQ2hDLCtFQUErRTtZQUMvRSxJQUFJLElBQUksS0FBSyxPQUFPLElBQUksQ0FBQyxJQUFBLDRCQUFlLEVBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQztnQkFDN0MsSUFBQSxTQUFJLEVBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxVQUFvQixHQUFHLElBQVc7b0JBQ2hELE9BQU8sSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7d0JBQzNCLE9BQU8sQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO29CQUNoQyxDQUFDLENBQUMsQ0FBQztnQkFDTCxDQUFDLENBQUMsQ0FBQztnQkFDSCxPQUFPO1lBQ1QsQ0FBQztZQUVELElBQUEsU0FBSSxFQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDcEIsT0FBTztRQUNULENBQUM7UUFFRCxJQUFJLElBQUksS0FBSyxPQUFPLEVBQUUsQ0FBQztZQUNyQixJQUFBLFNBQUksRUFBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRTtnQkFDbkIsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtvQkFDckMsSUFBSSxJQUFJLFlBQVksS0FBSzt3QkFBRSxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDL0MsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNoQixDQUFDLENBQUMsQ0FBQztZQUNMLENBQUMsQ0FBQyxDQUFDO1lBQ0gsT0FBTztRQUNULENBQUM7UUFFRCxJQUFBLFNBQUksRUFBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRTtZQUNuQixJQUFJLElBQUksWUFBWSxLQUFLLEVBQUUsQ0FBQztnQkFDMUIsTUFBTSxJQUFJLENBQUM7WUFDYixDQUFDO1lBQ0QsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsV0FBVyxDQUFDLEdBQW9CO1FBQzlCLEdBQUcsR0FBRyxFQUFFLEdBQUcsR0FBRyxFQUFFLENBQUM7UUFDakIsTUFBTSxPQUFPLEdBQUcsR0FBRyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDbEMsS0FBSyxNQUFNLEdBQUcsSUFBSSxHQUFHLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDOUIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDaEQsQ0FBQztRQUNELElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDO1lBQ2hDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLFdBQVcsQ0FBQztRQUMzQyxDQUFDO1FBQ0QsT0FBTyxDQUFDLHFCQUFxQixDQUFDLEdBQUcsYUFBYSxDQUFDO1FBQy9DLEdBQUcsQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3RCLElBQUEsMkJBQWdCLEVBQUMsR0FBRyxFQUFFO1lBQ3BCLEtBQUssRUFBRSxFQUFFO1lBQ1QsV0FBVyxFQUFFLEVBQUU7WUFDZixJQUFJLEVBQUUsV0FBVztZQUNqQixRQUFRLEVBQUUsV0FBVztZQUNyQixRQUFRLEVBQUUsTUFBTTtZQUNoQixNQUFNLEVBQUUsT0FBTztZQUNmLE1BQU0sRUFBRSxLQUFLO1lBQ2IsR0FBRyxFQUFFLEdBQUc7WUFDUixJQUFJLEVBQUUsR0FBRztZQUNULE1BQU0sRUFBRTtnQkFDTixhQUFhLEVBQUUsV0FBVztnQkFDMUIsVUFBVSxFQUFFLElBQUk7YUFDakI7U0FDRixDQUFDLENBQUM7UUFDSCxPQUFPLEdBQXNCLENBQUM7SUFDaEMsQ0FBQztJQUVEOzs7T0FHRztJQUNILFdBQVcsQ0FBQyxPQUEwQztRQUNwRCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDYixPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7UUFDRCxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDO1FBQ3pDLElBQUEsU0FBSSxFQUFDLElBQUksRUFBRSxlQUFlLEVBQUUsVUFBb0IsR0FBUSxFQUFFLEdBQVE7WUFDaEUsTUFBTSxHQUFHLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQy9DLE1BQU0sU0FBUyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDO1lBQ2xDLElBQUEsU0FBSSxFQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLFVBQW9CLEdBQVcsRUFBRSxJQUFTO2dCQUNqRSxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO29CQUNqQixPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDdEIsQ0FBQztnQkFDRCxPQUFPLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUN6QyxDQUFDLENBQUMsQ0FBQztZQUNILE9BQU8sR0FBRyxDQUFDO1FBQ2IsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7O09BR0c7SUFDSCxXQUFXLENBQUMsT0FBMEM7UUFDcEQsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2IsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBQ0QsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7UUFDbkMsSUFBQSxTQUFJLEVBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsVUFBd0IsS0FBYTtZQUM3RCxNQUFNLEtBQUssR0FBRyxXQUFXLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQzFDLElBQUksS0FBSztnQkFBRSxPQUFPLEtBQUssQ0FBQztZQUN4QixPQUFPLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3JDLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFFBQVE7UUFDTixJQUFBLFNBQUksRUFBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFlBQVksRUFBRSxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUMsQ0FBQztRQUMzQyxJQUFBLFNBQUksRUFBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFlBQVksRUFBRSxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUMsQ0FBQztRQUMzQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsY0FBYyxDQUFDLE9BQXdCLEVBQUUsVUFBc0UsRUFBRSxVQUE0RDtRQUMzSyxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsY0FBYyxDQUFDLE9BQXdCLEVBQUUsVUFBc0UsRUFBRSxVQUE0RDtRQUMzSyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQzFCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBQSx5Q0FBb0IsRUFBQyxJQUFJLENBQUMsQ0FBQztRQUNwRCxDQUFDO1FBQ0QsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQ3RELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOztPQUVHO0lBQ0gsVUFBVSxDQUFDLE9BQXdCLEVBQUUsVUFBc0UsRUFBRSxVQUE0RDtRQUN2SyxJQUFJLENBQUMsU0FBUyxDQUFDLHVFQUF1RSxDQUFDLENBQUM7UUFDeEYsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sRUFBRSxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVEOzs7T0FHRztJQUNILFNBQVM7UUFDUCxPQUFPLElBQUEsNEJBQVksRUFBQyxJQUFJLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsS0FBSyxDQUFDLGdCQUFnQjtRQUNwQixNQUFNLElBQUEsZ0NBQWdCLEdBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsS0FBSyxDQUFDLFdBQVc7UUFDZixNQUFNLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQzlCLElBQUEsWUFBTyxHQUFFLENBQUM7SUFDWixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFBSSxFQUFFO1FBQ0osT0FBTyxTQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsU0FBUyxLQUFJLENBQUM7SUFFZDs7OztPQUlHO0lBQ0gsT0FBTyxDQUFDLEdBQVc7UUFDakIsSUFBQSxTQUFJLEVBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDOUIsSUFBQSxTQUFJLEVBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxXQUFXLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDcEMsS0FBSyxDQUFDLGNBQWMsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUMzQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILFdBQVc7UUFDVCxPQUFPLElBQUEsc0JBQWdCLEVBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxPQUFPLENBQUMsTUFBd0I7UUFDOUIsTUFBTSxHQUFHLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQy9CLElBQUksT0FBTyxNQUFNLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDL0IsTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbEMsQ0FBQztRQUNELHNCQUFzQjtRQUN0QixJQUFJLFdBQVcsSUFBSSxNQUFNLElBQUksTUFBTSxDQUFDLFNBQVM7WUFBRSxPQUFPO1FBRXRELE1BQU0sU0FBUyxHQUFHLElBQUksc0JBQVMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDaEQsb0VBQW9FO1FBQ3BFLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUM7UUFDdkIsTUFBTSxRQUFRLEdBQWEsRUFBRSxDQUFDO1FBQzlCLElBQUEsU0FBSSxFQUFDLE1BQU0sRUFBRSxXQUFXLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDcEMsSUFBQSxTQUFJLEVBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxDQUFDLEtBQWtCLEVBQUUsSUFBVyxFQUFFLElBQWdCLEVBQUUsRUFBRTtZQUN4RSxNQUFNLE9BQU8sR0FBRyxTQUFTLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDakQsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN2QixHQUFHLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFFLENBQUMsQ0FBQztRQUMzQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxXQUFvQixFQUFFLEdBQW9CLEVBQUUsTUFBd0I7UUFDbkYsTUFBTSxHQUFHLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQy9CLElBQUksT0FBTyxNQUFNLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDL0IsTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbEMsQ0FBQztRQUNELE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDO1FBQ3JDLElBQUksT0FBTyxDQUFDO1FBQ1osSUFBSSxXQUFXLElBQUksTUFBTSxJQUFJLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUM5QyxPQUFPLEdBQUksTUFBTSxDQUFDLFNBQXNCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RELENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxHQUFHLGlCQUFFLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUM5QyxDQUFDO1FBQ0QsSUFBSSxLQUFLLENBQUM7UUFDVixJQUFJLElBQUksQ0FBQztRQUNULElBQUksR0FBRyxZQUFZLE1BQU0sRUFBRSxDQUFDO1lBQzFCLEtBQUssR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzFCLElBQUksR0FBRyxRQUFRLENBQUM7UUFDbEIsQ0FBQzthQUFNLENBQUM7WUFDTixLQUFLLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUN0QyxJQUFJLEdBQUcsUUFBUSxDQUFDO1FBQ2xCLENBQUM7UUFDRCxJQUFJLFdBQVcsRUFBRSxDQUFDO1lBQ2hCLElBQUEscUJBQU0sRUFBQyxLQUFLLEVBQ1YsY0FBYyxJQUFJLEtBQUssR0FBRyxRQUFRLFFBQVEscUJBQXFCLE9BQU8sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDOUcsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFBLHFCQUFNLEVBQUMsQ0FBQyxLQUFLLEVBQ1gsUUFBUSxJQUFJLEtBQUssR0FBRyxRQUFRLFFBQVEscUJBQXFCLE9BQU8sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDeEcsQ0FBQztJQUNILENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILFNBQVMsQ0FBQyxHQUFvQixFQUFFLE1BQXdCO1FBQ3RELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILFlBQVksQ0FBQyxHQUFvQixFQUFFLE1BQXdCO1FBQ3pELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxLQUFLLENBQUMsdUJBQXVCO1FBQzNCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztRQUNwQyxLQUFLLENBQUMsNkJBQTZCLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25ELElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDO1lBQUUsT0FBTztRQUUvQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsRUFBRSxDQUFDO1FBQzNCLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN6QixLQUFLLENBQUMsOEJBQThCLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3BELElBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2pDLEtBQUssQ0FBQyxrQ0FBa0MsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDeEUsTUFBTSxJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztRQUN2QyxDQUFDO0lBQ0gsQ0FBQztJQUVELElBQUksZ0JBQWdCO1FBQ2xCLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxDQUFDO1lBQzVCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUM5QixDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQW1CLENBQUM7SUFDbEQsQ0FBQztJQUVELElBQUksZ0JBQWdCLENBQUMsS0FBSztRQUN4QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxLQUFLLENBQUM7SUFDakMsQ0FBQztDQUNGO0FBbmNELHNDQW1jQztBQUVELFNBQVMsV0FBVyxDQUFDLE9BQTRCLEVBQUUsR0FBVztJQUM1RCxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDckIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBQ0QsR0FBRyxHQUFHLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN4QixLQUFLLE1BQU0sU0FBUyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQ2hDLElBQUksR0FBRyxLQUFLLFNBQVMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDO1lBQ3BDLE9BQU8sT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzVCLENBQUM7SUFDSCxDQUFDO0lBQ0QsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDIn0=
@@ -1,3 +0,0 @@
1
- import { Context, Next } from '@eggjs/core';
2
- declare const _default: () => (ctx: Context, next: Next) => Promise<void>;
3
- export default _default;
@@ -1,101 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const node_util_1 = require("node:util");
4
- const debug = (0, node_util_1.debuglog)('@eggjs/mock/app/middleware/cluster_app_mock');
5
- exports.default = () => {
6
- return async function clusterAppMock(ctx, next) {
7
- // use originalUrl to make sure other middlewares can't change request url
8
- if (ctx.originalUrl !== '/__egg_mock_call_function') {
9
- return next();
10
- }
11
- const body = ctx.request.body;
12
- debug('%s %s, body: %j', ctx.method, ctx.url, body);
13
- const { method, property, args, needResult } = body;
14
- if (!method) {
15
- ctx.status = 422;
16
- ctx.body = {
17
- success: false,
18
- error: 'Missing method',
19
- };
20
- return;
21
- }
22
- if (args && !Array.isArray(args)) {
23
- ctx.status = 422;
24
- ctx.body = {
25
- success: false,
26
- error: 'args should be an Array instance',
27
- };
28
- return;
29
- }
30
- if (property) {
31
- // method: '__getter__' and property: 'config'
32
- if (method === '__getter__') {
33
- if (!ctx.app[property]) {
34
- debug('property %s not exists on app', property);
35
- ctx.status = 422;
36
- ctx.body = {
37
- success: false,
38
- error: `property "${property}" not exists on app`,
39
- };
40
- return;
41
- }
42
- ctx.body = { success: true, result: ctx.app[property] };
43
- return;
44
- }
45
- if (!ctx.app[property] || typeof ctx.app[property][method] !== 'function') {
46
- debug('property %s.%s not exists on app', property, method);
47
- ctx.status = 422;
48
- ctx.body = {
49
- success: false,
50
- error: `method "${method}" not exists on app.${property}`,
51
- };
52
- return;
53
- }
54
- }
55
- else {
56
- if (typeof ctx.app[method] !== 'function') {
57
- debug('method %s not exists on app', method);
58
- ctx.status = 422;
59
- ctx.body = {
60
- success: false,
61
- error: `method "${method}" not exists on app`,
62
- };
63
- return;
64
- }
65
- }
66
- debug('call %s with %j', method, args);
67
- for (let i = 0; i < args.length; i++) {
68
- const arg = args[i];
69
- if (arg && typeof arg === 'object') {
70
- // convert __egg_mock_type back to function
71
- if (arg.__egg_mock_type === 'function') {
72
- // eslint-disable-next-line
73
- args[i] = eval(`(function() { return ${arg.value} })()`);
74
- }
75
- else if (arg.__egg_mock_type === 'error') {
76
- const err = new Error(arg.message);
77
- err.name = arg.name;
78
- err.stack = arg.stack;
79
- for (const key in arg) {
80
- if (key !== 'name' && key !== 'message' && key !== 'stack' && key !== '__egg_mock_type') {
81
- err[key] = arg[key];
82
- }
83
- }
84
- args[i] = err;
85
- }
86
- }
87
- }
88
- const target = property ? ctx.app[property] : ctx.app;
89
- const fn = target[method];
90
- try {
91
- Promise.resolve(fn.call(target, ...args)).then(result => {
92
- ctx.body = needResult ? { success: true, result } : { success: true };
93
- });
94
- }
95
- catch (err) {
96
- ctx.status = 500;
97
- ctx.body = { success: false, error: err.message };
98
- }
99
- };
100
- };
101
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2x1c3Rlcl9hcHBfbW9jay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hcHAvbWlkZGxld2FyZS9jbHVzdGVyX2FwcF9tb2NrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEseUNBQXFDO0FBR3JDLE1BQU0sS0FBSyxHQUFHLElBQUEsb0JBQVEsRUFBQyw2Q0FBNkMsQ0FBQyxDQUFDO0FBRXRFLGtCQUFlLEdBQUcsRUFBRTtJQUNsQixPQUFPLEtBQUssVUFBVSxjQUFjLENBQUMsR0FBWSxFQUFFLElBQVU7UUFDM0QsMEVBQTBFO1FBQzFFLElBQUksR0FBRyxDQUFDLFdBQVcsS0FBSywyQkFBMkIsRUFBRSxDQUFDO1lBQ3BELE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDaEIsQ0FBQztRQUNELE1BQU0sSUFBSSxHQUFJLEdBQUcsQ0FBQyxPQUFlLENBQUMsSUFBSSxDQUFDO1FBQ3ZDLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxHQUFHLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDcEQsTUFBTSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxHQUFHLElBQUksQ0FBQztRQUNwRCxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDWixHQUFHLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQztZQUNqQixHQUFHLENBQUMsSUFBSSxHQUFHO2dCQUNULE9BQU8sRUFBRSxLQUFLO2dCQUNkLEtBQUssRUFBRSxnQkFBZ0I7YUFDeEIsQ0FBQztZQUNGLE9BQU87UUFDVCxDQUFDO1FBQ0QsSUFBSSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDakMsR0FBRyxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUM7WUFDakIsR0FBRyxDQUFDLElBQUksR0FBRztnQkFDVCxPQUFPLEVBQUUsS0FBSztn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
@@ -1,6 +0,0 @@
1
- import { ILifecycleBoot, EggCore } from '@eggjs/core';
2
- export default class Boot implements ILifecycleBoot {
3
- #private;
4
- constructor(app: EggCore);
5
- configWillLoad(): void;
6
- }
@@ -1,20 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- class Boot {
4
- #app;
5
- constructor(app) {
6
- this.#app = app;
7
- }
8
- configWillLoad() {
9
- // make sure clusterAppMock position before securities
10
- const index = this.#app.config.coreMiddleware.indexOf('securities');
11
- if (index >= 0) {
12
- this.#app.config.coreMiddleware.splice(index, 0, 'clusterAppMock');
13
- }
14
- else {
15
- this.#app.config.coreMiddleware.push('clusterAppMock');
16
- }
17
- }
18
- }
19
- exports.default = Boot;
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUVBLE1BQXFCLElBQUk7SUFDdkIsSUFBSSxDQUFVO0lBQ2QsWUFBWSxHQUFZO1FBQ3RCLElBQUksQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDO0lBQ2xCLENBQUM7SUFFRCxjQUFjO1FBQ1osc0RBQXNEO1FBQ3RELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDcEUsSUFBSSxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDZixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUNyRSxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUN6RCxDQUFDO0lBQ0gsQ0FBQztDQUNGO0FBZkQsdUJBZUMifQ==
@@ -1,5 +0,0 @@
1
- import { strict as assert } from 'node:assert';
2
- import mm, { mock, MockApplication } from './index.js';
3
- import { getBootstrapApp } from './lib/app_handler.js';
4
- declare const app: MockApplication;
5
- export { assert, getBootstrapApp, app, mm, mock, MockApplication, };