@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,80 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.mochaHooks = void 0;
4
- exports.mochaGlobalSetup = mochaGlobalSetup;
5
- exports.mochaGlobalTeardown = mochaGlobalTeardown;
6
- const node_util_1 = require("node:util");
7
- const node_module_1 = require("node:module");
8
- const index_js_1 = require("./index.js");
9
- const agent_handler_js_1 = require("./lib/agent_handler.js");
10
- const app_handler_js_1 = require("./lib/app_handler.js");
11
- const inject_context_js_1 = require("./lib/inject_context.js");
12
- const debug = (0, node_util_1.debuglog)('@eggjs/mock/register');
13
- async function mochaGlobalSetup() {
14
- debug('mochaGlobalSetup, agent.setupAgent() start');
15
- await (0, agent_handler_js_1.setupAgent)();
16
- debug('mochaGlobalSetup, agent.setupAgent() end');
17
- }
18
- async function mochaGlobalTeardown() {
19
- debug('mochaGlobalTeardown, agent.closeAgent() start');
20
- await (0, agent_handler_js_1.closeAgent)();
21
- debug('mochaGlobalTeardown, agent.closeAgent() end');
22
- }
23
- exports.mochaHooks = {
24
- async beforeAll() {
25
- const app = await (0, app_handler_js_1.getApp)();
26
- debug('mochaHooks.beforeAll call, _app: %s', app);
27
- if (app) {
28
- await app.ready();
29
- }
30
- },
31
- async afterEach() {
32
- const app = await (0, app_handler_js_1.getApp)();
33
- debug('mochaHooks.afterEach call, _app: %s', app);
34
- if (app) {
35
- await app.backgroundTasksFinished();
36
- }
37
- await index_js_1.mock.restore();
38
- },
39
- async afterAll() {
40
- // skip auto app close on parallel
41
- if (process.env.ENABLE_MOCHA_PARALLEL)
42
- return;
43
- const app = await (0, app_handler_js_1.getApp)();
44
- debug('mochaHooks.afterAll call, _app: %s', app);
45
- if (app) {
46
- await app.close();
47
- }
48
- },
49
- };
50
- /**
51
- * Find active node mocha instances.
52
- */
53
- function findNodeJSMocha() {
54
- let children;
55
- if (typeof require === 'function') {
56
- children = require.cache || {};
57
- }
58
- else {
59
- // FIXME: not work on ESM
60
- children = (0, node_module_1.createRequire)(process.cwd()).cache || {};
61
- debug('createRequire on esm');
62
- }
63
- return Object.keys(children)
64
- .filter(function (child) {
65
- const val = children[child].exports;
66
- return typeof val === 'function' && val.name === 'Mocha';
67
- })
68
- .map(function (child) {
69
- return children[child].exports;
70
- });
71
- }
72
- require("mocha");
73
- const modules = findNodeJSMocha();
74
- // console.error('modules length: %s', modules.length);
75
- for (const module of modules) {
76
- if (!module)
77
- continue;
78
- (0, inject_context_js_1.injectContext)(module);
79
- }
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcmVnaXN0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBU0EsNENBSUM7QUFFRCxrREFJQztBQW5CRCx5Q0FBcUM7QUFDckMsNkNBQTRDO0FBQzVDLHlDQUFrQztBQUNsQyw2REFBZ0U7QUFDaEUseURBQThDO0FBQzlDLCtEQUF3RDtBQUV4RCxNQUFNLEtBQUssR0FBRyxJQUFBLG9CQUFRLEVBQUMsc0JBQXNCLENBQUMsQ0FBQztBQUV4QyxLQUFLLFVBQVUsZ0JBQWdCO0lBQ3BDLEtBQUssQ0FBQyw0Q0FBNEMsQ0FBQyxDQUFDO0lBQ3BELE1BQU0sSUFBQSw2QkFBVSxHQUFFLENBQUM7SUFDbkIsS0FBSyxDQUFDLDBDQUEwQyxDQUFDLENBQUM7QUFDcEQsQ0FBQztBQUVNLEtBQUssVUFBVSxtQkFBbUI7SUFDdkMsS0FBSyxDQUFDLCtDQUErQyxDQUFDLENBQUM7SUFDdkQsTUFBTSxJQUFBLDZCQUFVLEdBQUUsQ0FBQztJQUNuQixLQUFLLENBQUMsNkNBQTZDLENBQUMsQ0FBQztBQUN2RCxDQUFDO0FBRVksUUFBQSxVQUFVLEdBQUc7SUFDeEIsS0FBSyxDQUFDLFNBQVM7UUFDYixNQUFNLEdBQUcsR0FBRyxNQUFNLElBQUEsdUJBQU0sR0FBRSxDQUFDO1FBQzNCLEtBQUssQ0FBQyxxQ0FBcUMsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUNsRCxJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ1IsTUFBTSxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDcEIsQ0FBQztJQUNILENBQUM7SUFDRCxLQUFLLENBQUMsU0FBUztRQUNiLE1BQU0sR0FBRyxHQUFHLE1BQU0sSUFBQSx1QkFBTSxHQUFFLENBQUM7UUFDM0IsS0FBSyxDQUFDLHFDQUFxQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ2xELElBQUksR0FBRyxFQUFFLENBQUM7WUFDUixNQUFNLEdBQUcsQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO1FBQ3RDLENBQUM7UUFDRCxNQUFNLGVBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBQ0QsS0FBSyxDQUFDLFFBQVE7UUFDWixrQ0FBa0M7UUFDbEMsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLHFCQUFxQjtZQUFFLE9BQU87UUFDOUMsTUFBTSxHQUFHLEdBQUcsTUFBTSxJQUFBLHVCQUFNLEdBQUUsQ0FBQztRQUMzQixLQUFLLENBQUMsb0NBQW9DLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDakQsSUFBSSxHQUFHLEVBQUUsQ0FBQztZQUNSLE1BQU0sR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3BCLENBQUM7SUFDSCxDQUFDO0NBQ0YsQ0FBQztBQUVGOztHQUVHO0FBQ0gsU0FBUyxlQUFlO0lBQ3RCLElBQUksUUFBYSxDQUFDO0lBQ2xCLElBQUksT0FBTyxPQUFPLEtBQUssVUFBVSxFQUFFLENBQUM7UUFDbEMsUUFBUSxHQUFHLE9BQU8sQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO0lBQ2pDLENBQUM7U0FBTSxDQUFDO1FBQ04seUJBQXlCO1FBQ3pCLFFBQVEsR0FBRyxJQUFBLDJCQUFhLEVBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQztRQUNwRCxLQUFLLENBQUMsc0JBQXNCLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztTQUN6QixNQUFNLENBQUMsVUFBUyxLQUFLO1FBQ3BCLE1BQU0sR0FBRyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUM7UUFDcEMsT0FBTyxPQUFPLEdBQUcsS0FBSyxVQUFVLElBQUksR0FBRyxDQUFDLElBQUksS0FBSyxPQUFPLENBQUM7SUFDM0QsQ0FBQyxDQUFDO1NBQ0QsR0FBRyxDQUFDLFVBQVMsS0FBSztRQUNqQixPQUFPLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUM7SUFDakMsQ0FBQyxDQUFDLENBQUM7QUFDUCxDQUFDO0FBRUQsaUJBQWU7QUFFZixNQUFNLE9BQU8sR0FBRyxlQUFlLEVBQUUsQ0FBQztBQUNsQyx1REFBdUQ7QUFFdkQsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUUsQ0FBQztJQUM3QixJQUFJLENBQUMsTUFBTTtRQUFFLFNBQVM7SUFDdEIsSUFBQSxpQ0FBYSxFQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ3hCLENBQUMifQ==
@@ -1,34 +0,0 @@
1
- import { mock, restore } from 'mm';
2
- import { EggCore } from '@eggjs/core';
3
- import { MockResultFunction, MockResultOptions, MockHttpClientMethod } from '../../lib/mock_httpclient.js';
4
- export default abstract class AgentUnittest extends EggCore {
5
- [key: string]: any;
6
- _mockHttpClient: MockHttpClientMethod;
7
- /**
8
- * mock httpclient
9
- * @alias mockHttpClient
10
- * @function App#mockHttpclient
11
- */
12
- mockHttpclient(mockUrl: string | RegExp, mockMethod: string | string[] | MockResultOptions | MockResultFunction, mockResult?: MockResultOptions | MockResultFunction | string): void;
13
- /**
14
- * mock httpclient
15
- * @function App#mockHttpClient
16
- */
17
- mockHttpClient(mockUrl: string | RegExp, mockMethod: string | string[] | MockResultOptions | MockResultFunction, mockResult?: MockResultOptions | MockResultFunction | string): void;
18
- /**
19
- * get mock httpclient agent
20
- * @function Agent#mockHttpclientAgent
21
- */
22
- mockAgent(): import("urllib").MockAgent<import("urllib").MockAgent.Options>;
23
- mockAgentRestore(): Promise<void>;
24
- /**
25
- * @see mm#restore
26
- * @function Agent#mockRestore
27
- */
28
- mockRestore: typeof restore;
29
- /**
30
- * @see mm
31
- * @function Agent#mm
32
- */
33
- mm: typeof mock;
34
- }
@@ -1,46 +0,0 @@
1
- import { mock, restore } from 'mm';
2
- import { EggCore } from '@eggjs/core';
3
- import { createMockHttpClient, } from '../../lib/mock_httpclient.js';
4
- import { getMockAgent, restoreMockAgent } from '../../lib/mock_agent.js';
5
- export default class AgentUnittest extends EggCore {
6
- _mockHttpClient;
7
- /**
8
- * mock httpclient
9
- * @alias mockHttpClient
10
- * @function App#mockHttpclient
11
- */
12
- mockHttpclient(mockUrl, mockMethod, mockResult) {
13
- return this.mockHttpClient(mockUrl, mockMethod, mockResult);
14
- }
15
- /**
16
- * mock httpclient
17
- * @function App#mockHttpClient
18
- */
19
- mockHttpClient(mockUrl, mockMethod, mockResult) {
20
- if (!this._mockHttpClient) {
21
- this._mockHttpClient = createMockHttpClient(this);
22
- }
23
- return this._mockHttpClient(mockUrl, mockMethod, mockResult);
24
- }
25
- /**
26
- * get mock httpclient agent
27
- * @function Agent#mockHttpclientAgent
28
- */
29
- mockAgent() {
30
- return getMockAgent(this);
31
- }
32
- async mockAgentRestore() {
33
- await restoreMockAgent();
34
- }
35
- /**
36
- * @see mm#restore
37
- * @function Agent#mockRestore
38
- */
39
- mockRestore = restore;
40
- /**
41
- * @see mm
42
- * @function Agent#mm
43
- */
44
- mm = mock;
45
- }
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWdlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBwL2V4dGVuZC9hZ2VudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxNQUFNLElBQUksQ0FBQztBQUNuQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3RDLE9BQU8sRUFDTCxvQkFBb0IsR0FHckIsTUFBTSw4QkFBOEIsQ0FBQztBQUN0QyxPQUFPLEVBQUUsWUFBWSxFQUFFLGdCQUFnQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFekUsTUFBTSxDQUFDLE9BQU8sT0FBZ0IsYUFBYyxTQUFRLE9BQU87SUFFekQsZUFBZSxDQUF1QjtJQUV0Qzs7OztPQUlHO0lBQ0gsY0FBYyxDQUFDLE9BQXdCLEVBQUUsVUFBc0UsRUFBRSxVQUE0RDtRQUMzSyxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsY0FBYyxDQUFDLE9BQXdCLEVBQUUsVUFBc0UsRUFBRSxVQUE0RDtRQUMzSyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQzFCLElBQUksQ0FBQyxlQUFlLEdBQUcsb0JBQW9CLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDcEQsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRDs7O09BR0c7SUFDSCxTQUFTO1FBQ1AsT0FBTyxZQUFZLENBQUMsSUFBVyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELEtBQUssQ0FBQyxnQkFBZ0I7UUFDcEIsTUFBTSxnQkFBZ0IsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxXQUFXLEdBQUcsT0FBTyxDQUFDO0lBRXRCOzs7T0FHRztJQUNILEVBQUUsR0FBRyxJQUFJLENBQUM7Q0FDWCJ9
@@ -1,172 +0,0 @@
1
- import { IncomingMessage } from 'node:http';
2
- import { mock } from 'mm';
3
- import type { HttpClient } from 'urllib';
4
- import { Logger } from 'egg-logger';
5
- import { EggCore, type EggCoreOptions, type Context as EggCoreContext } from '@eggjs/core';
6
- import type { Context as EggContext } from 'egg';
7
- import { MockResultFunction, MockResultOptions, MockHttpClientMethod } from '../../lib/mock_httpclient.js';
8
- import { EggTestRequest } from '../../lib/supertest.js';
9
- import { MockOptions } from '../../lib/types.js';
10
- export interface MockContextOptions {
11
- /**
12
- * mock ctxStorage or not, default is `true`
13
- */
14
- mockCtxStorage?: boolean;
15
- /**
16
- * reuse ctxStorage or not, default is `true`
17
- */
18
- reuseCtxStorage?: boolean;
19
- }
20
- export interface MockContextData {
21
- headers?: Record<string, string | string[]>;
22
- [key: string]: any;
23
- }
24
- export interface MockContext extends EggContext, EggCoreContext {
25
- service: any;
26
- }
27
- export default abstract class ApplicationUnittest extends EggCore {
28
- [key: string]: any;
29
- options: MockOptions & EggCoreOptions;
30
- _mockHttpClient?: MockHttpClientMethod;
31
- httpclient: HttpClient;
32
- /**
33
- * mock Context
34
- * @function App#mockContext
35
- * @param {Object} data - ctx data
36
- * @param {Object} [options] - mock ctx options
37
- * @example
38
- * ```js
39
- * const ctx = app.mockContext({
40
- * user: {
41
- * name: 'Jason'
42
- * }
43
- * });
44
- * console.log(ctx.user.name); // Jason
45
- *
46
- * // controller
47
- * module.exports = function*() {
48
- * this.body = this.user.name;
49
- * };
50
- * ```
51
- */
52
- mockContext(data?: MockContextData, options?: MockContextOptions): MockContext;
53
- mockContextScope(fn: (ctx?: MockContext) => Promise<any>, data?: MockContextData): Promise<any>;
54
- /**
55
- * mock cookie session
56
- * @function App#mockSession
57
- * @param {Object} data - session object
58
- */
59
- mockSession(data: any): this;
60
- /**
61
- * Mock service
62
- * @function App#mockService
63
- * @param {String} service - name
64
- * @param {String} methodName - method
65
- * @param {Object|Function|Error} fn - mock you data
66
- */
67
- mockService(service: string | any, methodName: string, fn: any): this;
68
- /**
69
- * mock service that return error
70
- * @function App#mockServiceError
71
- * @param {String} service - name
72
- * @param {String} methodName - method
73
- * @param {Error} [err] - error information
74
- */
75
- mockServiceError(service: string | any, methodName: string, err?: string | Error): this;
76
- _mockFn(obj: any, name: string, data: any): void;
77
- /**
78
- * mock request
79
- * @function App#mockRequest
80
- * @param {Request} req - mock request
81
- */
82
- mockRequest(req: MockContextData): IncomingMessage;
83
- /**
84
- * mock cookies
85
- * @function App#mockCookies
86
- */
87
- mockCookies(cookies: Record<string, string | string[]>): this;
88
- /**
89
- * mock header
90
- * @function App#mockHeaders
91
- */
92
- mockHeaders(headers: Record<string, string | string[]>): this;
93
- /**
94
- * mock csrf
95
- * @function App#mockCsrf
96
- * @since 1.11
97
- */
98
- mockCsrf(): this;
99
- /**
100
- * mock httpclient
101
- * @alias mockHttpClient
102
- * @function App#mockHttpclient
103
- */
104
- mockHttpclient(mockUrl: string | RegExp, mockMethod: string | string[] | MockResultOptions | MockResultFunction, mockResult?: MockResultOptions | MockResultFunction | string): this;
105
- /**
106
- * mock httpclient
107
- * @function App#mockHttpClient
108
- */
109
- mockHttpClient(mockUrl: string | RegExp, mockMethod: string | string[] | MockResultOptions | MockResultFunction, mockResult?: MockResultOptions | MockResultFunction | string): this;
110
- /**
111
- * @deprecated Please use app.mockHttpClient instead of app.mockUrllib
112
- */
113
- mockUrllib(mockUrl: string | RegExp, mockMethod: string | string[] | MockResultOptions | MockResultFunction, mockResult?: MockResultOptions | MockResultFunction | string): this;
114
- /**
115
- * get mock httpclient agent
116
- * @function App#mockHttpclientAgent
117
- */
118
- mockAgent(): import("urllib").MockAgent<import("urllib").MockAgent.Options>;
119
- mockAgentRestore(): Promise<void>;
120
- /**
121
- * @see mm#restore
122
- * @function App#mockRestore
123
- */
124
- mockRestore(): Promise<void>;
125
- /**
126
- * @see mm
127
- * @function App#mm
128
- */
129
- get mm(): typeof mock;
130
- /**
131
- * override loadAgent
132
- * @function App#loadAgent
133
- */
134
- loadAgent(): void;
135
- /**
136
- * mock serverEnv
137
- * @function App#mockEnv
138
- * @param {String} env - serverEnv
139
- */
140
- mockEnv(env: string): this;
141
- /**
142
- * http request helper
143
- * @function App#httpRequest
144
- * @return {SupertestRequest} req - supertest request
145
- * @see https://github.com/visionmedia/supertest
146
- */
147
- httpRequest(): EggTestRequest;
148
- /**
149
- * collection logger message, then can be use on `expectLog()`
150
- * @param {String|Logger} [logger] - logger instance, default is `app.logger`
151
- * @function App#mockLog
152
- */
153
- mockLog(logger?: string | Logger): void;
154
- __checkExpectLog(expectOrNot: boolean, str: string | RegExp, logger?: string | Logger): void;
155
- /**
156
- * expect str/regexp in the logger, if your server disk is slow, please call `mockLog()` first.
157
- * @param {String|RegExp} str - test str or regexp
158
- * @param {String|Logger} [logger] - logger instance, default is `ctx.logger`
159
- * @function App#expectLog
160
- */
161
- expectLog(str: string | RegExp, logger?: string | Logger): void;
162
- /**
163
- * not expect str/regexp in the logger, if your server disk is slow, please call `mockLog()` first.
164
- * @param {String|RegExp} str - test str or regexp
165
- * @param {String|Logger} [logger] - logger instance, default is `ctx.logger`
166
- * @function App#notExpectLog
167
- */
168
- notExpectLog(str: string | RegExp, logger?: string | Logger): void;
169
- backgroundTasksFinished(): Promise<void>;
170
- get _backgroundTasks(): Promise<any>[];
171
- set _backgroundTasks(tasks: Promise<any>[]);
172
- }