@modern-js/plugin-testing 2.15.0 → 2.17.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (88) hide show
  1. package/CHANGELOG.md +32 -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 {};