@eggjs/mock 7.0.0-beta.20 → 7.0.0-beta.22
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.
- package/dist/app/extend/agent.d.ts +33 -38
- package/dist/app/extend/agent.js +46 -5
- package/dist/app/extend/application.d.ts +171 -5
- package/dist/app/extend/application.js +445 -9
- package/dist/app/middleware/cluster_app_mock.d.ts +2 -5
- package/dist/app/middleware/cluster_app_mock.js +99 -96
- package/dist/app.d.ts +5 -9
- package/dist/app.js +18 -17
- package/dist/bootstrap.d.ts +5 -15
- package/dist/bootstrap.js +13 -29
- package/dist/index.d.ts +77 -10
- package/dist/index.js +90 -22
- package/dist/inject_mocha.d.ts +1 -1
- package/dist/inject_mocha.js +35 -23
- package/dist/lib/agent_handler.d.ts +3 -10
- package/dist/lib/agent_handler.js +24 -9
- package/dist/lib/app.d.ts +3 -6
- package/dist/lib/app.js +291 -14
- package/dist/lib/app_handler.d.ts +5 -6
- package/dist/lib/app_handler.js +69 -21
- package/dist/lib/cluster.d.ts +121 -6
- package/dist/lib/cluster.js +340 -7
- package/dist/lib/context.d.ts +1 -4
- package/dist/lib/context.js +11 -3
- package/dist/lib/format_options.d.ts +2 -7
- package/dist/lib/format_options.js +93 -4
- package/dist/lib/inject_context.d.ts +1 -4
- package/dist/lib/inject_context.js +126 -22
- package/dist/lib/mock_agent.d.ts +4 -8
- package/dist/lib/mock_agent.js +45 -3
- package/dist/lib/mock_custom_loader.d.ts +1 -4
- package/dist/lib/mock_custom_loader.js +34 -3
- package/dist/lib/mock_http_server.d.ts +2 -6
- package/dist/lib/mock_http_server.js +18 -3
- package/dist/lib/mock_httpclient.d.ts +36 -2
- package/dist/lib/mock_httpclient.js +146 -4
- package/dist/lib/parallel/agent.d.ts +20 -5
- package/dist/lib/parallel/agent.js +117 -8
- package/dist/lib/parallel/app.d.ts +19 -24
- package/dist/lib/parallel/app.js +111 -9
- package/dist/lib/parallel/util.d.ts +3 -2
- package/dist/lib/parallel/util.js +66 -4
- package/dist/lib/prerequire.d.ts +1 -1
- package/dist/lib/prerequire.js +25 -1
- package/dist/lib/request_call_function.d.ts +1 -1
- package/dist/lib/request_call_function.js +47 -34
- package/dist/lib/restore.d.ts +1 -2
- package/dist/lib/restore.js +13 -9
- package/dist/lib/start-cluster.d.ts +2 -1
- package/dist/lib/start-cluster.js +14 -15
- package/dist/lib/supertest.d.ts +11 -2
- package/dist/lib/supertest.js +40 -5
- package/dist/lib/tmp/empty.d.ts +1 -1
- package/dist/lib/tmp/empty.js +2 -1
- package/dist/lib/types.d.ts +72 -3
- package/dist/lib/types.js +2 -3
- package/dist/lib/utils.d.ts +8 -11
- package/dist/lib/utils.js +69 -3
- package/dist/register.d.ts +7 -11
- package/dist/register.js +41 -55
- package/package.json +7 -7
- package/dist/agent-BKYkjoCx.js +0 -111
- package/dist/agent-CHCe8tnW.d.ts +0 -24
- package/dist/agent-DZ_fHoxJ.js +0 -48
- package/dist/agent_handler-DeUtoRVT.js +0 -26
- package/dist/app-6Bn3F5Uw.js +0 -252
- package/dist/app-CoypamK1.js +0 -99
- package/dist/app-l47a-gqT.d.ts +0 -7
- package/dist/app_handler-CkiK6fyC.js +0 -55
- package/dist/app_handler-Gp5J9X-v.d.ts +0 -9
- package/dist/application-BPpvw5dg.d.ts +0 -175
- package/dist/application-LrKwuOKn.js +0 -385
- package/dist/cluster-CA_hr9eV.js +0 -283
- package/dist/cluster-RTfUwmUd.d.ts +0 -126
- package/dist/context-BIduDy1M.js +0 -10
- package/dist/format_options-LRnReKde.js +0 -65
- package/dist/index-BtBMDZg8.d.ts +0 -78
- package/dist/inject_context-BxpcF-ds.js +0 -106
- package/dist/inject_mocha-BVf8v6El.js +0 -38
- package/dist/inject_mocha-Daf1Aj8M.d.ts +0 -1
- package/dist/mock_agent-CxT7Q0_N.js +0 -45
- package/dist/mock_custom_loader-f_tHRojG.js +0 -35
- package/dist/mock_http_server-De0r07gr.js +0 -17
- package/dist/mock_httpclient-1EgQkMxi.d.ts +0 -40
- package/dist/mock_httpclient-B6UVI7GS.js +0 -110
- package/dist/restore-BL0cE0KG.d.ts +0 -4
- package/dist/restore-CVQYXquh.js +0 -16
- package/dist/src-D22EjdGo.js +0 -47
- package/dist/supertest-BIds28yL.d.ts +0 -16
- package/dist/supertest-Cg412Los.js +0 -39
- package/dist/types-CPNMyF89.js +0 -1
- package/dist/types-CjZ-JeCo.d.ts +0 -75
- package/dist/typings/index.d.ts +0 -1
- package/dist/util-1xYBaaoh.d.ts +0 -6
- package/dist/util-BpppqTXv.js +0 -59
- package/dist/utils-MhP_Krx1.js +0 -40
|
@@ -1,97 +1,100 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
1
|
+
import { debuglog } from 'node:util';
|
|
2
|
+
import { Context } from 'egg';
|
|
3
|
+
const debug = debuglog('egg/mock/app/middleware/cluster_app_mock');
|
|
4
|
+
export default () => {
|
|
5
|
+
return async function clusterAppMock(ctx, next) {
|
|
6
|
+
// use originalUrl to make sure other middlewares can't change request url
|
|
7
|
+
if (ctx.originalUrl !== '/__egg_mock_call_function') {
|
|
8
|
+
return next();
|
|
9
|
+
}
|
|
10
|
+
const body = ctx.request.body;
|
|
11
|
+
debug('%s %s, body: %j', ctx.method, ctx.url, body);
|
|
12
|
+
const { method, property, args, needResult } = body;
|
|
13
|
+
if (!method) {
|
|
14
|
+
ctx.status = 422;
|
|
15
|
+
ctx.body = {
|
|
16
|
+
success: false,
|
|
17
|
+
error: 'Missing method',
|
|
18
|
+
};
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
if (args && !Array.isArray(args)) {
|
|
22
|
+
ctx.status = 422;
|
|
23
|
+
ctx.body = {
|
|
24
|
+
success: false,
|
|
25
|
+
error: 'args should be an Array instance',
|
|
26
|
+
};
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
if (property) {
|
|
30
|
+
// method: '__getter__' and property: 'config'
|
|
31
|
+
if (method === '__getter__') {
|
|
32
|
+
if (!ctx.app[property]) {
|
|
33
|
+
debug('property %s not exists on app', property);
|
|
34
|
+
ctx.status = 422;
|
|
35
|
+
ctx.body = {
|
|
36
|
+
success: false,
|
|
37
|
+
error: `property "${property}" not exists on app`,
|
|
38
|
+
};
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
ctx.body = { success: true, result: ctx.app[property] };
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
if (!ctx.app[property] || typeof ctx.app[property][method] !== 'function') {
|
|
45
|
+
debug('property %s.%s not exists on app', property, method);
|
|
46
|
+
ctx.status = 422;
|
|
47
|
+
ctx.body = {
|
|
48
|
+
success: false,
|
|
49
|
+
error: `method "${method}" not exists on app.${property}`,
|
|
50
|
+
};
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
if (typeof ctx.app[method] !== 'function') {
|
|
56
|
+
debug('method %s not exists on app', method);
|
|
57
|
+
ctx.status = 422;
|
|
58
|
+
ctx.body = {
|
|
59
|
+
success: false,
|
|
60
|
+
error: `method "${method}" not exists on app`,
|
|
61
|
+
};
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
debug('call %s with %j', method, args);
|
|
66
|
+
for (let i = 0; i < args.length; i++) {
|
|
67
|
+
const arg = args[i];
|
|
68
|
+
if (arg && typeof arg === 'object') {
|
|
69
|
+
// convert __egg_mock_type back to function
|
|
70
|
+
if (arg.__egg_mock_type === 'function') {
|
|
71
|
+
// eslint-disable-next-line
|
|
72
|
+
args[i] = eval(`(function() { return ${arg.value} })()`);
|
|
73
|
+
}
|
|
74
|
+
else if (arg.__egg_mock_type === 'error') {
|
|
75
|
+
const err = new Error(arg.message);
|
|
76
|
+
err.name = arg.name;
|
|
77
|
+
err.stack = arg.stack;
|
|
78
|
+
for (const key in arg) {
|
|
79
|
+
if (key !== 'name' && key !== 'message' && key !== 'stack' && key !== '__egg_mock_type') {
|
|
80
|
+
err[key] = arg[key];
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
args[i] = err;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
const target = property ? ctx.app[property] : ctx.app;
|
|
88
|
+
const fn = target[method];
|
|
89
|
+
try {
|
|
90
|
+
Promise.resolve(fn.call(target, ...args)).then(result => {
|
|
91
|
+
ctx.body = needResult ? { success: true, result } : { success: true };
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
catch (err) {
|
|
95
|
+
ctx.status = 500;
|
|
96
|
+
ctx.body = { success: false, error: err.message };
|
|
97
|
+
}
|
|
98
|
+
};
|
|
94
99
|
};
|
|
95
|
-
|
|
96
|
-
//#endregion
|
|
97
|
-
export { cluster_app_mock_default as default };
|
|
100
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2x1c3Rlcl9hcHBfbW9jay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hcHAvbWlkZGxld2FyZS9jbHVzdGVyX2FwcF9tb2NrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFckMsT0FBTyxFQUFFLE9BQU8sRUFBYSxNQUFNLEtBQUssQ0FBQztBQUV6QyxNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsMENBQTBDLENBQUMsQ0FBQztBQUVuRSxlQUFlLEdBQUcsRUFBRTtJQUNsQixPQUFPLEtBQUssVUFBVSxjQUFjLENBQUMsR0FBWSxFQUFFLElBQVU7UUFDM0QsMEVBQTBFO1FBQzFFLElBQUksR0FBRyxDQUFDLFdBQVcsS0FBSywyQkFBMkIsRUFBRSxDQUFDO1lBQ3BELE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDaEIsQ0FBQztRQUNELE1BQU0sSUFBSSxHQUFJLEdBQUcsQ0FBQyxPQUFlLENBQUMsSUFBSSxDQUFDO1FBQ3ZDLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxHQUFHLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDcEQsTUFBTSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxHQUFHLElBQUksQ0FBQztRQUNwRCxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDWixHQUFHLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQztZQUNqQixHQUFHLENBQUMsSUFBSSxHQUFHO2dCQUNULE9BQU8sRUFBRSxLQUFLO2dCQUNkLEtBQUssRUFBRSxnQkFBZ0I7YUFDeEIsQ0FBQztZQUNGLE9BQU87UUFDVCxDQUFDO1FBQ0QsSUFBSSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDakMsR0FBRyxDQUFDLE1BQU0sR0FBRyxH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
|
package/dist/app.d.ts
CHANGED
|
@@ -1,10 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
constructor(app: Application);
|
|
7
|
-
configWillLoad(): void;
|
|
1
|
+
import { type ILifecycleBoot, Application } from 'egg';
|
|
2
|
+
export default class Boot implements ILifecycleBoot {
|
|
3
|
+
#private;
|
|
4
|
+
constructor(app: Application);
|
|
5
|
+
configWillLoad(): void;
|
|
8
6
|
}
|
|
9
|
-
//#endregion
|
|
10
|
-
export { Boot as default };
|
package/dist/app.js
CHANGED
|
@@ -1,17 +1,18 @@
|
|
|
1
|
-
import { Application } from
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
1
|
+
import { Application } from 'egg';
|
|
2
|
+
export default class Boot {
|
|
3
|
+
#app;
|
|
4
|
+
constructor(app) {
|
|
5
|
+
this.#app = app;
|
|
6
|
+
}
|
|
7
|
+
configWillLoad() {
|
|
8
|
+
// make sure clusterAppMock position before securities
|
|
9
|
+
const index = this.#app.config.coreMiddleware.indexOf('securities');
|
|
10
|
+
if (index >= 0) {
|
|
11
|
+
this.#app.config.coreMiddleware.splice(index, 0, 'clusterAppMock');
|
|
12
|
+
}
|
|
13
|
+
else {
|
|
14
|
+
this.#app.config.coreMiddleware.push('clusterAppMock');
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2FwcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXVCLFdBQVcsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV2RCxNQUFNLENBQUMsT0FBTyxPQUFPLElBQUk7SUFDdkIsSUFBSSxDQUFjO0lBQ2xCLFlBQVksR0FBZ0I7UUFDMUIsSUFBSSxDQUFDLElBQUksR0FBRyxHQUFHLENBQUM7SUFDbEIsQ0FBQztJQUVELGNBQWM7UUFDWixzREFBc0Q7UUFDdEQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNwRSxJQUFJLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUNmLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3JFLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3pELENBQUM7SUFDSCxDQUFDO0NBQ0YifQ==
|
package/dist/bootstrap.d.ts
CHANGED
|
@@ -1,15 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
import "./app-l47a-gqT.js";
|
|
7
|
-
import "./restore-BL0cE0KG.js";
|
|
8
|
-
import { getBootstrapApp } from "./app_handler-Gp5J9X-v.js";
|
|
9
|
-
import { proxyMock } from "./index-BtBMDZg8.js";
|
|
10
|
-
import { strict as assert } from "node:assert";
|
|
11
|
-
|
|
12
|
-
//#region src/bootstrap.d.ts
|
|
13
|
-
declare const app: ApplicationUnittest;
|
|
14
|
-
//#endregion
|
|
15
|
-
export { type ApplicationUnittest as MockApplication, app, assert, getBootstrapApp, proxyMock as mm, proxyMock as mock };
|
|
1
|
+
import { strict as assert } from 'node:assert';
|
|
2
|
+
import mm, { mock, type MockApplication } from './index.ts';
|
|
3
|
+
import { getBootstrapApp } from './lib/app_handler.ts';
|
|
4
|
+
declare const app: MockApplication;
|
|
5
|
+
export { assert, getBootstrapApp, app, mm, mock, type MockApplication };
|
package/dist/bootstrap.js
CHANGED
|
@@ -1,31 +1,15 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import "./
|
|
5
|
-
import "./
|
|
6
|
-
import "./
|
|
7
|
-
import "./mock_custom_loader-f_tHRojG.js";
|
|
8
|
-
import "./mock_agent-CxT7Q0_N.js";
|
|
9
|
-
import "./mock_httpclient-B6UVI7GS.js";
|
|
10
|
-
import "./types-CPNMyF89.js";
|
|
11
|
-
import "./application-LrKwuOKn.js";
|
|
12
|
-
import "./agent-DZ_fHoxJ.js";
|
|
13
|
-
import "./app-6Bn3F5Uw.js";
|
|
14
|
-
import "./restore-CVQYXquh.js";
|
|
15
|
-
import "./util-BpppqTXv.js";
|
|
16
|
-
import "./app-CoypamK1.js";
|
|
17
|
-
import "./agent-BKYkjoCx.js";
|
|
18
|
-
import "./agent_handler-DeUtoRVT.js";
|
|
19
|
-
import { getBootstrapApp, setupApp } from "./app_handler-CkiK6fyC.js";
|
|
20
|
-
import { proxyMock, src_default } from "./src-D22EjdGo.js";
|
|
21
|
-
import { strict as assert } from "node:assert";
|
|
22
|
-
import path from "node:path";
|
|
23
|
-
import { readJSONSync } from "utility";
|
|
24
|
-
|
|
25
|
-
//#region src/bootstrap.ts
|
|
1
|
+
import { strict as assert } from 'node:assert';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { readJSONSync } from 'utility';
|
|
4
|
+
import mm, { mock } from "./index.js";
|
|
5
|
+
import { getBootstrapApp, setupApp } from "./lib/app_handler.js";
|
|
6
|
+
import { getEggOptions } from "./lib/utils.js";
|
|
26
7
|
const options = getEggOptions();
|
|
27
|
-
|
|
8
|
+
// throw error when an egg plugin test is using bootstrap
|
|
9
|
+
const pkgInfo = readJSONSync(path.join(options.baseDir || process.cwd(), 'package.json'));
|
|
10
|
+
if (pkgInfo.eggPlugin) {
|
|
11
|
+
throw new Error('DO NOT USE bootstrap to test plugin');
|
|
12
|
+
}
|
|
28
13
|
const app = setupApp();
|
|
29
|
-
|
|
30
|
-
//#
|
|
31
|
-
export { app, assert, getBootstrapApp, src_default as mm, proxyMock as mock };
|
|
14
|
+
export { assert, getBootstrapApp, app, mm, mock };
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vdHN0cmFwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2Jvb3RzdHJhcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxJQUFJLE1BQU0sRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUMvQyxPQUFPLElBQUksTUFBTSxXQUFXLENBQUM7QUFFN0IsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUV2QyxPQUFPLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBd0IsTUFBTSxZQUFZLENBQUM7QUFDNUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFL0MsTUFBTSxPQUFPLEdBQUcsYUFBYSxFQUFFLENBQUM7QUFFaEMseURBQXlEO0FBQ3pELE1BQU0sT0FBTyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLElBQUksT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUM7QUFDMUYsSUFBSSxPQUFPLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDdEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO0FBQ3pELENBQUM7QUFFRCxNQUFNLEdBQUcsR0FBRyxRQUFRLEVBQUUsQ0FBQztBQUV2QixPQUFPLEVBQUUsTUFBTSxFQUFFLGVBQWUsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBd0IsQ0FBQyJ9
|
package/dist/index.d.ts
CHANGED
|
@@ -1,10 +1,77 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
import { mock as _mock } from 'mm';
|
|
2
|
+
import { createCluster, type MockClusterApplication } from './lib/cluster.ts';
|
|
3
|
+
import { createApp } from './lib/app.ts';
|
|
4
|
+
import { restore } from './lib/restore.ts';
|
|
5
|
+
import { setGetAppCallback } from './lib/app_handler.ts';
|
|
6
|
+
import type ApplicationUnittest from './app/extend/application.ts';
|
|
7
|
+
export * from './lib/types.ts';
|
|
8
|
+
declare const mock: {
|
|
9
|
+
restore: typeof restore;
|
|
10
|
+
/**
|
|
11
|
+
* Create a egg mocked application
|
|
12
|
+
* @function mm#app
|
|
13
|
+
* @param {Object} [options]
|
|
14
|
+
* - {String} baseDir - The directory of the application
|
|
15
|
+
* - {Object} plugins - Custom you plugins
|
|
16
|
+
* - {String} framework - The directory of the egg framework
|
|
17
|
+
* - {Boolean} [true] cache - Cache application based on baseDir
|
|
18
|
+
* - {Boolean} [true] coverage - Switch on process coverage, but it'll be slower
|
|
19
|
+
* - {Boolean} [true] clean - Remove $baseDir/logs
|
|
20
|
+
* @return {App} return {@link Application}
|
|
21
|
+
* @example
|
|
22
|
+
* ```js
|
|
23
|
+
* const app = mm.app();
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
app: typeof createApp;
|
|
27
|
+
/**
|
|
28
|
+
* Create a egg mocked cluster application
|
|
29
|
+
* @function mm#cluster
|
|
30
|
+
* @see ClusterApplication
|
|
31
|
+
*/
|
|
32
|
+
cluster: typeof createCluster;
|
|
33
|
+
/**
|
|
34
|
+
* mock the serverEnv of Egg
|
|
35
|
+
* @member {Function} mm#env
|
|
36
|
+
* @param {String} env - contain default, test, prod, local, unittest
|
|
37
|
+
* @see https://github.com/eggjs/egg-core/blob/master/lib/loader/egg_loader.js#L78
|
|
38
|
+
*/
|
|
39
|
+
env(env: string): void;
|
|
40
|
+
/**
|
|
41
|
+
* mock console level
|
|
42
|
+
* @param {String} level - logger level
|
|
43
|
+
*/
|
|
44
|
+
consoleLevel(level: string): void;
|
|
45
|
+
home(homePath?: string): void;
|
|
46
|
+
setGetAppCallback: typeof setGetAppCallback;
|
|
47
|
+
isMocked: typeof import("mm").isMocked;
|
|
48
|
+
mock: typeof _mock;
|
|
49
|
+
mm: typeof _mock;
|
|
50
|
+
datas: typeof import("mm").datas;
|
|
51
|
+
mockDatas: typeof import("mm").datas;
|
|
52
|
+
data: typeof import("mm").data;
|
|
53
|
+
mockData: typeof import("mm").data;
|
|
54
|
+
dataWithAsyncDispose: typeof import("mm").dataWithAsyncDispose;
|
|
55
|
+
empty: typeof import("mm").empty;
|
|
56
|
+
mockEmpty: typeof import("mm").empty;
|
|
57
|
+
error: typeof import("mm").error;
|
|
58
|
+
mockError: typeof import("mm").error;
|
|
59
|
+
spy: typeof import("mm").spy;
|
|
60
|
+
errorOnce: typeof import("mm").errorOnce;
|
|
61
|
+
syncError: typeof import("mm").syncError;
|
|
62
|
+
syncEmpty: typeof import("mm").syncEmpty;
|
|
63
|
+
syncData: typeof import("mm").syncData;
|
|
64
|
+
http: {
|
|
65
|
+
request: (url: import("mm").RequestURL, data: import("mm").ResponseData, headers?: Record<string, any>, delay?: number) => void;
|
|
66
|
+
requestError: (url: import("mm").RequestURL, reqError?: import("mm").MockError, resError?: import("mm").MockError, delay?: number) => void;
|
|
67
|
+
};
|
|
68
|
+
https: {
|
|
69
|
+
request: (url: import("mm").RequestURL, data: import("mm").ResponseData, headers?: Record<string, any>, delay?: number) => void;
|
|
70
|
+
requestError: (url: import("mm").RequestURL, reqError?: import("mm").MockError, resError?: import("mm").MockError, delay?: number) => void;
|
|
71
|
+
};
|
|
72
|
+
spawn: typeof import("mm").spawn;
|
|
73
|
+
classMethod: typeof import("mm").classMethod;
|
|
74
|
+
};
|
|
75
|
+
declare const proxyMock: ((target: any, property: PropertyKey, value?: any) => void) & typeof mock;
|
|
76
|
+
export default proxyMock;
|
|
77
|
+
export { proxyMock as mock, proxyMock as mm, type MockClusterApplication, type ApplicationUnittest as MockApplication, setGetAppCallback, createApp, createCluster, };
|
package/dist/index.js
CHANGED
|
@@ -1,22 +1,90 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import "./
|
|
4
|
-
import "./
|
|
5
|
-
import {
|
|
6
|
-
import "./
|
|
7
|
-
import "./
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
1
|
+
import mm from 'mm';
|
|
2
|
+
import { mock as _mock } from 'mm';
|
|
3
|
+
import { createCluster } from "./lib/cluster.js";
|
|
4
|
+
import { createApp } from "./lib/app.js";
|
|
5
|
+
// import { getMockAgent } from './lib/mock_agent.js';
|
|
6
|
+
import { restore } from "./lib/restore.js";
|
|
7
|
+
import { setGetAppCallback } from "./lib/app_handler.js";
|
|
8
|
+
export * from "./lib/types.js";
|
|
9
|
+
// egg-bin will set this flag to require files for instrument
|
|
10
|
+
// if (process.env.EGG_BIN_PREREQUIRE) {
|
|
11
|
+
// require('./lib/prerequire');
|
|
12
|
+
// }
|
|
13
|
+
// inherit & extends mm
|
|
14
|
+
const mock = {
|
|
15
|
+
...mm,
|
|
16
|
+
restore,
|
|
17
|
+
/**
|
|
18
|
+
* Create a egg mocked application
|
|
19
|
+
* @function mm#app
|
|
20
|
+
* @param {Object} [options]
|
|
21
|
+
* - {String} baseDir - The directory of the application
|
|
22
|
+
* - {Object} plugins - Custom you plugins
|
|
23
|
+
* - {String} framework - The directory of the egg framework
|
|
24
|
+
* - {Boolean} [true] cache - Cache application based on baseDir
|
|
25
|
+
* - {Boolean} [true] coverage - Switch on process coverage, but it'll be slower
|
|
26
|
+
* - {Boolean} [true] clean - Remove $baseDir/logs
|
|
27
|
+
* @return {App} return {@link Application}
|
|
28
|
+
* @example
|
|
29
|
+
* ```js
|
|
30
|
+
* const app = mm.app();
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
33
|
+
app: createApp,
|
|
34
|
+
/**
|
|
35
|
+
* Create a egg mocked cluster application
|
|
36
|
+
* @function mm#cluster
|
|
37
|
+
* @see ClusterApplication
|
|
38
|
+
*/
|
|
39
|
+
cluster: createCluster,
|
|
40
|
+
/**
|
|
41
|
+
* mock the serverEnv of Egg
|
|
42
|
+
* @member {Function} mm#env
|
|
43
|
+
* @param {String} env - contain default, test, prod, local, unittest
|
|
44
|
+
* @see https://github.com/eggjs/egg-core/blob/master/lib/loader/egg_loader.js#L78
|
|
45
|
+
*/
|
|
46
|
+
env(env) {
|
|
47
|
+
_mock(process.env, 'EGG_MOCK_SERVER_ENV', env);
|
|
48
|
+
_mock(process.env, 'EGG_SERVER_ENV', env);
|
|
49
|
+
},
|
|
50
|
+
/**
|
|
51
|
+
* mock console level
|
|
52
|
+
* @param {String} level - logger level
|
|
53
|
+
*/
|
|
54
|
+
consoleLevel(level) {
|
|
55
|
+
level = (level || '').toUpperCase();
|
|
56
|
+
_mock(process.env, 'EGG_LOG', level);
|
|
57
|
+
},
|
|
58
|
+
home(homePath) {
|
|
59
|
+
if (homePath) {
|
|
60
|
+
_mock(process.env, 'EGG_HOME', homePath);
|
|
61
|
+
}
|
|
62
|
+
},
|
|
63
|
+
setGetAppCallback,
|
|
64
|
+
};
|
|
65
|
+
// import mm from '@eggjs/mock';
|
|
66
|
+
const proxyMock = new Proxy(_mock, {
|
|
67
|
+
apply(target, _, args) {
|
|
68
|
+
return target(args[0], args[1], args[2]);
|
|
69
|
+
},
|
|
70
|
+
get(_target, property, receiver) {
|
|
71
|
+
// import mm from '@eggjs/mock';
|
|
72
|
+
// mm.isMocked(foo, 'bar')
|
|
73
|
+
return Reflect.get(mock, property, receiver);
|
|
74
|
+
},
|
|
75
|
+
});
|
|
76
|
+
export default proxyMock;
|
|
77
|
+
export { proxyMock as mock,
|
|
78
|
+
// alias to mm
|
|
79
|
+
proxyMock as mm, setGetAppCallback, createApp, createCluster, };
|
|
80
|
+
process.setMaxListeners(100);
|
|
81
|
+
process.once('SIGQUIT', () => {
|
|
82
|
+
process.exit(0);
|
|
83
|
+
});
|
|
84
|
+
process.once('SIGTERM', () => {
|
|
85
|
+
process.exit(0);
|
|
86
|
+
});
|
|
87
|
+
process.once('SIGINT', () => {
|
|
88
|
+
process.exit(0);
|
|
89
|
+
});
|
|
90
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBQ3BCLE9BQU8sRUFBRSxJQUFJLElBQUksS0FBSyxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBRW5DLE9BQU8sRUFBRSxhQUFhLEVBQStCLE1BQU0sa0JBQWtCLENBQUM7QUFDOUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN6QyxzREFBc0Q7QUFDdEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBR3pELGNBQWMsZ0JBQWdCLENBQUM7QUFFL0IsNkRBQTZEO0FBQzdELHdDQUF3QztBQUN4QyxpQ0FBaUM7QUFDakMsSUFBSTtBQUVKLHVCQUF1QjtBQUN2QixNQUFNLElBQUksR0FBRztJQUNYLEdBQUcsRUFBRTtJQUNMLE9BQU87SUFFUDs7Ozs7Ozs7Ozs7Ozs7O09BZUc7SUFDSCxHQUFHLEVBQUUsU0FBUztJQUVkOzs7O09BSUc7SUFDSCxPQUFPLEVBQUUsYUFBYTtJQUV0Qjs7Ozs7T0FLRztJQUNILEdBQUcsQ0FBQyxHQUFXO1FBQ2IsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUscUJBQXFCLEVBQUUsR0FBVSxDQUFDLENBQUM7UUFDdEQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsZ0JBQWdCLEVBQUUsR0FBVSxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVEOzs7T0FHRztJQUNILFlBQVksQ0FBQyxLQUFhO1FBQ3hCLEtBQUssR0FBRyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNwQyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxTQUFTLEVBQUUsS0FBWSxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVELElBQUksQ0FBQyxRQUFpQjtRQUNwQixJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQ2IsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsVUFBVSxFQUFFLFFBQWUsQ0FBQyxDQUFDO1FBQ2xELENBQUM7SUFDSCxDQUFDO0lBRUQsaUJBQWlCO0NBQ2xCLENBQUM7QUFFRixnQ0FBZ0M7QUFDaEMsTUFBTSxTQUFTLEdBQUcsSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFO0lBQ2pDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLElBQUk7UUFDbkIsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBQ0QsR0FBRyxDQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsUUFBUTtRQUM3QixnQ0FBZ0M7UUFDaEMsMEJBQTBCO1FBQzFCLE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsUUFBUSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQy9DLENBQUM7Q0FDRixDQUF5RixDQUFDO0FBRTNGLGVBQWUsU0FBUyxDQUFDO0FBRXpCLE9BQU8sRUFDTCxTQUFTLElBQUksSUFBSTtBQUNqQixjQUFjO0FBQ2QsU0FBUyxJQUFJLEVBQUUsRUFHZixpQkFBaUIsRUFDakIsU0FBUyxFQUNULGFBQWEsR0FDZCxDQUFDO0FBRUYsT0FBTyxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUU3QixPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUU7SUFDM0IsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNsQixDQUFDLENBQUMsQ0FBQztBQUVILE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLEdBQUcsRUFBRTtJQUMzQixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ2xCLENBQUMsQ0FBQyxDQUFDO0FBRUgsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsR0FBRyxFQUFFO0lBQzFCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDbEIsQ0FBQyxDQUFDLENBQUMifQ==
|
package/dist/inject_mocha.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import
|
|
1
|
+
import 'mocha';
|
package/dist/inject_mocha.js
CHANGED
|
@@ -1,23 +1,35 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import "./
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
1
|
+
import { debuglog } from 'node:util';
|
|
2
|
+
import { getRequire } from '@eggjs/utils';
|
|
3
|
+
import { injectContext } from "./lib/inject_context.js";
|
|
4
|
+
const debug = debuglog('egg/mock/inject_mocha');
|
|
5
|
+
/**
|
|
6
|
+
* Find active node mocha instances.
|
|
7
|
+
*/
|
|
8
|
+
function findNodeJSMocha() {
|
|
9
|
+
let children;
|
|
10
|
+
if (typeof require === 'function') {
|
|
11
|
+
children = require.cache || {};
|
|
12
|
+
}
|
|
13
|
+
else {
|
|
14
|
+
// FIXME: not work on ESM
|
|
15
|
+
children = getRequire().cache || {};
|
|
16
|
+
debug('createRequire on esm');
|
|
17
|
+
}
|
|
18
|
+
return Object.keys(children)
|
|
19
|
+
.filter(function (child) {
|
|
20
|
+
const val = children[child].exports;
|
|
21
|
+
return typeof val === 'function' && val.name === 'Mocha';
|
|
22
|
+
})
|
|
23
|
+
.map(function (child) {
|
|
24
|
+
return children[child].exports;
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
import 'mocha';
|
|
28
|
+
const modules = findNodeJSMocha();
|
|
29
|
+
debug('modules length: %s', modules.length);
|
|
30
|
+
for (const module of modules) {
|
|
31
|
+
if (!module)
|
|
32
|
+
continue;
|
|
33
|
+
injectContext(module);
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5qZWN0X21vY2hhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2luamVjdF9tb2NoYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRXJDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFMUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXhELE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO0FBRWhEOztHQUVHO0FBQ0gsU0FBUyxlQUFlO0lBQ3RCLElBQUksUUFBYSxDQUFDO0lBQ2xCLElBQUksT0FBTyxPQUFPLEtBQUssVUFBVSxFQUFFLENBQUM7UUFDbEMsUUFBUSxHQUFHLE9BQU8sQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO0lBQ2pDLENBQUM7U0FBTSxDQUFDO1FBQ04seUJBQXlCO1FBQ3pCLFFBQVEsR0FBRyxVQUFVLEVBQUUsQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO1FBQ3BDLEtBQUssQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO1NBQ3pCLE1BQU0sQ0FBQyxVQUFVLEtBQUs7UUFDckIsTUFBTSxHQUFHLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQztRQUNwQyxPQUFPLE9BQU8sR0FBRyxLQUFLLFVBQVUsSUFBSSxHQUFHLENBQUMsSUFBSSxLQUFLLE9BQU8sQ0FBQztJQUMzRCxDQUFDLENBQUM7U0FDRCxHQUFHLENBQUMsVUFBVSxLQUFLO1FBQ2xCLE9BQU8sUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQztJQUNqQyxDQUFDLENBQUMsQ0FBQztBQUNQLENBQUM7QUFFRCxPQUFPLE9BQU8sQ0FBQztBQUVmLE1BQU0sT0FBTyxHQUFHLGVBQWUsRUFBRSxDQUFDO0FBQ2xDLEtBQUssQ0FBQyxvQkFBb0IsRUFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7QUFFNUMsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUUsQ0FBQztJQUM3QixJQUFJLENBQUMsTUFBTTtRQUFFLFNBQVM7SUFDdEIsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ3hCLENBQUMifQ==
|
|
@@ -1,10 +1,3 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
import { MockAgent } from "../agent-CHCe8tnW.js";
|
|
5
|
-
|
|
6
|
-
//#region src/lib/agent_handler.d.ts
|
|
7
|
-
declare function setupAgent(): Promise<MockAgent>;
|
|
8
|
-
declare function closeAgent(): Promise<void>;
|
|
9
|
-
//#endregion
|
|
10
|
-
export { closeAgent, setupAgent };
|
|
1
|
+
import { MockAgent } from './parallel/agent.ts';
|
|
2
|
+
export declare function setupAgent(): Promise<MockAgent>;
|
|
3
|
+
export declare function closeAgent(): Promise<void>;
|