@modern-js/plugin-testing 2.21.0 → 2.21.2-alpha.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 (129) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/cjs/base/config/index.js +9 -3
  3. package/dist/cjs/base/config/patches/assetsModule.js +3 -1
  4. package/dist/cjs/base/config/patches/filemock.js +3 -1
  5. package/dist/cjs/base/config/patches/index.js +3 -1
  6. package/dist/cjs/base/config/patches/transformer.js +3 -1
  7. package/dist/cjs/base/config/testConfigOperator.js +3 -1
  8. package/dist/cjs/base/config/transformer/babelTransformer.js +3 -1
  9. package/dist/cjs/base/hook.js +9 -3
  10. package/dist/cjs/base/index.js +18 -6
  11. package/dist/cjs/base/runJest.js +6 -2
  12. package/dist/cjs/base/utils.js +9 -3
  13. package/dist/cjs/cli/bff/app.js +12 -4
  14. package/dist/cjs/cli/bff/constant.js +3 -1
  15. package/dist/cjs/cli/bff/index.js +6 -2
  16. package/dist/cjs/cli/bff/mockAPI.js +3 -1
  17. package/dist/cjs/cli/bff/setup.js +14 -14
  18. package/dist/cjs/cli/bff/utils/index.js +3 -1
  19. package/dist/cjs/cli/index.js +7 -2
  20. package/dist/cjs/cli/test.js +3 -1
  21. package/dist/cjs/constant.js +3 -1
  22. package/dist/cjs/runtime-testing/app.js +3 -1
  23. package/dist/cjs/runtime-testing/base.js +5 -11
  24. package/dist/cjs/runtime-testing/{request.js → bff.js} +4 -2
  25. package/dist/cjs/runtime-testing/customRender.js +3 -1
  26. package/dist/cjs/runtime-testing/reduck.js +12 -4
  27. package/dist/cjs/runtime-testing/resolvePlugins.js +3 -1
  28. package/dist/esm/cli/bff/setup.js +15 -14
  29. package/dist/esm/cli/index.js +1 -0
  30. package/dist/esm/runtime-testing/base.js +0 -1
  31. package/dist/esm/runtime-testing/{request.js → bff.js} +1 -1
  32. package/dist/esm-node/cli/bff/setup.js +14 -14
  33. package/dist/esm-node/cli/index.js +1 -0
  34. package/dist/esm-node/runtime-testing/base.js +0 -1
  35. package/dist/esm-node/runtime-testing/bff.js +14 -0
  36. package/dist/js/modern/base/config/index.js +36 -0
  37. package/dist/js/modern/base/config/patches/assetsModule.js +11 -0
  38. package/dist/js/modern/base/config/patches/filemock.js +4 -0
  39. package/dist/js/modern/base/config/patches/index.js +34 -0
  40. package/dist/js/modern/base/config/patches/transformer.js +38 -0
  41. package/dist/js/modern/base/config/resolver.js +21 -0
  42. package/dist/js/modern/base/config/testConfigOperator.js +69 -0
  43. package/dist/js/modern/base/config/transformer/babelTransformer.js +19 -0
  44. package/dist/js/modern/base/hook.js +12 -0
  45. package/dist/js/modern/base/index.js +14 -0
  46. package/dist/js/modern/base/runJest.js +102 -0
  47. package/dist/js/modern/base/types/index.js +0 -0
  48. package/dist/js/modern/base/utils.js +66 -0
  49. package/dist/js/modern/cli/bff/app.js +58 -0
  50. package/dist/js/modern/cli/bff/constant.js +4 -0
  51. package/dist/js/modern/cli/bff/index.js +149 -0
  52. package/dist/js/modern/cli/bff/mockAPI.js +109 -0
  53. package/dist/js/modern/cli/bff/setup.js +75 -0
  54. package/dist/js/modern/cli/bff/utils/index.js +37 -0
  55. package/dist/js/modern/cli/index.js +115 -0
  56. package/dist/js/modern/cli/test.js +61 -0
  57. package/dist/js/modern/constant.js +4 -0
  58. package/dist/js/modern/index.js +3 -0
  59. package/dist/js/modern/runtime-testing/app.js +48 -0
  60. package/dist/js/modern/runtime-testing/base.js +7 -0
  61. package/dist/js/modern/runtime-testing/customRender.js +25 -0
  62. package/dist/js/modern/runtime-testing/index.js +2 -0
  63. package/dist/js/modern/runtime-testing/reduck.js +55 -0
  64. package/dist/{esm-node → js/modern}/runtime-testing/request.js +3 -1
  65. package/dist/js/modern/runtime-testing/resolvePlugins.js +33 -0
  66. package/dist/js/node/base/config/index.js +67 -0
  67. package/dist/js/node/base/config/patches/assetsModule.js +40 -0
  68. package/dist/js/node/base/config/patches/filemock.js +25 -0
  69. package/dist/js/node/base/config/patches/index.js +57 -0
  70. package/dist/js/node/base/config/patches/transformer.js +67 -0
  71. package/dist/js/node/base/config/resolver.js +30 -0
  72. package/dist/js/node/base/config/testConfigOperator.js +90 -0
  73. package/dist/js/node/base/config/transformer/babelTransformer.js +46 -0
  74. package/dist/js/node/base/hook.js +37 -0
  75. package/dist/js/node/base/index.js +43 -0
  76. package/dist/js/node/base/runJest.js +132 -0
  77. package/dist/js/node/base/types/index.js +15 -0
  78. package/dist/js/node/base/utils.js +95 -0
  79. package/dist/js/node/cli/bff/app.js +84 -0
  80. package/dist/js/node/cli/bff/constant.js +27 -0
  81. package/dist/js/node/cli/bff/index.js +173 -0
  82. package/dist/js/node/cli/bff/mockAPI.js +134 -0
  83. package/dist/js/node/cli/bff/setup.js +84 -0
  84. package/dist/js/node/cli/bff/utils/index.js +64 -0
  85. package/dist/js/node/cli/index.js +135 -0
  86. package/dist/js/node/cli/test.js +88 -0
  87. package/dist/js/node/constant.js +27 -0
  88. package/dist/js/node/index.js +19 -0
  89. package/dist/js/node/runtime-testing/app.js +73 -0
  90. package/dist/js/node/runtime-testing/base.js +38 -0
  91. package/dist/js/node/runtime-testing/customRender.js +50 -0
  92. package/dist/js/node/runtime-testing/index.js +18 -0
  93. package/dist/js/node/runtime-testing/reduck.js +85 -0
  94. package/dist/js/node/runtime-testing/request.js +45 -0
  95. package/dist/js/node/runtime-testing/resolvePlugins.js +52 -0
  96. package/dist/js/treeshaking/base/config/index.js +154 -0
  97. package/dist/js/treeshaking/base/config/patches/assetsModule.js +9 -0
  98. package/dist/js/treeshaking/base/config/patches/filemock.js +2 -0
  99. package/dist/js/treeshaking/base/config/patches/index.js +225 -0
  100. package/dist/js/treeshaking/base/config/patches/transformer.js +36 -0
  101. package/dist/js/treeshaking/base/config/resolver.js +37 -0
  102. package/dist/js/treeshaking/base/config/testConfigOperator.js +127 -0
  103. package/dist/js/treeshaking/base/config/transformer/babelTransformer.js +17 -0
  104. package/dist/js/treeshaking/base/hook.js +8 -0
  105. package/dist/js/treeshaking/base/index.js +7 -0
  106. package/dist/js/treeshaking/base/runJest.js +292 -0
  107. package/dist/js/treeshaking/base/types/index.js +1 -0
  108. package/dist/js/treeshaking/base/utils.js +76 -0
  109. package/dist/js/treeshaking/cli/bff/app.js +200 -0
  110. package/dist/js/treeshaking/cli/bff/constant.js +2 -0
  111. package/dist/js/treeshaking/cli/bff/index.js +297 -0
  112. package/dist/js/treeshaking/cli/bff/mockAPI.js +188 -0
  113. package/dist/js/treeshaking/cli/bff/setup.js +192 -0
  114. package/dist/js/treeshaking/cli/bff/utils/index.js +47 -0
  115. package/dist/js/treeshaking/cli/index.js +255 -0
  116. package/dist/js/treeshaking/cli/test.js +180 -0
  117. package/dist/js/treeshaking/constant.js +2 -0
  118. package/dist/js/treeshaking/index.js +3 -0
  119. package/dist/js/treeshaking/runtime-testing/app.js +90 -0
  120. package/dist/js/treeshaking/runtime-testing/base.js +4 -0
  121. package/dist/js/treeshaking/runtime-testing/customRender.js +41 -0
  122. package/dist/js/treeshaking/runtime-testing/index.js +2 -0
  123. package/dist/js/treeshaking/runtime-testing/reduck.js +89 -0
  124. package/dist/js/treeshaking/runtime-testing/request.js +51 -0
  125. package/dist/js/treeshaking/runtime-testing/resolvePlugins.js +46 -0
  126. package/dist/types/runtime-testing/base.d.ts +1 -2
  127. package/dist/types/runtime-testing/{request.d.ts → bff.d.ts} +1 -1
  128. package/package.json +23 -14
  129. package/types/index.d.ts +6 -1
@@ -0,0 +1,89 @@
1
+ function _defineProperty(obj, key, value) {
2
+ if (key in obj) {
3
+ Object.defineProperty(obj, key, {
4
+ value: value,
5
+ enumerable: true,
6
+ configurable: true,
7
+ writable: true
8
+ });
9
+ } else {
10
+ obj[key] = value;
11
+ }
12
+ return obj;
13
+ }
14
+ function _objectSpread(target) {
15
+ for(var i = 1; i < arguments.length; i++){
16
+ var source = arguments[i] != null ? arguments[i] : {};
17
+ var ownKeys = Object.keys(source);
18
+ if (typeof Object.getOwnPropertySymbols === "function") {
19
+ ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
20
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
21
+ }));
22
+ }
23
+ ownKeys.forEach(function(key) {
24
+ _defineProperty(target, key, source[key]);
25
+ });
26
+ }
27
+ return target;
28
+ }
29
+ function ownKeys(object, enumerableOnly) {
30
+ var keys = Object.keys(object);
31
+ if (Object.getOwnPropertySymbols) {
32
+ var symbols = Object.getOwnPropertySymbols(object);
33
+ if (enumerableOnly) {
34
+ symbols = symbols.filter(function(sym) {
35
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
36
+ });
37
+ }
38
+ keys.push.apply(keys, symbols);
39
+ }
40
+ return keys;
41
+ }
42
+ function _objectSpreadProps(target, source) {
43
+ source = source != null ? source : {};
44
+ if (Object.getOwnPropertyDescriptors) {
45
+ Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
46
+ } else {
47
+ ownKeys(Object(source)).forEach(function(key) {
48
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
49
+ });
50
+ }
51
+ return target;
52
+ }
53
+ import { createStore as originCreateStore } from "@modern-js-reduck/store";
54
+ import effectsPlugin from "@modern-js-reduck/plugin-effects";
55
+ import autoActionsPlugin from "@modern-js-reduck/plugin-auto-actions";
56
+ import immerPlugin from "@modern-js-reduck/plugin-immutable";
57
+ import { MODERNJS_CONFIG_KEY } from "../constant";
58
+ var effects = function() {
59
+ return effectsPlugin;
60
+ };
61
+ var immer = function() {
62
+ return immerPlugin;
63
+ };
64
+ var autoActions = function() {
65
+ return autoActionsPlugin;
66
+ };
67
+ var createStore = function(props) {
68
+ var createStatePlugins = function() {
69
+ var _modernConfig_runtime;
70
+ var modernConfig = global[MODERNJS_CONFIG_KEY];
71
+ var stateConfig = modernConfig === null || modernConfig === void 0 ? void 0 : (_modernConfig_runtime = modernConfig.runtime) === null || _modernConfig_runtime === void 0 ? void 0 : _modernConfig_runtime.state;
72
+ var plugins = [];
73
+ if ((stateConfig === null || stateConfig === void 0 ? void 0 : stateConfig.effects) !== false) {
74
+ plugins.push(effects());
75
+ }
76
+ if ((stateConfig === null || stateConfig === void 0 ? void 0 : stateConfig.autoActions) !== false) {
77
+ plugins.push(autoActions());
78
+ }
79
+ if ((stateConfig === null || stateConfig === void 0 ? void 0 : stateConfig.immer) !== false) {
80
+ plugins.push(immer());
81
+ }
82
+ return ((props === null || props === void 0 ? void 0 : props.plugins) || []).concat(plugins);
83
+ };
84
+ var config = _objectSpreadProps(_objectSpread({}, props || {}), {
85
+ plugins: createStatePlugins()
86
+ });
87
+ return originCreateStore(config);
88
+ };
89
+ export { autoActions, createStore, effects, immer };
@@ -0,0 +1,51 @@
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;
5
+ }
6
+ function _arrayWithHoles(arr) {
7
+ if (Array.isArray(arr)) return arr;
8
+ }
9
+ function _arrayWithoutHoles(arr) {
10
+ if (Array.isArray(arr)) return _arrayLikeToArray(arr);
11
+ }
12
+ function _iterableToArray(iter) {
13
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
14
+ }
15
+ function _nonIterableRest() {
16
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
17
+ }
18
+ function _nonIterableSpread() {
19
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
20
+ }
21
+ function _toArray(arr) {
22
+ return _arrayWithHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableRest();
23
+ }
24
+ function _toConsumableArray(arr) {
25
+ return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
26
+ }
27
+ function _unsupportedIterableToArray(o, minLen) {
28
+ if (!o) return;
29
+ if (typeof o === "string") return _arrayLikeToArray(o, minLen);
30
+ var n = Object.prototype.toString.call(o).slice(8, -1);
31
+ if (n === "Object" && o.constructor) n = o.constructor.name;
32
+ if (n === "Map" || n === "Set") return Array.from(n);
33
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
34
+ }
35
+ import supertest from "supertest";
36
+ import { getApp } from "../cli/bff/app";
37
+ function request() {
38
+ for(var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++){
39
+ args[_key] = arguments[_key];
40
+ }
41
+ var _args = _toArray(args), fn = _args[0], extraArgs = _args.slice(1);
42
+ var app = getApp();
43
+ if (!fn) {
44
+ return supertest(app);
45
+ }
46
+ fn.returnHttp = true;
47
+ var res = fn.apply(void 0, _toConsumableArray(extraArgs));
48
+ fn.returnHttp = false;
49
+ return res;
50
+ }
51
+ export { request };
@@ -0,0 +1,46 @@
1
+ function _defineProperty(obj, key, value) {
2
+ if (key in obj) {
3
+ Object.defineProperty(obj, key, {
4
+ value: value,
5
+ enumerable: true,
6
+ configurable: true,
7
+ writable: true
8
+ });
9
+ } else {
10
+ obj[key] = value;
11
+ }
12
+ return obj;
13
+ }
14
+ function _objectSpread(target) {
15
+ for(var i = 1; i < arguments.length; i++){
16
+ var source = arguments[i] != null ? arguments[i] : {};
17
+ var ownKeys = Object.keys(source);
18
+ if (typeof Object.getOwnPropertySymbols === "function") {
19
+ ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
20
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
21
+ }));
22
+ }
23
+ ownKeys.forEach(function(key) {
24
+ _defineProperty(target, key, source[key]);
25
+ });
26
+ }
27
+ return target;
28
+ }
29
+ var allowedFeatures = [
30
+ "router",
31
+ "state"
32
+ ];
33
+ function resolvePlugins(features) {
34
+ var plugins = [];
35
+ if (!features) {
36
+ return plugins;
37
+ }
38
+ Object.keys(features).forEach(function(feature) {
39
+ if (allowedFeatures.includes(feature)) {
40
+ var curPluginRes = require("@modern-js/runtime/plugins")[feature](_objectSpread({}, features[feature]));
41
+ plugins.push(curPluginRes);
42
+ }
43
+ });
44
+ return plugins;
45
+ }
46
+ export { resolvePlugins as default };
@@ -1,3 +1,2 @@
1
1
  export { default as renderApp } from './customRender';
2
- export * from '@testing-library/react';
3
- export { request as testBff } from './request';
2
+ export * from '@testing-library/react';
@@ -1,4 +1,4 @@
1
1
  import type { SuperTest, Test } from 'supertest';
2
2
  declare function request(): SuperTest<Test>;
3
3
  declare function request<T extends (...argss: any[]) => any>(fn: T, ...args: Parameters<T>): Test;
4
- export { request };
4
+ export { request as testBff };
package/package.json CHANGED
@@ -15,7 +15,7 @@
15
15
  "modern",
16
16
  "modern.js"
17
17
  ],
18
- "version": "2.21.0",
18
+ "version": "2.21.2-alpha.0",
19
19
  "jsnext:source": "./src/cli/index.ts",
20
20
  "types": "./dist/types/cli/index.d.ts",
21
21
  "main": "./dist/cjs/cli/index.js",
@@ -66,6 +66,15 @@
66
66
  "jsnext:source": "./src/base/index.ts",
67
67
  "types": "./dist/types/base/index.d.ts",
68
68
  "default": "./dist/cjs/base/index.js"
69
+ },
70
+ "./bff": {
71
+ "jsnext:source": "./src/runtime-testing/bff.ts",
72
+ "node": {
73
+ "import": "./dist/esm-node/runtime-testing/bff.js",
74
+ "require": "./dist/cjs/runtime-testing/bff.js"
75
+ },
76
+ "types": "./dist/types/runtime-testing/bff.d.ts",
77
+ "default": "./dist/esm/runtime-testing/bff.js"
69
78
  }
70
79
  },
71
80
  "typesVersions": {
@@ -108,7 +117,7 @@
108
117
  "@types/testing-library__jest-dom": "^5.14.3",
109
118
  "path-to-regexp": "^6.2.0",
110
119
  "supertest": "^6.1.6",
111
- "babel-jest": "^27.0.6",
120
+ "babel-jest": "^29.5.0",
112
121
  "enhanced-resolve": "5.12.0",
113
122
  "identity-obj-proxy": "^3.0.0",
114
123
  "jest": "^29.5.0",
@@ -117,16 +126,16 @@
117
126
  "ts-jest": "^29.1.0",
118
127
  "yargs": "^17.0.1",
119
128
  "@swc/helpers": "0.5.1",
120
- "@modern-js/babel-compiler": "2.21.0",
121
- "@modern-js/utils": "2.21.0",
122
- "@modern-js/babel-preset-app": "2.21.0",
123
- "@modern-js/plugin": "2.21.0",
124
- "@modern-js/prod-server": "2.21.0"
129
+ "@modern-js/babel-compiler": "2.21.1",
130
+ "@modern-js/babel-preset-app": "2.21.1",
131
+ "@modern-js/prod-server": "2.21.1",
132
+ "@modern-js/utils": "2.21.1",
133
+ "@modern-js/plugin": "2.21.1"
125
134
  },
126
135
  "peerDependencies": {
127
136
  "react": ">=17",
128
137
  "react-dom": ">=17",
129
- "@modern-js/runtime": "^2.21.0"
138
+ "@modern-js/runtime": "^2.21.1"
130
139
  },
131
140
  "peerDependenciesMeta": {
132
141
  "@modern-js/runtime": {
@@ -141,12 +150,12 @@
141
150
  "@types/node": "^14",
142
151
  "@types/yargs": "^17.0.2",
143
152
  "typescript": "^5",
144
- "@modern-js/core": "2.21.0",
145
- "@modern-js/types": "2.21.0",
146
- "@modern-js/runtime": "2.21.0",
147
- "@modern-js/bff-core": "2.21.0",
148
- "@scripts/build": "2.21.0",
149
- "@scripts/jest-config": "2.21.0"
153
+ "@modern-js/core": "2.21.1",
154
+ "@modern-js/runtime": "2.21.1",
155
+ "@modern-js/types": "2.21.1",
156
+ "@scripts/build": "2.21.1",
157
+ "@modern-js/bff-core": "2.21.1",
158
+ "@scripts/jest-config": "2.21.1"
150
159
  },
151
160
  "sideEffects": false,
152
161
  "modernConfig": {},
package/types/index.d.ts CHANGED
@@ -1,8 +1,13 @@
1
1
  import "@testing-library/react"
2
2
  import "@testing-library/jest-dom"
3
3
  import "../dist/types/runtime-testing"
4
+ import "../dist/types/runtime-testing/bff"
4
5
 
5
6
  declare module '@modern-js/runtime/testing' {
6
7
  export * from '@testing-library/react';
7
- export { renderApp, createStore, testBff } from '../dist/types/runtime-testing';
8
+ export { renderApp, createStore } from '../dist/types/runtime-testing';
9
+ }
10
+
11
+ declare module '@modern-js/runtime/testing/bff' {
12
+ export { testBff } from '../dist/types/runtime-testing/bff';
8
13
  }