@modern-js/plugin-testing 2.15.0 → 2.16.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.
Files changed (88) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/dist/cjs/base/config/index.js +15 -39
  3. package/dist/cjs/base/config/patches/assetsModule.js +7 -35
  4. package/dist/cjs/base/config/patches/filemock.js +8 -24
  5. package/dist/cjs/base/config/patches/index.js +13 -28
  6. package/dist/cjs/base/config/patches/transformer.js +13 -38
  7. package/dist/cjs/base/config/resolver.js +23 -26
  8. package/dist/cjs/base/config/testConfigOperator.js +39 -38
  9. package/dist/cjs/base/config/transformer/babelTransformer.js +16 -37
  10. package/dist/cjs/base/hook.js +17 -31
  11. package/dist/cjs/base/index.js +36 -41
  12. package/dist/cjs/base/runJest.js +31 -57
  13. package/dist/cjs/base/types/index.js +4 -15
  14. package/dist/cjs/base/utils.js +30 -53
  15. package/dist/cjs/cli/bff/app.js +17 -32
  16. package/dist/cjs/cli/bff/constant.js +7 -25
  17. package/dist/cjs/cli/bff/index.js +71 -92
  18. package/dist/cjs/cli/bff/mockAPI.js +115 -92
  19. package/dist/cjs/cli/bff/setup.js +30 -51
  20. package/dist/cjs/cli/bff/utils/index.js +21 -45
  21. package/dist/cjs/cli/index.js +43 -59
  22. package/dist/cjs/cli/test.js +35 -62
  23. package/dist/cjs/constant.js +7 -25
  24. package/dist/cjs/index.js +20 -19
  25. package/dist/cjs/runtime-testing/app.js +40 -45
  26. package/dist/cjs/runtime-testing/base.js +34 -40
  27. package/dist/cjs/runtime-testing/customRender.js +21 -39
  28. package/dist/cjs/runtime-testing/index.js +19 -18
  29. package/dist/cjs/runtime-testing/reduck.js +35 -55
  30. package/dist/cjs/runtime-testing/request.js +16 -39
  31. package/dist/cjs/runtime-testing/resolvePlugins.js +12 -25
  32. package/dist/esm/base/config/index.js +146 -139
  33. package/dist/esm/base/config/patches/assetsModule.js +7 -8
  34. package/dist/esm/base/config/patches/filemock.js +1 -2
  35. package/dist/esm/base/config/patches/index.js +214 -207
  36. package/dist/esm/base/config/patches/transformer.js +27 -28
  37. package/dist/esm/base/config/resolver.js +22 -35
  38. package/dist/esm/base/config/testConfigOperator.js +119 -116
  39. package/dist/esm/base/config/transformer/babelTransformer.js +12 -13
  40. package/dist/esm/base/hook.js +5 -6
  41. package/dist/esm/base/index.js +5 -6
  42. package/dist/esm/base/runJest.js +270 -264
  43. package/dist/esm/base/types/index.js +1 -1
  44. package/dist/esm/base/utils.js +66 -67
  45. package/dist/esm/cli/bff/app.js +187 -179
  46. package/dist/esm/cli/bff/constant.js +1 -2
  47. package/dist/esm/cli/bff/index.js +285 -278
  48. package/dist/esm/cli/bff/mockAPI.js +177 -163
  49. package/dist/esm/cli/bff/setup.js +182 -174
  50. package/dist/esm/cli/bff/utils/index.js +40 -41
  51. package/dist/esm/cli/index.js +249 -242
  52. package/dist/esm/cli/test.js +172 -166
  53. package/dist/esm/constant.js +1 -2
  54. package/dist/esm/runtime-testing/app.js +79 -77
  55. package/dist/esm/runtime-testing/base.js +2 -3
  56. package/dist/esm/runtime-testing/customRender.js +30 -31
  57. package/dist/esm/runtime-testing/reduck.js +72 -73
  58. package/dist/esm/runtime-testing/request.js +55 -45
  59. package/dist/esm/runtime-testing/resolvePlugins.js +38 -39
  60. package/dist/esm-node/base/config/index.js +2 -6
  61. package/dist/esm-node/base/config/patches/assetsModule.js +1 -4
  62. package/dist/esm-node/base/config/patches/filemock.js +1 -4
  63. package/dist/esm-node/base/config/patches/index.js +5 -5
  64. package/dist/esm-node/base/config/patches/transformer.js +5 -5
  65. package/dist/esm-node/base/config/resolver.js +20 -19
  66. package/dist/esm-node/base/config/testConfigOperator.js +30 -13
  67. package/dist/esm-node/base/config/transformer/babelTransformer.js +3 -6
  68. package/dist/esm-node/base/hook.js +3 -8
  69. package/dist/esm-node/base/index.js +5 -13
  70. package/dist/esm-node/base/runJest.js +8 -20
  71. package/dist/esm-node/base/types/index.js +1 -0
  72. package/dist/esm-node/base/utils.js +8 -17
  73. package/dist/esm-node/cli/bff/app.js +2 -7
  74. package/dist/esm-node/cli/bff/constant.js +1 -4
  75. package/dist/esm-node/cli/bff/index.js +43 -54
  76. package/dist/esm-node/cli/bff/mockAPI.js +65 -59
  77. package/dist/esm-node/cli/bff/setup.js +11 -19
  78. package/dist/esm-node/cli/bff/utils/index.js +6 -10
  79. package/dist/esm-node/cli/index.js +11 -23
  80. package/dist/esm-node/cli/test.js +19 -28
  81. package/dist/esm-node/constant.js +1 -4
  82. package/dist/esm-node/runtime-testing/app.js +22 -10
  83. package/dist/esm-node/runtime-testing/base.js +2 -6
  84. package/dist/esm-node/runtime-testing/customRender.js +5 -5
  85. package/dist/esm-node/runtime-testing/reduck.js +10 -16
  86. package/dist/esm-node/runtime-testing/request.js +1 -3
  87. package/dist/esm-node/runtime-testing/resolvePlugins.js +6 -6
  88. package/package.json +18 -14
@@ -1,126 +1,133 @@
1
1
  function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
2
- try {
3
- var info = gen[key](arg);
4
- var value = info.value;
5
- } catch (error) {
6
- reject(error);
7
- return;
8
- }
9
- if (info.done) {
10
- resolve(value);
11
- } else {
12
- Promise.resolve(value).then(_next, _throw);
13
- }
2
+ try {
3
+ var info = gen[key](arg);
4
+ var value = info.value;
5
+ } catch (error) {
6
+ reject(error);
7
+ return;
8
+ }
9
+ if (info.done) {
10
+ resolve(value);
11
+ } else {
12
+ Promise.resolve(value).then(_next, _throw);
13
+ }
14
14
  }
15
- function _asyncToGenerator(fn) {
16
- return function() {
17
- var self = this, args = arguments;
18
- return new Promise(function(resolve, reject) {
19
- var gen = fn.apply(self, args);
20
- function _next(value) {
21
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
22
- }
23
- function _throw(err) {
24
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
25
- }
26
- _next(undefined);
27
- });
28
- };
15
+ function _async_to_generator(fn) {
16
+ return function() {
17
+ var self = this, args = arguments;
18
+ return new Promise(function(resolve, reject) {
19
+ var gen = fn.apply(self, args);
20
+ function _next(value) {
21
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
22
+ }
23
+ function _throw(err) {
24
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
25
+ }
26
+ _next(void 0);
27
+ });
28
+ };
29
29
  }
30
- var __generator = this && this.__generator || function(thisArg, body) {
31
- var f, y, t, g, _ = {
32
- label: 0,
33
- sent: function() {
34
- if (t[0] & 1) throw t[1];
35
- return t[1];
36
- },
37
- trys: [],
38
- ops: []
30
+ var __generator = function(thisArg, body) {
31
+ var f, y, t, g, _ = {
32
+ label: 0,
33
+ sent: function() {
34
+ if (t[0] & 1)
35
+ throw t[1];
36
+ return t[1];
37
+ },
38
+ trys: [],
39
+ ops: []
40
+ };
41
+ return g = {
42
+ next: verb(0),
43
+ "throw": verb(1),
44
+ "return": verb(2)
45
+ }, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
46
+ return this;
47
+ }), g;
48
+ function verb(n) {
49
+ return function(v) {
50
+ return step([
51
+ n,
52
+ v
53
+ ]);
39
54
  };
40
- return(g = {
41
- next: verb(0),
42
- "throw": verb(1),
43
- "return": verb(2)
44
- }, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
45
- return this;
46
- }), g);
47
- function verb(n) {
48
- return function(v) {
49
- return step([
50
- n,
51
- v
52
- ]);
53
- };
54
- }
55
- function step(op) {
56
- if (f) throw new TypeError("Generator is already executing.");
57
- while(_)try {
58
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
59
- if (y = 0, t) op = [
60
- op[0] & 2,
61
- t.value
62
- ];
63
- switch(op[0]){
64
- case 0:
65
- case 1:
66
- t = op;
67
- break;
68
- case 4:
69
- _.label++;
70
- return {
71
- value: op[1],
72
- done: false
73
- };
74
- case 5:
75
- _.label++;
76
- y = op[1];
77
- op = [
78
- 0
79
- ];
80
- continue;
81
- case 7:
82
- op = _.ops.pop();
83
- _.trys.pop();
84
- continue;
85
- default:
86
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
87
- _ = 0;
88
- continue;
89
- }
90
- if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
91
- _.label = op[1];
92
- break;
93
- }
94
- if (op[0] === 6 && _.label < t[1]) {
95
- _.label = t[1];
96
- t = op;
97
- break;
98
- }
99
- if (t && _.label < t[2]) {
100
- _.label = t[2];
101
- _.ops.push(op);
102
- break;
103
- }
104
- if (t[2]) _.ops.pop();
105
- _.trys.pop();
106
- continue;
107
- }
108
- op = body.call(thisArg, _);
109
- } catch (e) {
55
+ }
56
+ function step(op) {
57
+ if (f)
58
+ throw new TypeError("Generator is already executing.");
59
+ while (_)
60
+ try {
61
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done)
62
+ return t;
63
+ if (y = 0, t)
64
+ op = [
65
+ op[0] & 2,
66
+ t.value
67
+ ];
68
+ switch (op[0]) {
69
+ case 0:
70
+ case 1:
71
+ t = op;
72
+ break;
73
+ case 4:
74
+ _.label++;
75
+ return {
76
+ value: op[1],
77
+ done: false
78
+ };
79
+ case 5:
80
+ _.label++;
81
+ y = op[1];
110
82
  op = [
111
- 6,
112
- e
83
+ 0
113
84
  ];
114
- y = 0;
115
- } finally{
116
- f = t = 0;
85
+ continue;
86
+ case 7:
87
+ op = _.ops.pop();
88
+ _.trys.pop();
89
+ continue;
90
+ default:
91
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
92
+ _ = 0;
93
+ continue;
94
+ }
95
+ if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
96
+ _.label = op[1];
97
+ break;
98
+ }
99
+ if (op[0] === 6 && _.label < t[1]) {
100
+ _.label = t[1];
101
+ t = op;
102
+ break;
103
+ }
104
+ if (t && _.label < t[2]) {
105
+ _.label = t[2];
106
+ _.ops.push(op);
107
+ break;
108
+ }
109
+ if (t[2])
110
+ _.ops.pop();
111
+ _.trys.pop();
112
+ continue;
117
113
  }
118
- if (op[0] & 5) throw op[1];
119
- return {
120
- value: op[0] ? op[1] : void 0,
121
- done: true
122
- };
123
- }
114
+ op = body.call(thisArg, _);
115
+ } catch (e) {
116
+ op = [
117
+ 6,
118
+ e
119
+ ];
120
+ y = 0;
121
+ } finally {
122
+ f = t = 0;
123
+ }
124
+ if (op[0] & 5)
125
+ throw op[1];
126
+ return {
127
+ value: op[0] ? op[1] : void 0,
128
+ done: true
129
+ };
130
+ }
124
131
  };
125
132
  import yargs from "yargs/yargs";
126
133
  import { runCLI } from "jest";
@@ -128,165 +135,164 @@ import { chalk } from "@modern-js/utils";
128
135
  import { getJestUtils, patchConfig } from "./config";
129
136
  import { debug } from "./utils";
130
137
  var buildArgv = function() {
131
- var _ref = _asyncToGenerator(function(rawArgv, config) {
132
- var argv, result;
133
- return __generator(this, function(_state) {
134
- switch(_state.label){
135
- case 0:
136
- return [
137
- 4,
138
- yargs(rawArgv).argv
139
- ];
140
- case 1:
141
- argv = _state.sent();
142
- result = {
143
- $0: argv.$0,
144
- _: argv._.slice(1)
145
- };
146
- Object.keys(argv).forEach(function(key) {
147
- if (key.includes("-") || key === "_") {
148
- return;
149
- }
150
- result[key] = argv[key];
151
- });
152
- if (config) {
153
- result.config = JSON.stringify(config);
154
- }
155
- return [
156
- 2,
157
- result
158
- ];
138
+ var _ref = _async_to_generator(function(rawArgv, config) {
139
+ var argv, result;
140
+ return __generator(this, function(_state) {
141
+ switch (_state.label) {
142
+ case 0:
143
+ return [
144
+ 4,
145
+ yargs(rawArgv).argv
146
+ ];
147
+ case 1:
148
+ argv = _state.sent();
149
+ result = {
150
+ $0: argv.$0,
151
+ _: argv._.slice(1)
152
+ };
153
+ Object.keys(argv).forEach(function(key) {
154
+ if (key.includes("-") || key === "_") {
155
+ return;
159
156
  }
160
- });
157
+ result[key] = argv[key];
158
+ });
159
+ if (config) {
160
+ result.config = JSON.stringify(config);
161
+ }
162
+ return [
163
+ 2,
164
+ result
165
+ ];
166
+ }
161
167
  });
162
- return function buildArgv(rawArgv, config) {
163
- return _ref.apply(this, arguments);
164
- };
168
+ });
169
+ return function buildArgv2(rawArgv, config) {
170
+ return _ref.apply(this, arguments);
171
+ };
165
172
  }();
166
173
  var readResultsAndExit = function(result, globalConfig) {
167
- var code = !result || result.success ? 0 : globalConfig.testFailureExitCode;
168
- process.on("exit", function() {
169
- if (typeof code === "number" && code !== 0) {
170
- process.exitCode = code;
171
- }
172
- });
173
- if (globalConfig.forceExit) {
174
- if (!globalConfig.detectOpenHandles) {
175
- console.warn("".concat(chalk.bold("Force exiting Jest: "), "Have you considered using `--detectOpenHandles` to detect async operations that kept running after all tests finished?"));
176
- }
177
- process.exit(code);
178
- } else if (!globalConfig.detectOpenHandles) {
179
- setTimeout(function() {
180
- console.warn(chalk.yellow.bold("Jest did not exit one second after the test run has completed.\n\n") + chalk.yellow("This usually means that there are asynchronous operations that weren't stopped in your tests. Consider running Jest with `--detectOpenHandles` to troubleshoot this issue."));
181
- }, 1e3).unref();
174
+ var code = !result || result.success ? 0 : globalConfig.testFailureExitCode;
175
+ process.on("exit", function() {
176
+ if (typeof code === "number" && code !== 0) {
177
+ process.exitCode = code;
178
+ }
179
+ });
180
+ if (globalConfig.forceExit) {
181
+ if (!globalConfig.detectOpenHandles) {
182
+ console.warn("".concat(chalk.bold("Force exiting Jest: "), "Have you considered using `--detectOpenHandles` to detect ") + "async operations that kept running after all tests finished?");
182
183
  }
184
+ process.exit(code);
185
+ } else if (!globalConfig.detectOpenHandles) {
186
+ setTimeout(function() {
187
+ console.warn(chalk.yellow.bold("Jest did not exit one second after the test run has completed.\n\n") + chalk.yellow("This usually means that there are asynchronous operations that weren't stopped in your tests. Consider running Jest with `--detectOpenHandles` to troubleshoot this issue."));
188
+ }, 1e3).unref();
189
+ }
183
190
  };
184
- function runJest(config) {
185
- return _runJest.apply(this, arguments);
191
+ export function runJest(config) {
192
+ return _runJest.apply(this, arguments);
186
193
  }
187
194
  function _runJest() {
188
- _runJest = _asyncToGenerator(function(config) {
189
- var pwd, argvConfig, _ref, results, globalConfig, e;
190
- var _arguments = arguments;
191
- return __generator(this, function(_state) {
192
- switch(_state.label){
193
- case 0:
194
- pwd = _arguments.length > 1 && _arguments[1] !== void 0 ? _arguments[1] : process.cwd();
195
- _state.label = 1;
196
- case 1:
197
- _state.trys.push([
198
- 1,
199
- 4,
200
- ,
201
- 5
202
- ]);
203
- return [
204
- 4,
205
- buildArgv(process.argv.slice(2), config)
206
- ];
207
- case 2:
208
- argvConfig = _state.sent();
209
- return [
210
- 4,
211
- runCLI(argvConfig, [
212
- pwd
213
- ])
214
- ];
215
- case 3:
216
- _ref = _state.sent(), results = _ref.results, globalConfig = _ref.globalConfig;
217
- readResultsAndExit(results, globalConfig);
218
- return [
219
- 3,
220
- 5
221
- ];
222
- case 4:
223
- e = _state.sent();
224
- console.error(chalk.red((e === null || e === void 0 ? void 0 : e.stack) || e));
225
- process.exit(1);
226
- return [
227
- 3,
228
- 5
229
- ];
230
- case 5:
231
- return [
232
- 2
233
- ];
234
- }
235
- });
195
+ _runJest = _async_to_generator(function(config) {
196
+ var pwd, argvConfig, _ref, results, globalConfig, e;
197
+ var _arguments = arguments;
198
+ return __generator(this, function(_state) {
199
+ switch (_state.label) {
200
+ case 0:
201
+ pwd = _arguments.length > 1 && _arguments[1] !== void 0 ? _arguments[1] : process.cwd();
202
+ _state.label = 1;
203
+ case 1:
204
+ _state.trys.push([
205
+ 1,
206
+ 4,
207
+ ,
208
+ 5
209
+ ]);
210
+ return [
211
+ 4,
212
+ buildArgv(process.argv.slice(2), config)
213
+ ];
214
+ case 2:
215
+ argvConfig = _state.sent();
216
+ return [
217
+ 4,
218
+ runCLI(argvConfig, [
219
+ pwd
220
+ ])
221
+ ];
222
+ case 3:
223
+ _ref = _state.sent(), results = _ref.results, globalConfig = _ref.globalConfig;
224
+ readResultsAndExit(results, globalConfig);
225
+ return [
226
+ 3,
227
+ 5
228
+ ];
229
+ case 4:
230
+ e = _state.sent();
231
+ console.error(chalk.red((e === null || e === void 0 ? void 0 : e.stack) || e));
232
+ process.exit(1);
233
+ return [
234
+ 3,
235
+ 5
236
+ ];
237
+ case 5:
238
+ return [
239
+ 2
240
+ ];
241
+ }
236
242
  });
237
- return _runJest.apply(this, arguments);
243
+ });
244
+ return _runJest.apply(this, arguments);
238
245
  }
239
- function runTest(api, config) {
240
- return _runTest.apply(this, arguments);
246
+ export function runTest(api, config) {
247
+ return _runTest.apply(this, arguments);
241
248
  }
242
249
  function _runTest() {
243
- _runTest = _asyncToGenerator(function(api, config) {
244
- var pwd, jestUtils, hookRunners, testConfigOperator, finalConfig;
245
- var _arguments = arguments;
246
- return __generator(this, function(_state) {
247
- switch(_state.label){
248
- case 0:
249
- pwd = _arguments.length > 2 && _arguments[2] !== void 0 ? _arguments[2] : process.cwd();
250
- process.env.NODE_ENV = "test";
251
- jestUtils = getJestUtils(config);
252
- return [
253
- 4,
254
- patchConfig(jestUtils)
255
- ];
256
- case 1:
257
- _state.sent();
258
- jestUtils.setJestUserConfig();
259
- hookRunners = api.useHookRunners();
260
- return [
261
- 4,
262
- hookRunners.jestConfig(jestUtils, {
263
- onLast: function(input) {
264
- return input;
265
- }
266
- })
267
- ];
268
- case 2:
269
- testConfigOperator = _state.sent();
270
- finalConfig = testConfigOperator.getFinalConfig();
271
- debug("Jest config:", finalConfig);
272
- return [
273
- 4,
274
- runJest(finalConfig, pwd)
275
- ];
276
- case 3:
277
- _state.sent();
278
- return [
279
- 4,
280
- hookRunners.afterTest()
281
- ];
282
- case 4:
283
- _state.sent();
284
- return [
285
- 2
286
- ];
287
- }
288
- });
250
+ _runTest = _async_to_generator(function(api, config) {
251
+ var pwd, jestUtils, hookRunners, testConfigOperator, finalConfig;
252
+ var _arguments = arguments;
253
+ return __generator(this, function(_state) {
254
+ switch (_state.label) {
255
+ case 0:
256
+ pwd = _arguments.length > 2 && _arguments[2] !== void 0 ? _arguments[2] : process.cwd();
257
+ process.env.NODE_ENV = "test";
258
+ jestUtils = getJestUtils(config);
259
+ return [
260
+ 4,
261
+ patchConfig(jestUtils)
262
+ ];
263
+ case 1:
264
+ _state.sent();
265
+ jestUtils.setJestUserConfig();
266
+ hookRunners = api.useHookRunners();
267
+ return [
268
+ 4,
269
+ hookRunners.jestConfig(jestUtils, {
270
+ onLast: function(input) {
271
+ return input;
272
+ }
273
+ })
274
+ ];
275
+ case 2:
276
+ testConfigOperator = _state.sent();
277
+ finalConfig = testConfigOperator.getFinalConfig();
278
+ debug("Jest config:", finalConfig);
279
+ return [
280
+ 4,
281
+ runJest(finalConfig, pwd)
282
+ ];
283
+ case 3:
284
+ _state.sent();
285
+ return [
286
+ 4,
287
+ hookRunners.afterTest()
288
+ ];
289
+ case 4:
290
+ _state.sent();
291
+ return [
292
+ 2
293
+ ];
294
+ }
289
295
  });
290
- return _runTest.apply(this, arguments);
296
+ });
297
+ return _runTest.apply(this, arguments);
291
298
  }
292
- export { runJest, runTest };
@@ -1 +1 @@
1
- "use strict";
1
+ export {};