@eggjs/mock 7.0.0-beta.34 → 7.0.0-beta.36

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 (63) hide show
  1. package/dist/_virtual/rolldown_runtime.js +7 -0
  2. package/dist/app/extend/agent.d.ts +38 -34
  3. package/dist/app/extend/agent.js +48 -46
  4. package/dist/app/extend/application.d.ts +171 -167
  5. package/dist/app/extend/application.js +382 -442
  6. package/dist/app/middleware/cluster_app_mock.d.ts +5 -2
  7. package/dist/app/middleware/cluster_app_mock.js +95 -100
  8. package/dist/app.d.ts +9 -5
  9. package/dist/app.js +17 -18
  10. package/dist/bootstrap.d.ts +9 -5
  11. package/dist/bootstrap.js +11 -12
  12. package/dist/index.d.ts +20 -17
  13. package/dist/index.js +39 -78
  14. package/dist/inject_mocha.d.ts +1 -1
  15. package/dist/inject_mocha.js +27 -28
  16. package/dist/lib/agent_handler.d.ts +7 -3
  17. package/dist/lib/agent_handler.js +22 -20
  18. package/dist/lib/app.d.ts +7 -3
  19. package/dist/lib/app.js +246 -287
  20. package/dist/lib/app_handler.d.ts +9 -5
  21. package/dist/lib/app_handler.js +48 -61
  22. package/dist/lib/cluster.d.ts +122 -118
  23. package/dist/lib/cluster.js +278 -335
  24. package/dist/lib/context.d.ts +4 -1
  25. package/dist/lib/context.js +10 -11
  26. package/dist/lib/format_options.d.ts +9 -4
  27. package/dist/lib/format_options.js +60 -88
  28. package/dist/lib/inject_context.d.ts +8 -5
  29. package/dist/lib/inject_context.js +103 -123
  30. package/dist/lib/mock_agent.d.ts +8 -4
  31. package/dist/lib/mock_agent.js +42 -42
  32. package/dist/lib/mock_custom_loader.d.ts +4 -1
  33. package/dist/lib/mock_custom_loader.js +34 -33
  34. package/dist/lib/mock_http_server.d.ts +6 -2
  35. package/dist/lib/mock_http_server.js +16 -17
  36. package/dist/lib/mock_httpclient.d.ts +38 -34
  37. package/dist/lib/mock_httpclient.js +106 -142
  38. package/dist/lib/parallel/agent.d.ts +22 -18
  39. package/dist/lib/parallel/agent.js +106 -112
  40. package/dist/lib/parallel/app.d.ts +23 -19
  41. package/dist/lib/parallel/app.js +93 -106
  42. package/dist/lib/parallel/util.d.ts +5 -2
  43. package/dist/lib/parallel/util.js +56 -63
  44. package/dist/lib/prerequire.d.ts +1 -1
  45. package/dist/lib/prerequire.js +1 -25
  46. package/dist/lib/request_call_function.d.ts +1 -1
  47. package/dist/lib/request_call_function.js +34 -47
  48. package/dist/lib/restore.d.ts +4 -1
  49. package/dist/lib/restore.js +14 -11
  50. package/dist/lib/start-cluster.d.ts +1 -2
  51. package/dist/lib/start-cluster.js +15 -14
  52. package/dist/lib/supertest.d.ts +14 -9
  53. package/dist/lib/supertest.js +32 -36
  54. package/dist/lib/tmp/empty.d.ts +1 -1
  55. package/dist/lib/tmp/empty.js +1 -2
  56. package/dist/lib/types.d.ts +71 -67
  57. package/dist/lib/types.js +1 -2
  58. package/dist/lib/utils.d.ts +11 -8
  59. package/dist/lib/utils.js +34 -63
  60. package/dist/register.d.ts +11 -7
  61. package/dist/register.js +36 -40
  62. package/dist/typings/index.d.ts +1 -0
  63. package/package.json +36 -39
@@ -1 +1 @@
1
- export {};
1
+ export { };
@@ -1,25 +1 @@
1
- // const debug = require('util').debuglog('egg-mock/prerequire');
2
- // const path = require('path');
3
- // const { existsSync } = require('fs');
4
- // const globby = require('globby');
5
- export {};
6
- // const cwd = process.cwd();
7
- // const dirs = [];
8
- // if (existsSync(path.join(cwd, 'app'))) {
9
- // dirs.push('app/**/*.js');
10
- // }
11
- // // avoid Error: ENOENT: no such file or directory, scandir
12
- // if (existsSync(path.join(cwd, 'config'))) {
13
- // dirs.push('config/**/*.js');
14
- // }
15
- // const files = globby.sync(dirs, { cwd });
16
- // for (const file of files) {
17
- // const filepath = path.join(cwd, file);
18
- // try {
19
- // debug('%s prerequire %s', process.pid, filepath);
20
- // require(filepath);
21
- // } catch (err) {
22
- // debug('prerequire error %s', err.message);
23
- // }
24
- // }
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlcmVxdWlyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvcHJlcmVxdWlyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpRUFBaUU7QUFDakUsZ0NBQWdDO0FBQ2hDLHdDQUF3QztBQUN4QyxvQ0FBb0M7O0FBRXBDLDZCQUE2QjtBQUM3QixtQkFBbUI7QUFDbkIsMkNBQTJDO0FBQzNDLDhCQUE4QjtBQUM5QixJQUFJO0FBQ0osNkRBQTZEO0FBQzdELDhDQUE4QztBQUM5QyxpQ0FBaUM7QUFDakMsSUFBSTtBQUNKLDRDQUE0QztBQUU1Qyw4QkFBOEI7QUFDOUIsMkNBQTJDO0FBQzNDLFVBQVU7QUFDVix3REFBd0Q7QUFDeEQseUJBQXlCO0FBQ3pCLG9CQUFvQjtBQUNwQixpREFBaUQ7QUFDakQsTUFBTTtBQUNOLElBQUkifQ==
1
+ export { };
@@ -1 +1 @@
1
- export {};
1
+ export { };
@@ -1,50 +1,37 @@
1
- import httpClient from 'urllib';
1
+ import httpClient from "urllib";
2
+
3
+ //#region src/lib/request_call_function.ts
2
4
  const { port, method, args, property, needResult } = JSON.parse(process.argv[2]);
3
5
  const url = `http://127.0.0.1:${port}/__egg_mock_call_function`;
4
- httpClient
5
- .request(url, {
6
- method: 'POST',
7
- data: {
8
- method,
9
- args,
10
- property,
11
- needResult,
12
- },
13
- contentType: 'json',
14
- dataType: 'json',
15
- })
16
- .then(({ data }) => {
17
- if (!data.success) {
18
- // console.log('POST %s error, method: %s, args: %j, result data: %j',
19
- // url, method, args, data);
20
- if (data.error) {
21
- console.error(data.error);
22
- }
23
- else if (data.message) {
24
- const err = new Error(data.message);
25
- err.stack = data.stack;
26
- console.error(err);
27
- }
28
- process.exit(2);
29
- }
30
- if (data.result) {
31
- console.log('%j', data.result);
32
- }
33
- process.exit(0);
34
- })
35
- .catch((err) => {
36
- // ignore ECONNREFUSED error on mockRestore
37
- if (method === 'mockRestore' && err.message.includes('ECONNREFUSED')) {
38
- process.exit(0);
39
- }
40
- console.error('POST %s error, method: %s, args: %j', url, method, args);
41
- console.error(err.stack);
42
- // ignore all error on mockRestore
43
- if (method === 'mockRestore') {
44
- process.exit(0);
45
- }
46
- else {
47
- process.exit(1);
48
- }
6
+ httpClient.request(url, {
7
+ method: "POST",
8
+ data: {
9
+ method,
10
+ args,
11
+ property,
12
+ needResult
13
+ },
14
+ contentType: "json",
15
+ dataType: "json"
16
+ }).then(({ data }) => {
17
+ if (!data.success) {
18
+ if (data.error) console.error(data.error);
19
+ else if (data.message) {
20
+ const err = new Error(data.message);
21
+ err.stack = data.stack;
22
+ console.error(err);
23
+ }
24
+ process.exit(2);
25
+ }
26
+ if (data.result) console.log("%j", data.result);
27
+ process.exit(0);
28
+ }).catch((err) => {
29
+ if (method === "mockRestore" && err.message.includes("ECONNREFUSED")) process.exit(0);
30
+ console.error("POST %s error, method: %s, args: %j", url, method, args);
31
+ console.error(err.stack);
32
+ if (method === "mockRestore") process.exit(0);
33
+ else process.exit(1);
49
34
  });
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdF9jYWxsX2Z1bmN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xpYi9yZXF1ZXN0X2NhbGxfZnVuY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxVQUFVLE1BQU0sUUFBUSxDQUFDO0FBRWhDLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDakYsTUFBTSxHQUFHLEdBQUcsb0JBQW9CLElBQUksMkJBQTJCLENBQUM7QUFFaEUsVUFBVTtLQUNQLE9BQU8sQ0FBQyxHQUFHLEVBQUU7SUFDWixNQUFNLEVBQUUsTUFBTTtJQUNkLElBQUksRUFBRTtRQUNKLE1BQU07UUFDTixJQUFJO1FBQ0osUUFBUTtRQUNSLFVBQVU7S0FDWDtJQUNELFdBQVcsRUFBRSxNQUFNO0lBQ25CLFFBQVEsRUFBRSxNQUFNO0NBQ2pCLENBQUM7S0FDRCxJQUFJLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUU7SUFDakIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNsQixzRUFBc0U7UUFDdEUsOEJBQThCO1FBQzlCLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDNUIsQ0FBQzthQUFNLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3hCLE1BQU0sR0FBRyxHQUFHLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNwQyxHQUFHLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7WUFDdkIsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNyQixDQUFDO1FBQ0QsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNsQixDQUFDO0lBRUQsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDaEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFDRCxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ2xCLENBQUMsQ0FBQztLQUNELEtBQUssQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO0lBQ2IsMkNBQTJDO0lBQzNDLElBQUksTUFBTSxLQUFLLGFBQWEsSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDO1FBQ3JFLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbEIsQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUFLLENBQUMscUNBQXFDLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN4RSxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUV6QixrQ0FBa0M7SUFDbEMsSUFBSSxNQUFNLEtBQUssYUFBYSxFQUFFLENBQUM7UUFDN0IsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNsQixDQUFDO1NBQU0sQ0FBQztRQUNOLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbEIsQ0FBQztBQUNILENBQUMsQ0FBQyxDQUFDIn0=
35
+
36
+ //#endregion
37
+ export { };
@@ -1 +1,4 @@
1
- export declare function restore(): Promise<void>;
1
+ //#region src/lib/restore.d.ts
2
+ declare function restore(): Promise<void>;
3
+ //#endregion
4
+ export { restore };
@@ -1,13 +1,16 @@
1
- import { debuglog } from 'node:util';
2
- import { restore as mmRestore } from 'mm';
3
1
  import { restoreMockAgent } from "./mock_agent.js";
4
- import { restore as clusterRestore } from "./cluster.js";
5
- const debug = debuglog('egg/mock/lib/restore');
6
- export async function restore() {
7
- // keep mm.restore execute in the current event loop
8
- mmRestore();
9
- await clusterRestore();
10
- await restoreMockAgent();
11
- debug('restore all');
2
+ import { restore as restore$2 } from "./cluster.js";
3
+ import { restore as restore$1 } from "mm";
4
+ import { debuglog } from "node:util";
5
+
6
+ //#region src/lib/restore.ts
7
+ const debug = debuglog("egg/mock/lib/restore");
8
+ async function restore() {
9
+ restore$1();
10
+ await restore$2();
11
+ await restoreMockAgent();
12
+ debug("restore all");
12
13
  }
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvcmVzdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRXJDLE9BQU8sRUFBRSxPQUFPLElBQUksU0FBUyxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxPQUFPLElBQUksY0FBYyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRXpELE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0FBRS9DLE1BQU0sQ0FBQyxLQUFLLFVBQVUsT0FBTztJQUMzQixvREFBb0Q7SUFDcEQsU0FBUyxFQUFFLENBQUM7SUFDWixNQUFNLGNBQWMsRUFBRSxDQUFDO0lBQ3ZCLE1BQU0sZ0JBQWdCLEVBQUUsQ0FBQztJQUN6QixLQUFLLENBQUMsYUFBYSxDQUFDLENBQUM7QUFDdkIsQ0FBQyJ9
14
+
15
+ //#endregion
16
+ export { restore };
@@ -1,2 +1 @@
1
- #!/usr/bin/env node
2
- export {};
1
+ export { };
@@ -1,18 +1,19 @@
1
1
  #!/usr/bin/env node
2
- import assert from 'node:assert';
3
- import { debuglog } from 'node:util';
4
- import { importModule } from '@eggjs/utils';
5
- import { isAsyncFunction } from 'is-type-of';
6
- const debug = debuglog('egg/mock/lib/start-cluster');
7
- // if (process.env.EGG_BIN_PREREQUIRE) {
8
- // require('./prerequire');
9
- // }
2
+ import assert from "node:assert";
3
+ import { debuglog } from "node:util";
4
+ import { importModule } from "@eggjs/utils";
5
+ import { isAsyncFunction } from "is-type-of";
6
+
7
+ //#region src/lib/start-cluster.ts
8
+ const debug = debuglog("egg/mock/lib/start-cluster");
10
9
  async function main() {
11
- const options = JSON.parse(process.argv[2]);
12
- debug('startCluster with options: %o', options);
13
- const { startCluster } = await importModule(options.framework);
14
- assert(isAsyncFunction(startCluster), `framework(${options.framework}) should export startCluster as an async function`);
15
- await startCluster(options);
10
+ const options = JSON.parse(process.argv[2]);
11
+ debug("startCluster with options: %o", options);
12
+ const { startCluster } = await importModule(options.framework);
13
+ assert(isAsyncFunction(startCluster), `framework(${options.framework}) should export startCluster as an async function`);
14
+ await startCluster(options);
16
15
  }
17
16
  main();
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhcnQtY2x1c3Rlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvc3RhcnQtY2x1c3Rlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBRUEsT0FBTyxNQUFNLE1BQU0sYUFBYSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFckMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUM1QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRTdDLE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO0FBRXJELHdDQUF3QztBQUN4Qyw2QkFBNkI7QUFDN0IsSUFBSTtBQUVKLEtBQUssVUFBVSxJQUFJO0lBQ2pCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzVDLEtBQUssQ0FBQywrQkFBK0IsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNoRCxNQUFNLEVBQUUsWUFBWSxFQUFFLEdBQUcsTUFBTSxZQUFZLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQy9ELE1BQU0sQ0FDSixlQUFlLENBQUMsWUFBWSxDQUFDLEVBQzdCLGFBQWEsT0FBTyxDQUFDLFNBQVMsbURBQW1ELENBQ2xGLENBQUM7SUFDRixNQUFNLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUM5QixDQUFDO0FBRUQsSUFBSSxFQUFFLENBQUMifQ==
17
+
18
+ //#endregion
19
+ export { };
@@ -1,11 +1,16 @@
1
- import { Request, Test } from '@eggjs/supertest';
1
+ import { Request, Test } from "@eggjs/supertest";
2
+
3
+ //#region src/lib/supertest.d.ts
4
+
2
5
  /**
3
- * Test against the given `app`,
4
- * returning a new `Test`.
5
- */
6
- export declare class EggTestRequest extends Request {
7
- #private;
8
- constructor(app: any);
9
- protected _testRequest(method: string, url: string): Test;
6
+ * Test against the given `app`,
7
+ * returning a new `Test`.
8
+ */
9
+ declare class EggTestRequest extends Request {
10
+ #private;
11
+ constructor(app: any);
12
+ protected _testRequest(method: string, url: string): Test;
10
13
  }
11
- export declare function request(app: any): EggTestRequest;
14
+ declare function request(app: any): EggTestRequest;
15
+ //#endregion
16
+ export { EggTestRequest, request };
@@ -1,40 +1,36 @@
1
- import path from 'node:path';
2
- import { readJSONSync } from 'utility';
3
- import { Request, Test } from '@eggjs/supertest';
4
1
  import { createServer } from "./mock_http_server.js";
5
2
  import { getSourceDirname } from "./utils.js";
6
- // patch from https://github.com/visionmedia/supertest/blob/199506d8dbfe0bb1434fc07c38cdcd1ab4c7c926/index.js#L19
7
- let pkgVersion = '';
3
+ import path from "node:path";
4
+ import { readJSONSync } from "utility";
5
+ import { Request, Test } from "@eggjs/supertest";
6
+
7
+ //#region src/lib/supertest.ts
8
+ let pkgVersion = "";
8
9
  /**
9
- * Test against the given `app`,
10
- * returning a new `Test`.
11
- */
12
- export class EggTestRequest extends Request {
13
- #app;
14
- constructor(app) {
15
- super(createServer(app));
16
- this.#app = app;
17
- }
18
- _testRequest(method, url) {
19
- // support pathFor(url)
20
- if (url[0] !== '/') {
21
- const realUrl = this.#app.router.pathFor(url);
22
- if (!realUrl) {
23
- throw new Error(`Can't find router:${url}, please check your 'app/router.js'`);
24
- }
25
- url = realUrl;
26
- }
27
- const test = super._testRequest(method, url);
28
- if (!pkgVersion) {
29
- const pkgFile = path.join(getSourceDirname(), '../package.json');
30
- const pkg = readJSONSync(pkgFile);
31
- pkgVersion = pkg.version;
32
- }
33
- test.set('User-Agent', `@eggjs/mock/${pkgVersion} Node.js/${process.version}`);
34
- return test;
35
- }
10
+ * Test against the given `app`,
11
+ * returning a new `Test`.
12
+ */
13
+ var EggTestRequest = class extends Request {
14
+ #app;
15
+ constructor(app) {
16
+ super(createServer(app));
17
+ this.#app = app;
18
+ }
19
+ _testRequest(method, url) {
20
+ if (url[0] !== "/") {
21
+ const realUrl = this.#app.router.pathFor(url);
22
+ if (!realUrl) throw new Error(`Can't find router:${url}, please check your 'app/router.js'`);
23
+ url = realUrl;
24
+ }
25
+ const test = super._testRequest(method, url);
26
+ if (!pkgVersion) pkgVersion = readJSONSync(path.join(getSourceDirname(), "../package.json")).version;
27
+ test.set("User-Agent", `@eggjs/mock/${pkgVersion} Node.js/${process.version}`);
28
+ return test;
29
+ }
30
+ };
31
+ function request(app) {
32
+ return new EggTestRequest(app);
36
33
  }
37
- export function request(app) {
38
- return new EggTestRequest(app);
39
- }
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VwZXJ0ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xpYi9zdXBlcnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxJQUFJLE1BQU0sV0FBVyxDQUFDO0FBRTdCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDdkMsT0FBTyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVqRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRTlDLGlIQUFpSDtBQUVqSCxJQUFJLFVBQVUsR0FBRyxFQUFFLENBQUM7QUFFcEI7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLGNBQWUsU0FBUSxPQUFPO0lBQ3pDLElBQUksQ0FBTTtJQUVWLFlBQVksR0FBUTtRQUNsQixLQUFLLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDekIsSUFBSSxDQUFDLElBQUksR0FBRyxHQUFHLENBQUM7SUFDbEIsQ0FBQztJQUVTLFlBQVksQ0FBQyxNQUFjLEVBQUUsR0FBVztRQUNoRCx1QkFBdUI7UUFDdkIsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7WUFDbkIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzlDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDYixNQUFNLElBQUksS0FBSyxDQUFDLHFCQUFxQixHQUFHLHFDQUFxQyxDQUFDLENBQUM7WUFDakYsQ0FBQztZQUNELEdBQUcsR0FBRyxPQUFPLENBQUM7UUFDaEIsQ0FBQztRQUNELE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQzdDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNoQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztZQUNqRSxNQUFNLEdBQUcsR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbEMsVUFBVSxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUM7UUFDM0IsQ0FBQztRQUNELElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLGVBQWUsVUFBVSxZQUFZLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQy9FLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztDQUNGO0FBRUQsTUFBTSxVQUFVLE9BQU8sQ0FBQyxHQUFRO0lBQzlCLE9BQU8sSUFBSSxjQUFjLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDakMsQ0FBQyJ9
34
+
35
+ //#endregion
36
+ export { EggTestRequest, request };
@@ -1 +1 @@
1
- export {};
1
+ export { };
@@ -1,2 +1 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3RtcC9lbXB0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
1
+ export { };
@@ -1,72 +1,76 @@
1
- export interface MockOptions {
2
- /**
3
- * The mode of the application
4
- */
5
- mode?: 'cluster' | 'single';
6
- /**
7
- * The directory of the application
8
- */
9
- baseDir?: string;
10
- /**
11
- * Custom you plugins
12
- */
13
- plugins?: any;
14
- /**
15
- * The directory of the egg framework
16
- *
17
- * Set to `true` to use the current directory as framework directory
18
- */
19
- framework?: string | boolean;
20
- /**
21
- * current test on plugin
22
- */
23
- plugin?: boolean;
24
- /**
25
- * @deprecated please use `framework` instead
26
- */
27
- customEgg?: string | boolean;
28
- /**
29
- * Cache application based on baseDir
30
- */
31
- cache?: boolean;
32
- /**
33
- * Switch on process coverage, but it'll be slower
34
- */
35
- coverage?: boolean;
36
- /**
37
- * Remove $baseDir/logs and $baseDir/run before start, default is `true`
38
- */
39
- clean?: boolean;
40
- /**
41
- * default options.mockCtxStorage value on each mockContext
42
- */
43
- mockCtxStorage?: boolean;
44
- beforeInit?: (app: any) => Promise<void>;
1
+ import { MockHttpClientMethod, MockResponseCallbackOptions, MockResultFunction, MockResultOptions, ResultObject } from "./mock_httpclient.js";
2
+ import { MockAgent } from "urllib";
3
+
4
+ //#region src/lib/types.d.ts
5
+ interface MockOptions {
6
+ /**
7
+ * The mode of the application
8
+ */
9
+ mode?: "cluster" | "single";
10
+ /**
11
+ * The directory of the application
12
+ */
13
+ baseDir?: string;
14
+ /**
15
+ * Custom you plugins
16
+ */
17
+ plugins?: any;
18
+ /**
19
+ * The directory of the egg framework
20
+ *
21
+ * Set to `true` to use the current directory as framework directory
22
+ */
23
+ framework?: string | boolean;
24
+ /**
25
+ * current test on plugin
26
+ */
27
+ plugin?: boolean;
28
+ /**
29
+ * @deprecated please use `framework` instead
30
+ */
31
+ customEgg?: string | boolean;
32
+ /**
33
+ * Cache application based on baseDir
34
+ */
35
+ cache?: boolean;
36
+ /**
37
+ * Switch on process coverage, but it'll be slower
38
+ */
39
+ coverage?: boolean;
40
+ /**
41
+ * Remove $baseDir/logs and $baseDir/run before start, default is `true`
42
+ */
43
+ clean?: boolean;
44
+ /**
45
+ * default options.mockCtxStorage value on each mockContext
46
+ */
47
+ mockCtxStorage?: boolean;
48
+ beforeInit?: (app: any) => Promise<void>;
45
49
  }
46
- export interface MockClusterOptions extends MockOptions {
47
- workers?: number | string;
48
- cache?: boolean;
49
- port?: number;
50
- /**
51
- * opt pass to coffee, such as { execArgv: ['--debug'] }
52
- */
53
- opt?: object;
54
- startMode?: 'process' | 'worker_threads';
50
+ interface MockClusterOptions extends MockOptions {
51
+ workers?: number | string;
52
+ cache?: boolean;
53
+ port?: number;
54
+ /**
55
+ * opt pass to coffee, such as { execArgv: ['--debug'] }
56
+ */
57
+ opt?: object;
58
+ startMode?: "process" | "worker_threads";
55
59
  }
56
60
  /**
57
- * @deprecated please use MockOptions instead
58
- * keep this for compatible
59
- */
60
- export type MockOption = MockOptions;
61
- export interface MockApplicationOptions extends MockOptions {
62
- baseDir: string;
63
- framework: string;
64
- clusterPort?: number;
61
+ * @deprecated please use MockOptions instead
62
+ * keep this for compatible
63
+ */
64
+ type MockOption = MockOptions;
65
+ interface MockApplicationOptions extends MockOptions {
66
+ baseDir: string;
67
+ framework: string;
68
+ clusterPort?: number;
65
69
  }
66
- export interface MockClusterApplicationOptions extends MockClusterOptions {
67
- baseDir: string;
68
- framework: string;
69
- port: number;
70
+ interface MockClusterApplicationOptions extends MockClusterOptions {
71
+ baseDir: string;
72
+ framework: string;
73
+ port: number;
70
74
  }
71
- export type { MockResultOptions, ResultObject, MockResponseCallbackOptions, MockResultFunction, MockHttpClientMethod, } from './mock_httpclient.js';
72
- export type { MockAgent } from 'urllib';
75
+ //#endregion
76
+ export { type MockAgent, MockApplicationOptions, MockClusterApplicationOptions, MockClusterOptions, type MockHttpClientMethod, MockOption, MockOptions, type MockResponseCallbackOptions, type MockResultFunction, type MockResultOptions, type ResultObject };
package/dist/lib/types.js CHANGED
@@ -1,2 +1 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbGliL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
1
+ export { };
@@ -1,9 +1,12 @@
1
- export declare function getSourceDirname(): string;
2
- export declare function sleep(delay: number): Promise<void>;
3
- export declare function rimraf(filepath: string): Promise<void>;
4
- export declare function rimrafSync(filepath: string): void;
5
- export declare function getProperty(target: any, prop: PropertyKey): any;
6
- export declare function getEggOptions(): {
7
- baseDir: string;
8
- framework?: string;
1
+ //#region src/lib/utils.d.ts
2
+ declare function getSourceDirname(): string;
3
+ declare function sleep(delay: number): Promise<void>;
4
+ declare function rimraf(filepath: string): Promise<void>;
5
+ declare function rimrafSync(filepath: string): void;
6
+ declare function getProperty(target: any, prop: PropertyKey): any;
7
+ declare function getEggOptions(): {
8
+ baseDir: string;
9
+ framework?: string;
9
10
  };
11
+ //#endregion
12
+ export { getEggOptions, getProperty, getSourceDirname, rimraf, rimrafSync, sleep };
package/dist/lib/utils.js CHANGED
@@ -1,69 +1,40 @@
1
- import { rm } from 'node:fs/promises';
2
- import { rmSync } from 'node:fs';
3
- import path from 'node:path';
4
- import { fileURLToPath } from 'node:url';
5
- import { scheduler } from 'node:timers/promises';
6
- export function getSourceDirname() {
7
- if (typeof __dirname !== 'undefined') {
8
- return path.dirname(__dirname);
9
- }
10
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
11
- // @ts-ignore
12
- return path.dirname(path.dirname(fileURLToPath(import.meta.url)));
1
+ import path from "node:path";
2
+ import { rmSync } from "node:fs";
3
+ import { rm } from "node:fs/promises";
4
+ import { scheduler } from "node:timers/promises";
5
+ import { fileURLToPath } from "node:url";
6
+
7
+ //#region src/lib/utils.ts
8
+ function getSourceDirname() {
9
+ if (typeof __dirname !== "undefined") return path.dirname(__dirname);
10
+ return path.dirname(path.dirname(fileURLToPath(import.meta.url)));
13
11
  }
14
- export async function sleep(delay) {
15
- await scheduler.wait(delay);
12
+ async function sleep(delay) {
13
+ await scheduler.wait(delay);
16
14
  }
17
- export async function rimraf(filepath) {
18
- await rm(filepath, { force: true, recursive: true });
15
+ async function rimraf(filepath) {
16
+ await rm(filepath, {
17
+ force: true,
18
+ recursive: true
19
+ });
19
20
  }
20
- export function rimrafSync(filepath) {
21
- rmSync(filepath, { force: true, recursive: true });
21
+ function rimrafSync(filepath) {
22
+ rmSync(filepath, {
23
+ force: true,
24
+ recursive: true
25
+ });
22
26
  }
23
- export function getProperty(target, prop) {
24
- const member = target[prop];
25
- if (typeof member === 'function') {
26
- return member.bind(target);
27
- }
28
- return member;
27
+ function getProperty(target, prop) {
28
+ const member = target[prop];
29
+ if (typeof member === "function") return member.bind(target);
30
+ return member;
29
31
  }
30
- export function getEggOptions() {
31
- const options = {
32
- baseDir: process.env.EGG_BASE_DIR ?? process.cwd(),
33
- framework: process.env.EGG_FRAMEWORK,
34
- };
35
- return options;
32
+ function getEggOptions() {
33
+ return {
34
+ baseDir: process.env.EGG_BASE_DIR ?? process.cwd(),
35
+ framework: process.env.EGG_FRAMEWORK
36
+ };
36
37
  }
37
- // const hasOwnProperty = Object.prototype.hasOwnProperty;
38
- // /**
39
- // * Merge the property descriptors of `src` into `dest`
40
- // *
41
- // * @param {object} dest Object to add descriptors to
42
- // * @param {object} src Object to clone descriptors from
43
- // * @param {boolean} [redefine=true] Redefine `dest` properties with `src` properties
44
- // * @return {object} Reference to dest
45
- // * @public
46
- // */
47
- // function merge(dest, src, redefine) {
48
- // if (!dest) {
49
- // throw new TypeError('argument dest is required');
50
- // }
51
- // if (!src) {
52
- // throw new TypeError('argument src is required');
53
- // }
54
- // if (redefine === undefined) {
55
- // // Default to true
56
- // redefine = true;
57
- // }
58
- // Object.getOwnPropertyNames(src).forEach(function forEachOwnPropertyName(name) {
59
- // if (!redefine && hasOwnProperty.call(dest, name)) {
60
- // // Skip descriptor
61
- // return;
62
- // }
63
- // // Copy descriptor
64
- // const descriptor = Object.getOwnPropertyDescriptor(src, name);
65
- // Object.defineProperty(dest, name, descriptor);
66
- // });
67
- // return dest;
68
- // }
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbGliL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN0QyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ2pDLE9BQU8sSUFBSSxNQUFNLFdBQVcsQ0FBQztBQUM3QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVqRCxNQUFNLFVBQVUsZ0JBQWdCO0lBQzlCLElBQUksT0FBTyxTQUFTLEtBQUssV0FBVyxFQUFFLENBQUM7UUFDckMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFDRCw2REFBNkQ7SUFDN0QsYUFBYTtJQUNiLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNwRSxDQUFDO0FBRUQsTUFBTSxDQUFDLEtBQUssVUFBVSxLQUFLLENBQUMsS0FBYTtJQUN2QyxNQUFNLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDOUIsQ0FBQztBQUVELE1BQU0sQ0FBQyxLQUFLLFVBQVUsTUFBTSxDQUFDLFFBQWdCO0lBQzNDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7QUFDdkQsQ0FBQztBQUVELE1BQU0sVUFBVSxVQUFVLENBQUMsUUFBZ0I7SUFDekMsTUFBTSxDQUFDLFFBQVEsRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7QUFDckQsQ0FBQztBQUVELE1BQU0sVUFBVSxXQUFXLENBQUMsTUFBVyxFQUFFLElBQWlCO0lBQ3hELE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM1QixJQUFJLE9BQU8sTUFBTSxLQUFLLFVBQVUsRUFBRSxDQUFDO1FBQ2pDLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBQ0QsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQztBQUVELE1BQU0sVUFBVSxhQUFhO0lBQzNCLE1BQU0sT0FBTyxHQUFHO1FBQ2QsT0FBTyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsWUFBWSxJQUFJLE9BQU8sQ0FBQyxHQUFHLEVBQUU7UUFDbEQsU0FBUyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsYUFBYTtLQUNyQyxDQUFDO0lBQ0YsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQztBQUVELDBEQUEwRDtBQUUxRCxNQUFNO0FBQ04seURBQXlEO0FBQ3pELEtBQUs7QUFDTCx1REFBdUQ7QUFDdkQsMERBQTBEO0FBQzFELHVGQUF1RjtBQUN2Rix3Q0FBd0M7QUFDeEMsYUFBYTtBQUNiLE1BQU07QUFFTix3Q0FBd0M7QUFDeEMsaUJBQWlCO0FBQ2pCLHdEQUF3RDtBQUN4RCxNQUFNO0FBRU4sZ0JBQWdCO0FBQ2hCLHVEQUF1RDtBQUN2RCxNQUFNO0FBRU4sa0NBQWtDO0FBQ2xDLHlCQUF5QjtBQUN6Qix1QkFBdUI7QUFDdkIsTUFBTTtBQUVOLG9GQUFvRjtBQUNwRiwwREFBMEQ7QUFDMUQsMkJBQTJCO0FBQzNCLGdCQUFnQjtBQUNoQixRQUFRO0FBRVIseUJBQXlCO0FBQ3pCLHFFQUFxRTtBQUNyRSxxREFBcUQ7QUFDckQsUUFBUTtBQUVSLGlCQUFpQjtBQUNqQixJQUFJIn0=
38
+
39
+ //#endregion
40
+ export { getEggOptions, getProperty, getSourceDirname, rimraf, rimrafSync, sleep };
@@ -1,8 +1,12 @@
1
- export declare function mochaGlobalSetup(): Promise<void>;
2
- export declare function mochaGlobalTeardown(): Promise<void>;
3
- export declare const mochaHooks: {
4
- beforeAll: () => Promise<void>;
5
- afterEach: () => Promise<void>;
6
- afterAll: () => Promise<void>;
1
+ import "./inject_mocha.js";
2
+
3
+ //#region src/register.d.ts
4
+ declare function mochaGlobalSetup(): Promise<void>;
5
+ declare function mochaGlobalTeardown(): Promise<void>;
6
+ declare const mochaHooks: {
7
+ beforeAll: () => Promise<void>;
8
+ afterEach: () => Promise<void>;
9
+ afterAll: () => Promise<void>;
7
10
  };
8
- import './inject_mocha.ts';
11
+ //#endregion
12
+ export { mochaGlobalSetup, mochaGlobalTeardown, mochaHooks };