@modern-js/plugin-testing 1.5.7 → 1.6.0
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/CHANGELOG.md +16 -0
- package/dist/js/modern/base/config/index.js +18 -0
- package/dist/js/modern/base/config/patches/assetsModule.js +11 -0
- package/dist/js/modern/base/config/patches/filemock.js +1 -0
- package/dist/js/modern/base/config/patches/index.js +13 -0
- package/dist/js/modern/base/config/patches/transformer.js +49 -0
- package/dist/js/modern/base/config/resolver.js +15 -0
- package/dist/js/modern/base/config/testConfigOperator.js +86 -0
- package/dist/js/modern/base/config/transformer/babelTransformer.js +12 -0
- package/dist/js/modern/base/hook.js +7 -0
- package/dist/js/modern/base/index.js +6 -0
- package/dist/js/modern/base/runJest.js +94 -0
- package/dist/js/modern/base/types/index.js +0 -0
- package/dist/js/modern/base/utils.js +59 -0
- package/dist/js/modern/cli/bff/app.js +22 -0
- package/dist/js/modern/cli/bff/constant.js +1 -0
- package/dist/js/modern/cli/bff/env.js +28 -0
- package/dist/js/modern/cli/bff/index.js +110 -0
- package/dist/js/modern/cli/bff/mockAPI.js +109 -0
- package/dist/js/modern/cli/bff/setup.js +33 -0
- package/dist/js/modern/cli/bff/utils/index.js +25 -0
- package/dist/js/modern/cli/index.js +2 -2
- package/dist/js/modern/cli/test.js +1 -1
- package/dist/js/modern/runtime-testing/base.js +1 -1
- package/dist/js/modern/runtime-testing/request.js +17 -0
- package/dist/js/node/base/config/index.js +31 -0
- package/dist/js/node/base/config/patches/assetsModule.js +20 -0
- package/dist/js/node/base/config/patches/filemock.js +8 -0
- package/dist/js/node/base/config/patches/index.js +24 -0
- package/dist/js/node/base/config/patches/transformer.js +58 -0
- package/dist/js/node/base/config/resolver.js +20 -0
- package/dist/js/node/base/config/testConfigOperator.js +93 -0
- package/dist/js/node/base/config/transformer/babelTransformer.js +23 -0
- package/dist/js/node/base/hook.js +18 -0
- package/dist/js/node/base/index.js +73 -0
- package/dist/js/node/base/runJest.js +109 -0
- package/dist/js/node/base/types/index.js +0 -0
- package/dist/js/node/base/utils.js +79 -0
- package/dist/js/node/cli/bff/app.js +34 -0
- package/dist/js/node/cli/bff/constant.js +8 -0
- package/dist/js/node/cli/bff/env.js +42 -0
- package/dist/js/node/cli/bff/index.js +129 -0
- package/dist/js/node/cli/bff/mockAPI.js +124 -0
- package/dist/js/node/cli/bff/setup.js +41 -0
- package/dist/js/node/cli/bff/utils/index.js +38 -0
- package/dist/js/node/cli/index.js +7 -7
- package/dist/js/node/cli/test.js +2 -2
- package/dist/js/node/runtime-testing/base.js +2 -2
- package/dist/js/node/runtime-testing/request.js +24 -0
- package/dist/js/treeshaking/base/config/index.js +40 -0
- package/dist/js/treeshaking/base/config/patches/assetsModule.js +11 -0
- package/dist/js/treeshaking/base/config/patches/filemock.js +1 -0
- package/dist/js/treeshaking/base/config/patches/index.js +85 -0
- package/dist/js/treeshaking/base/config/patches/transformer.js +45 -0
- package/dist/js/treeshaking/base/config/resolver.js +17 -0
- package/dist/js/treeshaking/base/config/testConfigOperator.js +91 -0
- package/dist/js/treeshaking/base/config/transformer/babelTransformer.js +12 -0
- package/dist/js/treeshaking/base/hook.js +7 -0
- package/dist/js/treeshaking/base/index.js +6 -0
- package/dist/js/treeshaking/base/runJest.js +194 -0
- package/dist/js/treeshaking/base/types/index.js +0 -0
- package/dist/js/treeshaking/base/utils.js +60 -0
- package/dist/js/treeshaking/cli/bff/app.js +47 -0
- package/dist/js/treeshaking/cli/bff/constant.js +1 -0
- package/dist/js/treeshaking/cli/bff/env.js +98 -0
- package/dist/js/treeshaking/cli/bff/index.js +145 -0
- package/dist/js/treeshaking/cli/bff/mockAPI.js +113 -0
- package/dist/js/treeshaking/cli/bff/setup.js +33 -0
- package/dist/js/treeshaking/cli/bff/utils/index.js +22 -0
- package/dist/js/treeshaking/cli/index.js +2 -2
- package/dist/js/treeshaking/cli/test.js +1 -1
- package/dist/js/treeshaking/runtime-testing/base.js +1 -1
- package/dist/js/treeshaking/runtime-testing/request.js +24 -0
- package/dist/types/base/config/index.d.ts +124 -0
- package/dist/types/base/config/patches/assetsModule.d.ts +6 -0
- package/dist/types/base/config/patches/filemock.d.ts +3 -0
- package/dist/types/base/config/patches/index.d.ts +2 -0
- package/dist/types/base/config/patches/transformer.d.ts +6 -0
- package/dist/types/base/config/resolver.d.ts +1 -0
- package/dist/types/base/config/testConfigOperator.d.ts +248 -0
- package/dist/types/base/config/transformer/babelTransformer.d.ts +2 -0
- package/dist/types/base/hook.d.ts +13 -0
- package/dist/types/base/index.d.ts +6 -0
- package/dist/types/base/runJest.d.ts +22 -0
- package/dist/types/base/types/index.d.ts +1 -0
- package/dist/types/base/utils.d.ts +12 -0
- package/dist/types/cli/bff/app.d.ts +6 -0
- package/dist/types/cli/bff/constant.d.ts +1 -0
- package/dist/types/cli/bff/env.d.ts +6 -0
- package/dist/types/cli/bff/index.d.ts +19 -0
- package/dist/types/cli/bff/mockAPI.d.ts +3 -0
- package/dist/types/cli/bff/setup.d.ts +1 -0
- package/dist/types/cli/bff/utils/index.d.ts +1 -0
- package/dist/types/cli/index.d.ts +1 -1
- package/dist/types/runtime-testing/base.d.ts +1 -1
- package/dist/types/runtime-testing/request.d.ts +4 -0
- package/package.json +23 -10
@@ -0,0 +1,145 @@
|
|
1
|
+
import _regeneratorRuntime from "@babel/runtime/helpers/esm/regeneratorRuntime";
|
2
|
+
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
3
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
4
|
+
import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
|
5
|
+
import path from 'path';
|
6
|
+
import { isApiOnly } from '@modern-js/utils';
|
7
|
+
import { getModuleNameMapper, DEFAULT_RESOLVER_PATH } from "../../base";
|
8
|
+
import { bff_info_key } from "./constant";
|
9
|
+
import { isBFFProject } from "./utils";
|
10
|
+
export var setJestConfigForBFF = /*#__PURE__*/function () {
|
11
|
+
var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(_ref) {
|
12
|
+
var _userConfig$source;
|
13
|
+
|
14
|
+
var pwd, userConfig, plugins, routes, utils, bffConfig, jestConfig, alias, aliasMapper, transform, moduleNameMapper, apiOnly, mergedModuleNameMapper, resolver, configFields, commonConfig;
|
15
|
+
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
16
|
+
while (1) {
|
17
|
+
switch (_context.prev = _context.next) {
|
18
|
+
case 0:
|
19
|
+
pwd = _ref.pwd, userConfig = _ref.userConfig, plugins = _ref.plugins, routes = _ref.routes, utils = _ref.utils;
|
20
|
+
bffConfig = {
|
21
|
+
rootDir: path.join(pwd, './api'),
|
22
|
+
setupFilesAfterEnv: [require.resolve("./setup")],
|
23
|
+
testEnvironment: require.resolve("./env"),
|
24
|
+
testMatch: ["**/api/**/*.test.[jt]s"],
|
25
|
+
globals: _defineProperty({}, bff_info_key, {
|
26
|
+
appDir: pwd,
|
27
|
+
modernUserConfig: userConfig,
|
28
|
+
plugins: plugins,
|
29
|
+
routes: routes
|
30
|
+
})
|
31
|
+
};
|
32
|
+
jestConfig = utils.jestConfig;
|
33
|
+
alias = (userConfig === null || userConfig === void 0 ? void 0 : (_userConfig$source = userConfig.source) === null || _userConfig$source === void 0 ? void 0 : _userConfig$source.alias) || {};
|
34
|
+
aliasMapper = getModuleNameMapper(alias);
|
35
|
+
transform = jestConfig.transform, moduleNameMapper = jestConfig.moduleNameMapper;
|
36
|
+
_context.next = 8;
|
37
|
+
return isApiOnly(pwd);
|
38
|
+
|
39
|
+
case 8:
|
40
|
+
apiOnly = _context.sent;
|
41
|
+
mergedModuleNameMapper = _objectSpread(_objectSpread({}, moduleNameMapper), aliasMapper);
|
42
|
+
resolver = jestConfig.resolver || DEFAULT_RESOLVER_PATH; // 这三个配置不能设置在 projects 中,需要设置在外层(https://github.com/facebook/jest/issues/9696)
|
43
|
+
|
44
|
+
configFields = ['coverage', 'collectCoverage', 'testTimeout'];
|
45
|
+
commonConfig = configFields.reduce(function (obj, field) {
|
46
|
+
if (jestConfig.hasOwnProperty(field)) {
|
47
|
+
obj[field] = jestConfig[field];
|
48
|
+
}
|
49
|
+
|
50
|
+
return obj;
|
51
|
+
}, {});
|
52
|
+
|
53
|
+
if (!apiOnly) {
|
54
|
+
utils.setJestConfig({
|
55
|
+
projects: [_objectSpread({}, jestConfig), _objectSpread({
|
56
|
+
transform: transform,
|
57
|
+
moduleNameMapper: mergedModuleNameMapper,
|
58
|
+
resolver: resolver
|
59
|
+
}, bffConfig)]
|
60
|
+
}, {
|
61
|
+
force: true
|
62
|
+
});
|
63
|
+
} else {
|
64
|
+
utils.setJestConfig({
|
65
|
+
projects: [_objectSpread({
|
66
|
+
transform: transform,
|
67
|
+
moduleNameMapper: mergedModuleNameMapper,
|
68
|
+
resolver: resolver
|
69
|
+
}, bffConfig)]
|
70
|
+
}, {
|
71
|
+
force: true
|
72
|
+
});
|
73
|
+
}
|
74
|
+
|
75
|
+
utils.setJestConfig(commonConfig);
|
76
|
+
|
77
|
+
case 15:
|
78
|
+
case "end":
|
79
|
+
return _context.stop();
|
80
|
+
}
|
81
|
+
}
|
82
|
+
}, _callee);
|
83
|
+
}));
|
84
|
+
|
85
|
+
return function setJestConfigForBFF(_x) {
|
86
|
+
return _ref2.apply(this, arguments);
|
87
|
+
};
|
88
|
+
}();
|
89
|
+
export default (function () {
|
90
|
+
return {
|
91
|
+
name: '@modern-js/testing-plugin-bff',
|
92
|
+
setup: function setup(api) {
|
93
|
+
return {
|
94
|
+
jestConfig: function () {
|
95
|
+
var _jestConfig = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(utils, next) {
|
96
|
+
var appContext, pwd, userConfig, plugins;
|
97
|
+
return _regeneratorRuntime().wrap(function _callee2$(_context2) {
|
98
|
+
while (1) {
|
99
|
+
switch (_context2.prev = _context2.next) {
|
100
|
+
case 0:
|
101
|
+
appContext = api.useAppContext();
|
102
|
+
pwd = appContext.appDirectory;
|
103
|
+
|
104
|
+
if (isBFFProject(pwd)) {
|
105
|
+
_context2.next = 4;
|
106
|
+
break;
|
107
|
+
}
|
108
|
+
|
109
|
+
return _context2.abrupt("return", next(utils));
|
110
|
+
|
111
|
+
case 4:
|
112
|
+
userConfig = api.useResolvedConfigContext();
|
113
|
+
plugins = appContext.plugins.map(function (p) {
|
114
|
+
return p.server;
|
115
|
+
}).filter(Boolean);
|
116
|
+
_context2.next = 8;
|
117
|
+
return setJestConfigForBFF({
|
118
|
+
pwd: pwd,
|
119
|
+
userConfig: userConfig,
|
120
|
+
plugins: plugins,
|
121
|
+
routes: appContext.serverRoutes,
|
122
|
+
utils: utils
|
123
|
+
});
|
124
|
+
|
125
|
+
case 8:
|
126
|
+
return _context2.abrupt("return", next(utils));
|
127
|
+
|
128
|
+
case 9:
|
129
|
+
case "end":
|
130
|
+
return _context2.stop();
|
131
|
+
}
|
132
|
+
}
|
133
|
+
}, _callee2);
|
134
|
+
}));
|
135
|
+
|
136
|
+
function jestConfig(_x2, _x3) {
|
137
|
+
return _jestConfig.apply(this, arguments);
|
138
|
+
}
|
139
|
+
|
140
|
+
return jestConfig;
|
141
|
+
}()
|
142
|
+
};
|
143
|
+
}
|
144
|
+
};
|
145
|
+
});
|
@@ -0,0 +1,113 @@
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
2
|
+
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
3
|
+
import _typeof from "@babel/runtime/helpers/esm/typeof";
|
4
|
+
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
5
|
+
import * as ptr from 'path-to-regexp';
|
6
|
+
import * as mock_appModule from "./app"; // eslint-disable-next-line @typescript-eslint/naming-convention
|
7
|
+
|
8
|
+
var mock_replaceUrlWithParams = function mock_replaceUrlWithParams(url, paramValues, payload) {
|
9
|
+
var keys = [];
|
10
|
+
ptr.pathToRegexp(url, keys);
|
11
|
+
var params = keys.reduce(function (cur, key, index) {
|
12
|
+
if (paramValues[index]) {
|
13
|
+
cur[key.name] = paramValues[index];
|
14
|
+
}
|
15
|
+
|
16
|
+
return cur;
|
17
|
+
}, {});
|
18
|
+
var getFinalPath = ptr.compile(url, {
|
19
|
+
encode: encodeURIComponent
|
20
|
+
});
|
21
|
+
return getFinalPath(_objectSpread(_objectSpread({}, params), payload));
|
22
|
+
}; // eslint-disable-next-line @typescript-eslint/naming-convention
|
23
|
+
|
24
|
+
|
25
|
+
var mock_getParamsAndPayload = function mock_getParamsAndPayload(args) {
|
26
|
+
if (args.length === 0) {
|
27
|
+
return [[], {}];
|
28
|
+
}
|
29
|
+
|
30
|
+
var head = args[0];
|
31
|
+
|
32
|
+
if (_typeof(head) === 'object') {
|
33
|
+
return [[], head];
|
34
|
+
} else {
|
35
|
+
var latest = args[args.length - 1];
|
36
|
+
|
37
|
+
if (_typeof(latest) === 'object') {
|
38
|
+
return [args.slice(0, args.length - 1), latest];
|
39
|
+
} else {
|
40
|
+
return [args, {}];
|
41
|
+
}
|
42
|
+
}
|
43
|
+
};
|
44
|
+
|
45
|
+
export default (function (mock_apiInfosByFile, mock_app) {
|
46
|
+
var files = Object.keys(mock_apiInfosByFile);
|
47
|
+
files.forEach(function (mockedFile) {
|
48
|
+
jest.mock(mockedFile, function () {
|
49
|
+
var supertest = require('supertest');
|
50
|
+
|
51
|
+
return mock_apiInfosByFile[mockedFile].reduce(function (res, info) {
|
52
|
+
var module = _defineProperty({}, info.name, function () {
|
53
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
54
|
+
args[_key] = arguments[_key];
|
55
|
+
}
|
56
|
+
|
57
|
+
if (mock_appModule.isInHandler()) {
|
58
|
+
return info.handler.apply(info, args);
|
59
|
+
}
|
60
|
+
|
61
|
+
var _mock_getParamsAndPay = mock_getParamsAndPayload(args),
|
62
|
+
_mock_getParamsAndPay2 = _slicedToArray(_mock_getParamsAndPay, 2),
|
63
|
+
params = _mock_getParamsAndPay2[0],
|
64
|
+
payload = _mock_getParamsAndPay2[1];
|
65
|
+
|
66
|
+
var _ref = module[info.name],
|
67
|
+
returnHttp = _ref.returnHttp;
|
68
|
+
var url = mock_replaceUrlWithParams(info.routePath, params, payload.params);
|
69
|
+
var test = supertest(mock_app)[info.httpMethod.toLowerCase()](url);
|
70
|
+
|
71
|
+
if (payload.query) {
|
72
|
+
test = test.query(payload.query);
|
73
|
+
}
|
74
|
+
|
75
|
+
if (payload.body) {
|
76
|
+
test = test.send(payload.body);
|
77
|
+
}
|
78
|
+
|
79
|
+
if (payload.data) {
|
80
|
+
test = test.send(payload.data);
|
81
|
+
}
|
82
|
+
|
83
|
+
if (payload.headers) {
|
84
|
+
for (var name in payload.headers) {
|
85
|
+
test = test.set(name, payload.headers[name]);
|
86
|
+
}
|
87
|
+
}
|
88
|
+
|
89
|
+
if (payload.cookies) {
|
90
|
+
test = test.set('Cookie', [payload.cookies]);
|
91
|
+
}
|
92
|
+
|
93
|
+
if (returnHttp) {
|
94
|
+
return test;
|
95
|
+
}
|
96
|
+
|
97
|
+
return test.then(function (value) {
|
98
|
+
try {
|
99
|
+
return JSON.parse(value.text);
|
100
|
+
} catch (_unused) {
|
101
|
+
return value.text;
|
102
|
+
}
|
103
|
+
});
|
104
|
+
});
|
105
|
+
|
106
|
+
res[info.name] = module[info.name];
|
107
|
+
Object.assign(res[info.name], info.handler);
|
108
|
+
res.__esModule = true;
|
109
|
+
return res;
|
110
|
+
}, {});
|
111
|
+
});
|
112
|
+
});
|
113
|
+
});
|
@@ -0,0 +1,33 @@
|
|
1
|
+
import path from 'path';
|
2
|
+
import { ApiRouter } from '@modern-js/bff-core';
|
3
|
+
import { bff_info_key } from "./constant";
|
4
|
+
import mockAPI from "./mockAPI";
|
5
|
+
var uped = false;
|
6
|
+
|
7
|
+
var setup = function setup() {
|
8
|
+
var _bff_info$modernUserC, _bff_info$modernUserC2;
|
9
|
+
|
10
|
+
if (uped) {
|
11
|
+
return;
|
12
|
+
}
|
13
|
+
|
14
|
+
uped = true;
|
15
|
+
var bff_info = global[bff_info_key];
|
16
|
+
var prefix = bff_info === null || bff_info === void 0 ? void 0 : (_bff_info$modernUserC = bff_info.modernUserConfig) === null || _bff_info$modernUserC === void 0 ? void 0 : (_bff_info$modernUserC2 = _bff_info$modernUserC.bff) === null || _bff_info$modernUserC2 === void 0 ? void 0 : _bff_info$modernUserC2.prefix;
|
17
|
+
var apiRouter = new ApiRouter({
|
18
|
+
apiDir: path.join(bff_info.appDir, './api'),
|
19
|
+
prefix: prefix
|
20
|
+
});
|
21
|
+
var apiInfos = apiRouter.getApiHandlers();
|
22
|
+
var apiInfosByFile = apiInfos.reduce(function (res, apiInfo) {
|
23
|
+
if (!res[apiInfo.filename]) {
|
24
|
+
res[apiInfo.filename] = [];
|
25
|
+
}
|
26
|
+
|
27
|
+
res[apiInfo.filename].push(apiInfo);
|
28
|
+
return res;
|
29
|
+
}, {});
|
30
|
+
mockAPI(apiInfosByFile, global.app);
|
31
|
+
};
|
32
|
+
|
33
|
+
setup();
|
@@ -0,0 +1,22 @@
|
|
1
|
+
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
2
|
+
import path from 'path';
|
3
|
+
import { chalk } from '@modern-js/utils';
|
4
|
+
export var isBFFProject = function isBFFProject(pwd) {
|
5
|
+
try {
|
6
|
+
var packageJson = require(path.join(pwd, './package.json'));
|
7
|
+
|
8
|
+
var dependencies = packageJson.dependencies,
|
9
|
+
devDependencies = packageJson.devDependencies;
|
10
|
+
var isBFF = Object.keys(_objectSpread(_objectSpread({}, dependencies), devDependencies)).some(function (dependency) {
|
11
|
+
return dependency.includes('plugin-bff');
|
12
|
+
});
|
13
|
+
var isMWA = Object.keys(devDependencies).some(function (devDependency) {
|
14
|
+
return devDependency.includes('app-tools');
|
15
|
+
});
|
16
|
+
return isMWA && isBFF;
|
17
|
+
} catch (error) {
|
18
|
+
// eslint-disable-next-line no-console
|
19
|
+
console.log(chalk.red(error));
|
20
|
+
return false;
|
21
|
+
}
|
22
|
+
};
|
@@ -3,10 +3,10 @@ import _regeneratorRuntime from "@babel/runtime/helpers/esm/regeneratorRuntime";
|
|
3
3
|
import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
|
4
4
|
import path from 'path';
|
5
5
|
import { PLUGIN_SCHEMAS, createRuntimeExportsUtils, isApiOnly } from '@modern-js/utils';
|
6
|
-
import { testingHooks, getModuleNameMapper, DEFAULT_RESOLVER_PATH } from '@modern-js/testing';
|
7
6
|
import { getWebpackConfig, WebpackConfigTarget } from '@modern-js/webpack';
|
8
|
-
import
|
7
|
+
import { testingHooks, getModuleNameMapper, DEFAULT_RESOLVER_PATH } from "../base";
|
9
8
|
import { MODERNJS_CONFIG_KEY } from "../constant";
|
9
|
+
import TestingBffPlugin from "./bff";
|
10
10
|
import test from "./test";
|
11
11
|
export var mergeUserJestConfig = function mergeUserJestConfig(testUtils) {
|
12
12
|
var resolveJestConfig = testUtils.testConfig.jest; // resolveJestConfig 如果是函数类型,在所有测试插件 jestConfig 都执行后,再执行生成最终配置
|
@@ -2,7 +2,7 @@ import _regeneratorRuntime from "@babel/runtime/helpers/esm/regeneratorRuntime";
|
|
2
2
|
import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
|
3
3
|
import path from 'path';
|
4
4
|
import { compiler } from '@modern-js/babel-compiler';
|
5
|
-
import { runTest } from
|
5
|
+
import { runTest } from "../base";
|
6
6
|
|
7
7
|
var test = /*#__PURE__*/function () {
|
8
8
|
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(api) {
|
@@ -0,0 +1,24 @@
|
|
1
|
+
import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
|
2
|
+
|
3
|
+
/* eslint-disable eslint-comments/disable-enable-pair */
|
4
|
+
import supertest from 'supertest';
|
5
|
+
|
6
|
+
function request() {
|
7
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
8
|
+
args[_key] = arguments[_key];
|
9
|
+
}
|
10
|
+
|
11
|
+
var fn = args[0],
|
12
|
+
extraArgs = args.slice(1);
|
13
|
+
|
14
|
+
if (!fn) {
|
15
|
+
return supertest(global.app);
|
16
|
+
}
|
17
|
+
|
18
|
+
fn.returnHttp = true;
|
19
|
+
var res = fn.apply(void 0, _toConsumableArray(extraArgs));
|
20
|
+
fn.returnHttp = false;
|
21
|
+
return res;
|
22
|
+
}
|
23
|
+
|
24
|
+
export { request };
|
@@ -0,0 +1,124 @@
|
|
1
|
+
import { TestConfig } from '../types';
|
2
|
+
import { TestConfigOperator } from './testConfigOperator';
|
3
|
+
/**
|
4
|
+
* Parse jest config
|
5
|
+
*/
|
6
|
+
|
7
|
+
declare const getJestUtils: (testConfig: TestConfig) => TestConfigOperator;
|
8
|
+
declare const patchConfig: (testOperator: TestConfigOperator) => Promise<Partial<{
|
9
|
+
automock: boolean;
|
10
|
+
bail: number | boolean;
|
11
|
+
cache: boolean;
|
12
|
+
cacheDirectory: string;
|
13
|
+
ci: boolean;
|
14
|
+
clearMocks: boolean;
|
15
|
+
changedFilesWithAncestor: boolean;
|
16
|
+
changedSince: string;
|
17
|
+
collectCoverage: boolean;
|
18
|
+
collectCoverageFrom: string[];
|
19
|
+
collectCoverageOnlyFrom: {
|
20
|
+
[key: string]: boolean;
|
21
|
+
};
|
22
|
+
coverageDirectory: string;
|
23
|
+
coveragePathIgnorePatterns: string[];
|
24
|
+
coverageProvider: "babel" | "v8";
|
25
|
+
coverageReporters: import("@jest/types/build/Config").CoverageReporters;
|
26
|
+
coverageThreshold: {
|
27
|
+
[path: string]: import("@jest/types/build/Config").CoverageThresholdValue;
|
28
|
+
global: import("@jest/types/build/Config").CoverageThresholdValue;
|
29
|
+
};
|
30
|
+
dependencyExtractor: string;
|
31
|
+
detectLeaks: boolean;
|
32
|
+
detectOpenHandles: boolean;
|
33
|
+
displayName: string | import("@jest/types/build/Config").DisplayName;
|
34
|
+
expand: boolean;
|
35
|
+
extensionsToTreatAsEsm: string[];
|
36
|
+
extraGlobals: string[];
|
37
|
+
filter: string;
|
38
|
+
findRelatedTests: boolean;
|
39
|
+
forceCoverageMatch: string[];
|
40
|
+
forceExit: boolean;
|
41
|
+
json: boolean;
|
42
|
+
globals: import("@jest/types/build/Config").ConfigGlobals;
|
43
|
+
globalSetup: string | null | undefined;
|
44
|
+
globalTeardown: string | null | undefined;
|
45
|
+
haste: import("@jest/types/build/Config").HasteConfig;
|
46
|
+
injectGlobals: boolean;
|
47
|
+
reporters: (string | import("@jest/types/build/Config").ReporterConfig)[];
|
48
|
+
logHeapUsage: boolean;
|
49
|
+
lastCommit: boolean;
|
50
|
+
listTests: boolean;
|
51
|
+
maxConcurrency: number;
|
52
|
+
maxWorkers: string | number;
|
53
|
+
moduleDirectories: string[];
|
54
|
+
moduleFileExtensions: string[];
|
55
|
+
moduleLoader: string;
|
56
|
+
moduleNameMapper: {
|
57
|
+
[key: string]: string | string[];
|
58
|
+
};
|
59
|
+
modulePathIgnorePatterns: string[];
|
60
|
+
modulePaths: string[];
|
61
|
+
name: string;
|
62
|
+
noStackTrace: boolean;
|
63
|
+
notify: boolean;
|
64
|
+
notifyMode: string;
|
65
|
+
onlyChanged: boolean;
|
66
|
+
onlyFailures: boolean;
|
67
|
+
outputFile: string;
|
68
|
+
passWithNoTests: boolean;
|
69
|
+
preprocessorIgnorePatterns: string[];
|
70
|
+
preset: string | null | undefined;
|
71
|
+
prettierPath: string | null | undefined;
|
72
|
+
projects: (string | import("@jest/types/build/Config").InitialProjectOptions)[];
|
73
|
+
replname: string | null | undefined;
|
74
|
+
resetMocks: boolean;
|
75
|
+
resetModules: boolean;
|
76
|
+
resolver: string | null | undefined;
|
77
|
+
restoreMocks: boolean;
|
78
|
+
rootDir: string;
|
79
|
+
roots: string[];
|
80
|
+
runner: string;
|
81
|
+
runTestsByPath: boolean;
|
82
|
+
scriptPreprocessor: string;
|
83
|
+
setupFiles: string[];
|
84
|
+
setupTestFrameworkScriptFile: string;
|
85
|
+
setupFilesAfterEnv: string[];
|
86
|
+
silent: boolean;
|
87
|
+
skipFilter: boolean;
|
88
|
+
skipNodeResolution: boolean;
|
89
|
+
slowTestThreshold: number;
|
90
|
+
snapshotResolver: string;
|
91
|
+
snapshotSerializers: string[];
|
92
|
+
snapshotFormat: import("@jest/types/build/Config").PrettyFormatOptions;
|
93
|
+
errorOnDeprecated: boolean;
|
94
|
+
testEnvironment: string;
|
95
|
+
testEnvironmentOptions: Record<string, unknown>;
|
96
|
+
testFailureExitCode: string | number;
|
97
|
+
testLocationInResults: boolean;
|
98
|
+
testMatch: string[];
|
99
|
+
testNamePattern: string;
|
100
|
+
testPathDirs: string[];
|
101
|
+
testPathIgnorePatterns: string[];
|
102
|
+
testRegex: string | string[];
|
103
|
+
testResultsProcessor: string;
|
104
|
+
testRunner: string;
|
105
|
+
testSequencer: string;
|
106
|
+
testURL: string;
|
107
|
+
testTimeout: number;
|
108
|
+
timers: "modern" | "real" | "fake" | "legacy";
|
109
|
+
transform: {
|
110
|
+
[regex: string]: string | import("@jest/types/build/Config").TransformerConfig;
|
111
|
+
};
|
112
|
+
transformIgnorePatterns: string[];
|
113
|
+
watchPathIgnorePatterns: string[];
|
114
|
+
unmockedModulePathPatterns: string[];
|
115
|
+
updateSnapshot: boolean;
|
116
|
+
useStderr: boolean;
|
117
|
+
verbose?: boolean | undefined;
|
118
|
+
watch: boolean;
|
119
|
+
watchAll: boolean;
|
120
|
+
watchman: boolean;
|
121
|
+
watchPlugins: (string | [string, Record<string, unknown>])[];
|
122
|
+
}>>;
|
123
|
+
export declare const DEFAULT_RESOLVER_PATH: string;
|
124
|
+
export { getJestUtils, patchConfig };
|
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|