@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,188 +1,202 @@
1
- function _arrayLikeToArray(arr, len) {
2
- if (len == null || len > arr.length) len = arr.length;
3
- for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
4
- return arr2;
1
+ function _array_like_to_array(arr, len) {
2
+ if (len == null || len > arr.length)
3
+ len = arr.length;
4
+ for (var i = 0, arr2 = new Array(len); i < len; i++)
5
+ arr2[i] = arr[i];
6
+ return arr2;
5
7
  }
6
- function _arrayWithHoles(arr) {
7
- if (Array.isArray(arr)) return arr;
8
+ function _array_with_holes(arr) {
9
+ if (Array.isArray(arr))
10
+ return arr;
8
11
  }
9
- function _arrayWithoutHoles(arr) {
10
- if (Array.isArray(arr)) return _arrayLikeToArray(arr);
12
+ function _array_without_holes(arr) {
13
+ if (Array.isArray(arr))
14
+ return _array_like_to_array(arr);
11
15
  }
12
- function _defineProperty(obj, key, value) {
13
- if (key in obj) {
14
- Object.defineProperty(obj, key, {
15
- value: value,
16
- enumerable: true,
17
- configurable: true,
18
- writable: true
19
- });
20
- } else {
21
- obj[key] = value;
22
- }
23
- return obj;
16
+ function _define_property(obj, key, value) {
17
+ if (key in obj) {
18
+ Object.defineProperty(obj, key, {
19
+ value,
20
+ enumerable: true,
21
+ configurable: true,
22
+ writable: true
23
+ });
24
+ } else {
25
+ obj[key] = value;
26
+ }
27
+ return obj;
24
28
  }
25
- function _iterableToArray(iter) {
26
- if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
29
+ function _iterable_to_array(iter) {
30
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null)
31
+ return Array.from(iter);
27
32
  }
28
- function _iterableToArrayLimit(arr, i) {
29
- var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
30
- if (_i == null) return;
31
- var _arr = [];
32
- var _n = true;
33
- var _d = false;
34
- var _s, _e;
33
+ function _iterable_to_array_limit(arr, i) {
34
+ var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
35
+ if (_i == null)
36
+ return;
37
+ var _arr = [];
38
+ var _n = true;
39
+ var _d = false;
40
+ var _s, _e;
41
+ try {
42
+ for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
43
+ _arr.push(_s.value);
44
+ if (i && _arr.length === i)
45
+ break;
46
+ }
47
+ } catch (err) {
48
+ _d = true;
49
+ _e = err;
50
+ } finally {
35
51
  try {
36
- for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
37
- _arr.push(_s.value);
38
- if (i && _arr.length === i) break;
39
- }
40
- } catch (err) {
41
- _d = true;
42
- _e = err;
43
- } finally{
44
- try {
45
- if (!_n && _i["return"] != null) _i["return"]();
46
- } finally{
47
- if (_d) throw _e;
48
- }
52
+ if (!_n && _i["return"] != null)
53
+ _i["return"]();
54
+ } finally {
55
+ if (_d)
56
+ throw _e;
49
57
  }
50
- return _arr;
58
+ }
59
+ return _arr;
51
60
  }
52
- function _nonIterableRest() {
53
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
61
+ function _non_iterable_rest() {
62
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
54
63
  }
55
- function _nonIterableSpread() {
56
- throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
64
+ function _non_iterable_spread() {
65
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
57
66
  }
58
- function _objectSpread(target) {
59
- for(var i = 1; i < arguments.length; i++){
60
- var source = arguments[i] != null ? arguments[i] : {};
61
- var ownKeys = Object.keys(source);
62
- if (typeof Object.getOwnPropertySymbols === "function") {
63
- ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
64
- return Object.getOwnPropertyDescriptor(source, sym).enumerable;
65
- }));
66
- }
67
- ownKeys.forEach(function(key) {
68
- _defineProperty(target, key, source[key]);
69
- });
67
+ function _object_spread(target) {
68
+ for (var i = 1; i < arguments.length; i++) {
69
+ var source = arguments[i] != null ? arguments[i] : {};
70
+ var ownKeys = Object.keys(source);
71
+ if (typeof Object.getOwnPropertySymbols === "function") {
72
+ ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
73
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
74
+ }));
70
75
  }
71
- return target;
76
+ ownKeys.forEach(function(key) {
77
+ _define_property(target, key, source[key]);
78
+ });
79
+ }
80
+ return target;
72
81
  }
73
- function _slicedToArray(arr, i) {
74
- return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
82
+ function _sliced_to_array(arr, i) {
83
+ return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();
75
84
  }
76
- function _toConsumableArray(arr) {
77
- return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
85
+ function _to_consumable_array(arr) {
86
+ return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
78
87
  }
79
- function _unsupportedIterableToArray(o, minLen) {
80
- if (!o) return;
81
- if (typeof o === "string") return _arrayLikeToArray(o, minLen);
82
- var n = Object.prototype.toString.call(o).slice(8, -1);
83
- if (n === "Object" && o.constructor) n = o.constructor.name;
84
- if (n === "Map" || n === "Set") return Array.from(n);
85
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
88
+ function _unsupported_iterable_to_array(o, minLen) {
89
+ if (!o)
90
+ return;
91
+ if (typeof o === "string")
92
+ return _array_like_to_array(o, minLen);
93
+ var n = Object.prototype.toString.call(o).slice(8, -1);
94
+ if (n === "Object" && o.constructor)
95
+ n = o.constructor.name;
96
+ if (n === "Map" || n === "Set")
97
+ return Array.from(n);
98
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))
99
+ return _array_like_to_array(o, minLen);
86
100
  }
87
101
  import * as ptr from "path-to-regexp";
88
102
  import * as mockAppModule from "./app";
89
103
  var mock_replaceUrlWithParams = function(url, paramValues, payload) {
90
- var keys = [];
91
- ptr.pathToRegexp(url, keys);
92
- var params = keys.reduce(function(cur, key, index) {
93
- if (paramValues[index]) {
94
- cur[key.name] = paramValues[index];
95
- }
96
- return cur;
97
- }, {});
98
- var getFinalPath = ptr.compile(url, {
99
- encode: encodeURIComponent
100
- });
101
- return getFinalPath(_objectSpread({}, params, payload));
104
+ var keys = [];
105
+ ptr.pathToRegexp(url, keys);
106
+ var params = keys.reduce(function(cur, key, index) {
107
+ if (paramValues[index]) {
108
+ cur[key.name] = paramValues[index];
109
+ }
110
+ return cur;
111
+ }, {});
112
+ var getFinalPath = ptr.compile(url, {
113
+ encode: encodeURIComponent
114
+ });
115
+ return getFinalPath(_object_spread({}, params, payload));
102
116
  };
103
117
  var mock_getParamsAndPayload = function(args) {
104
- if (args.length === 0) {
105
- return [
106
- [],
107
- {}
108
- ];
109
- }
110
- var head = args[0];
111
- if (typeof head === "object") {
112
- return [
113
- [],
114
- head
115
- ];
118
+ if (args.length === 0) {
119
+ return [
120
+ [],
121
+ {}
122
+ ];
123
+ }
124
+ var head = args[0];
125
+ if (typeof head === "object") {
126
+ return [
127
+ [],
128
+ head
129
+ ];
130
+ } else {
131
+ var latest = args[args.length - 1];
132
+ if (typeof latest === "object") {
133
+ return [
134
+ args.slice(0, args.length - 1),
135
+ latest
136
+ ];
116
137
  } else {
117
- var latest = args[args.length - 1];
118
- if (typeof latest === "object") {
119
- return [
120
- args.slice(0, args.length - 1),
121
- latest
122
- ];
123
- } else {
124
- return [
125
- args,
126
- {}
127
- ];
128
- }
138
+ return [
139
+ args,
140
+ {}
141
+ ];
129
142
  }
143
+ }
130
144
  };
131
- var mockAPI_default = function(mockApiInfosByFile) {
132
- var files = Object.keys(mockApiInfosByFile);
133
- files.forEach(function(mockedFile) {
134
- jest.mock(mockedFile, function() {
135
- var supertest = require("supertest");
136
- return mockApiInfosByFile[mockedFile].reduce(function(res, info) {
137
- var module = _defineProperty({}, info.name, function() {
138
- for(var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++){
139
- args[_key] = arguments[_key];
140
- }
141
- if (mockAppModule.isInHandler()) {
142
- var _info;
143
- return (_info = info).handler.apply(_info, _toConsumableArray(args));
144
- }
145
- var _mock_getParamsAndPayload = _slicedToArray(mock_getParamsAndPayload(args), 2), params = _mock_getParamsAndPayload[0], payload = _mock_getParamsAndPayload[1];
146
- var returnHttp = module[info.name].returnHttp;
147
- var url = mock_replaceUrlWithParams(info.routePath, params, payload.params);
148
- var app = mockAppModule.getApp();
149
- var test = supertest(app)[info.httpMethod.toLowerCase()](url);
150
- if (payload.query) {
151
- test = test.query(payload.query);
152
- }
153
- if (payload.body) {
154
- test = test.send(payload.body);
155
- }
156
- if (payload.data) {
157
- test = test.send(payload.data);
158
- }
159
- if (payload.headers) {
160
- for(var name in payload.headers){
161
- test = test.set(name, payload.headers[name]);
162
- }
163
- }
164
- if (payload.cookies) {
165
- test = test.set("Cookie", [
166
- payload.cookies
167
- ]);
168
- }
169
- if (returnHttp) {
170
- return test;
171
- }
172
- return test.then(function(value) {
173
- try {
174
- return JSON.parse(value.text);
175
- } catch (e) {
176
- return value.text;
177
- }
178
- });
179
- });
180
- res[info.name] = module[info.name];
181
- Object.assign(res[info.name], info.handler);
182
- res.__esModule = true;
183
- return res;
184
- }, {});
145
+ export default function(mockApiInfosByFile) {
146
+ var files = Object.keys(mockApiInfosByFile);
147
+ files.forEach(function(mockedFile) {
148
+ jest.mock(mockedFile, function() {
149
+ var supertest = require("supertest");
150
+ return mockApiInfosByFile[mockedFile].reduce(function(res, info) {
151
+ var module = _define_property({}, info.name, function() {
152
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
153
+ args[_key] = arguments[_key];
154
+ }
155
+ if (mockAppModule.isInHandler()) {
156
+ var _info;
157
+ return (_info = info).handler.apply(_info, _to_consumable_array(args));
158
+ }
159
+ var _mock_getParamsAndPayload = _sliced_to_array(mock_getParamsAndPayload(args), 2), params = _mock_getParamsAndPayload[0], payload = _mock_getParamsAndPayload[1];
160
+ var returnHttp = module[info.name].returnHttp;
161
+ var url = mock_replaceUrlWithParams(info.routePath, params, payload.params);
162
+ var app = mockAppModule.getApp();
163
+ var test = supertest(app)[info.httpMethod.toLowerCase()](url);
164
+ if (payload.query) {
165
+ test = test.query(payload.query);
166
+ }
167
+ if (payload.body) {
168
+ test = test.send(payload.body);
169
+ }
170
+ if (payload.data) {
171
+ test = test.send(payload.data);
172
+ }
173
+ if (payload.headers) {
174
+ for (var name in payload.headers) {
175
+ test = test.set(name, payload.headers[name]);
176
+ }
177
+ }
178
+ if (payload.cookies) {
179
+ test = test.set("Cookie", [
180
+ payload.cookies
181
+ ]);
182
+ }
183
+ if (returnHttp) {
184
+ return test;
185
+ }
186
+ return test.then(function(value) {
187
+ try {
188
+ return JSON.parse(value.text);
189
+ } catch (e) {
190
+ return value.text;
191
+ }
192
+ });
185
193
  });
194
+ res[info.name] = module[info.name];
195
+ Object.assign(res[info.name], info.handler);
196
+ res.__esModule = true;
197
+ return res;
198
+ }, {});
186
199
  });
187
- };
188
- export { mockAPI_default as default };
200
+ });
201
+ }
202
+ ;