@modern-js/plugin-testing 2.0.0-beta.3 → 2.0.0-beta.6

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 (106) hide show
  1. package/CHANGELOG.md +159 -0
  2. package/dist/js/modern/base/config/index.js +29 -9
  3. package/dist/js/modern/base/config/patches/assetsModule.js +7 -7
  4. package/dist/js/modern/base/config/patches/filemock.js +4 -1
  5. package/dist/js/modern/base/config/patches/index.js +30 -7
  6. package/dist/js/modern/base/config/patches/transformer.js +13 -18
  7. package/dist/js/modern/base/config/resolver.js +20 -11
  8. package/dist/js/modern/base/config/testConfigOperator.js +29 -23
  9. package/dist/js/modern/base/config/transformer/babelTransformer.js +16 -8
  10. package/dist/js/modern/base/hook.js +10 -5
  11. package/dist/js/modern/base/index.js +14 -6
  12. package/dist/js/modern/base/runJest.js +73 -62
  13. package/dist/js/modern/base/utils.js +40 -23
  14. package/dist/js/modern/cli/bff/app.js +37 -12
  15. package/dist/js/modern/cli/bff/constant.js +4 -1
  16. package/dist/js/modern/cli/bff/index.js +95 -52
  17. package/dist/js/modern/cli/bff/mockAPI.js +79 -64
  18. package/dist/js/modern/cli/bff/setup.js +71 -34
  19. package/dist/js/modern/cli/bff/utils/index.js +31 -15
  20. package/dist/js/modern/cli/index.js +65 -30
  21. package/dist/js/modern/cli/test.js +53 -18
  22. package/dist/js/modern/constant.js +4 -1
  23. package/dist/js/modern/index.js +3 -3
  24. package/dist/js/modern/modern-app.env.d.js +0 -0
  25. package/dist/js/modern/runtime-testing/app.js +25 -14
  26. package/dist/js/modern/runtime-testing/base.js +7 -3
  27. package/dist/js/modern/runtime-testing/customRender.js +24 -10
  28. package/dist/js/modern/runtime-testing/index.js +1 -1
  29. package/dist/js/modern/runtime-testing/reduck.js +41 -19
  30. package/dist/js/modern/runtime-testing/request.js +4 -4
  31. package/dist/js/modern/runtime-testing/resolvePlugins.js +24 -8
  32. package/dist/js/node/base/config/index.js +62 -18
  33. package/dist/js/node/base/config/patches/assetsModule.js +34 -12
  34. package/dist/js/node/base/config/patches/filemock.js +24 -7
  35. package/dist/js/node/base/config/patches/index.js +54 -15
  36. package/dist/js/node/base/config/patches/transformer.js +42 -25
  37. package/dist/js/node/base/config/resolver.js +25 -10
  38. package/dist/js/node/base/config/testConfigOperator.js +51 -30
  39. package/dist/js/node/base/config/transformer/babelTransformer.js +42 -15
  40. package/dist/js/node/base/hook.js +34 -13
  41. package/dist/js/node/base/index.js +39 -62
  42. package/dist/js/node/base/runJest.js +104 -71
  43. package/dist/js/node/base/types/index.js +15 -0
  44. package/dist/js/node/base/utils.js +70 -34
  45. package/dist/js/node/cli/bff/app.js +64 -22
  46. package/dist/js/node/cli/bff/constant.js +26 -7
  47. package/dist/js/node/cli/bff/index.js +123 -65
  48. package/dist/js/node/cli/bff/mockAPI.js +103 -71
  49. package/dist/js/node/cli/bff/setup.js +71 -28
  50. package/dist/js/node/cli/bff/utils/index.js +57 -22
  51. package/dist/js/node/cli/index.js +92 -46
  52. package/dist/js/node/cli/test.js +81 -27
  53. package/dist/js/node/constant.js +26 -7
  54. package/dist/js/node/index.js +19 -18
  55. package/dist/js/node/modern-app.env.d.js +0 -0
  56. package/dist/js/node/runtime-testing/app.js +53 -25
  57. package/dist/js/node/runtime-testing/base.js +34 -32
  58. package/dist/js/node/runtime-testing/customRender.js +49 -18
  59. package/dist/js/node/runtime-testing/index.js +18 -27
  60. package/dist/js/node/runtime-testing/reduck.js +72 -31
  61. package/dist/js/node/runtime-testing/request.js +36 -13
  62. package/dist/js/node/runtime-testing/resolvePlugins.js +41 -12
  63. package/dist/js/treeshaking/base/config/index.js +150 -31
  64. package/dist/js/treeshaking/base/config/patches/assetsModule.js +9 -11
  65. package/dist/js/treeshaking/base/config/patches/filemock.js +2 -1
  66. package/dist/js/treeshaking/base/config/patches/index.js +221 -64
  67. package/dist/js/treeshaking/base/config/patches/transformer.js +34 -37
  68. package/dist/js/treeshaking/base/config/resolver.js +36 -13
  69. package/dist/js/treeshaking/base/config/testConfigOperator.js +120 -69
  70. package/dist/js/treeshaking/base/config/transformer/babelTransformer.js +16 -10
  71. package/dist/js/treeshaking/base/hook.js +8 -7
  72. package/dist/js/treeshaking/base/index.js +7 -6
  73. package/dist/js/treeshaking/base/runJest.js +281 -164
  74. package/dist/js/treeshaking/base/types/index.js +1 -0
  75. package/dist/js/treeshaking/base/utils.js +72 -48
  76. package/dist/js/treeshaking/cli/bff/app.js +192 -68
  77. package/dist/js/treeshaking/cli/bff/constant.js +2 -1
  78. package/dist/js/treeshaking/cli/bff/index.js +291 -130
  79. package/dist/js/treeshaking/cli/bff/mockAPI.js +181 -91
  80. package/dist/js/treeshaking/cli/bff/setup.js +185 -59
  81. package/dist/js/treeshaking/cli/bff/utils/index.js +47 -21
  82. package/dist/js/treeshaking/cli/index.js +249 -108
  83. package/dist/js/treeshaking/cli/test.js +177 -44
  84. package/dist/js/treeshaking/constant.js +2 -1
  85. package/dist/js/treeshaking/index.js +3 -3
  86. package/dist/js/treeshaking/modern-app.env.d.js +1 -0
  87. package/dist/js/treeshaking/runtime-testing/app.js +85 -39
  88. package/dist/js/treeshaking/runtime-testing/base.js +4 -3
  89. package/dist/js/treeshaking/runtime-testing/customRender.js +38 -10
  90. package/dist/js/treeshaking/runtime-testing/index.js +1 -1
  91. package/dist/js/treeshaking/runtime-testing/reduck.js +85 -33
  92. package/dist/js/treeshaking/runtime-testing/request.js +49 -19
  93. package/dist/js/treeshaking/runtime-testing/resolvePlugins.js +45 -14
  94. package/dist/types/base/config/index.d.ts +1 -0
  95. package/dist/types/base/config/patches/assetsModule.d.ts +1 -0
  96. package/dist/types/base/config/patches/filemock.d.ts +1 -0
  97. package/dist/types/base/config/patches/transformer.d.ts +1 -0
  98. package/dist/types/base/config/testConfigOperator.d.ts +2 -0
  99. package/dist/types/base/runJest.d.ts +2 -0
  100. package/dist/types/base/utils.d.ts +1 -0
  101. package/dist/types/cli/bff/index.d.ts +2 -0
  102. package/dist/types/cli/bff/mockAPI.d.ts +1 -0
  103. package/dist/types/cli/index.d.ts +2 -0
  104. package/dist/types/runtime-testing/app.d.ts +3 -0
  105. package/dist/types/runtime-testing/customRender.d.ts +2 -0
  106. package/package.json +21 -25
@@ -1,50 +1,81 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
9
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
10
+ var __spreadValues = (a, b) => {
11
+ for (var prop in b || (b = {}))
12
+ if (__hasOwnProp.call(b, prop))
13
+ __defNormalProp(a, prop, b[prop]);
14
+ if (__getOwnPropSymbols)
15
+ for (var prop of __getOwnPropSymbols(b)) {
16
+ if (__propIsEnum.call(b, prop))
17
+ __defNormalProp(a, prop, b[prop]);
18
+ }
19
+ return a;
20
+ };
21
+ var __export = (target, all) => {
22
+ for (var name in all)
23
+ __defProp(target, name, { get: all[name], enumerable: true });
24
+ };
25
+ var __copyProps = (to, from, except, desc) => {
26
+ if (from && typeof from === "object" || typeof from === "function") {
27
+ for (let key of __getOwnPropNames(from))
28
+ if (!__hasOwnProp.call(to, key) && key !== except)
29
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
30
+ }
31
+ return to;
32
+ };
33
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
34
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
35
+ mod
36
+ ));
37
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
38
+ var utils_exports = {};
39
+ __export(utils_exports, {
40
+ debug: () => debug,
41
+ getModuleNameMapper: () => getModuleNameMapper,
42
+ readCompilerOptions: () => readCompilerOptions
5
43
  });
6
- exports.readCompilerOptions = exports.getModuleNameMapper = exports.debug = void 0;
7
- var _fs = _interopRequireDefault(require("fs"));
8
- var _path = _interopRequireDefault(require("path"));
9
- var _utils = require("@modern-js/utils");
10
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
12
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
13
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
14
- const debug = (0, _utils.createDebugger)('test');
15
- exports.debug = debug;
16
- /**
17
- * Read `compilerOptions` in the current pwd's tsconfig.json file
18
- */
19
- const readCompilerOptions = (pwd = process.cwd(), filename = 'tsconfig.json') => {
44
+ module.exports = __toCommonJS(utils_exports);
45
+ var import_fs = __toESM(require("fs"));
46
+ var import_path = __toESM(require("path"));
47
+ var import_utils = require("@modern-js/utils");
48
+ const debug = (0, import_utils.createDebugger)("test");
49
+ const readCompilerOptions = (pwd = process.cwd(), filename = "tsconfig.json") => {
20
50
  let tsConfig = {};
21
51
  let extendedCompilerOptions = {};
22
- let tsconfigFile = '';
52
+ let tsconfigFile = "";
23
53
  try {
24
- const maybeTsconfigFile = _path.default.join(pwd, filename);
25
- if (_fs.default.existsSync(maybeTsconfigFile)) {
54
+ const maybeTsconfigFile = import_path.default.join(pwd, filename);
55
+ if (import_fs.default.existsSync(maybeTsconfigFile)) {
26
56
  tsconfigFile = maybeTsconfigFile;
27
57
  } else {
28
58
  tsconfigFile = require.resolve(filename);
29
59
  }
30
- ({
31
- config: tsConfig
32
- } = require('typescript').parseConfigFileTextToJson(tsconfigFile, _fs.default.readFileSync(tsconfigFile, 'utf8')));
60
+ ({ config: tsConfig } = require("typescript").parseConfigFileTextToJson(
61
+ tsconfigFile,
62
+ import_fs.default.readFileSync(tsconfigFile, "utf8")
63
+ ));
33
64
  } catch (e) {
34
65
  return {};
35
66
  }
36
67
  if (tsConfig.extends) {
37
- extendedCompilerOptions = readCompilerOptions(_path.default.dirname(tsconfigFile), tsConfig.extends);
68
+ extendedCompilerOptions = readCompilerOptions(
69
+ import_path.default.dirname(tsconfigFile),
70
+ tsConfig.extends
71
+ );
38
72
  }
39
- return _objectSpread(_objectSpread({}, extendedCompilerOptions), tsConfig.compilerOptions);
73
+ return __spreadValues(__spreadValues({}, extendedCompilerOptions), tsConfig.compilerOptions);
40
74
  };
41
- exports.readCompilerOptions = readCompilerOptions;
42
- const getModuleNameMapper = alias => Object.keys(alias).reduce((memo, cur) => {
75
+ const getModuleNameMapper = (alias) => Object.keys(alias).reduce((memo, cur) => {
43
76
  const aliasValue = Array.isArray(alias[cur]) ? alias[cur] : [alias[cur]];
44
- const isFile = aliasValue.some(s => s.endsWith('.js'));
45
-
46
- // It's special for if using @modern-js/runtime alias other module @modern-js/runtime/model would not work.
47
- if (cur === '@modern-js/runtime$') {
77
+ const isFile = aliasValue.some((s) => s.endsWith(".js"));
78
+ if (cur === "@modern-js/runtime$") {
48
79
  memo[`.+${cur}`] = aliasValue[0];
49
80
  return memo;
50
81
  }
@@ -52,8 +83,13 @@ const getModuleNameMapper = alias => Object.keys(alias).reduce((memo, cur) => {
52
83
  memo[cur] = aliasValue[0];
53
84
  }
54
85
  const key = `^${cur}/(.*)$`;
55
- const value = _path.default.normalize(`${aliasValue}/$1`);
86
+ const value = import_path.default.normalize(`${aliasValue}/$1`);
56
87
  memo[key] = value;
57
88
  return memo;
58
89
  }, {});
59
- exports.getModuleNameMapper = getModuleNameMapper;
90
+ // Annotate the CommonJS export names for ESM import in node:
91
+ 0 && (module.exports = {
92
+ debug,
93
+ getModuleNameMapper,
94
+ readCompilerOptions
95
+ });
@@ -1,42 +1,84 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var __async = (__this, __arguments, generator) => {
19
+ return new Promise((resolve, reject) => {
20
+ var fulfilled = (value) => {
21
+ try {
22
+ step(generator.next(value));
23
+ } catch (e) {
24
+ reject(e);
25
+ }
26
+ };
27
+ var rejected = (value) => {
28
+ try {
29
+ step(generator.throw(value));
30
+ } catch (e) {
31
+ reject(e);
32
+ }
33
+ };
34
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
35
+ step((generator = generator.apply(__this, __arguments)).next());
36
+ });
37
+ };
38
+ var app_exports = {};
39
+ __export(app_exports, {
40
+ closeServer: () => closeServer,
41
+ createApp: () => createApp,
42
+ getApp: () => getApp,
43
+ isInHandler: () => isInHandler
5
44
  });
6
- exports.isInHandler = exports.getApp = exports.createApp = exports.closeServer = void 0;
7
- var _async_hooks = require("async_hooks");
8
- var _prodServer = require("@modern-js/prod-server");
9
- const store = new _async_hooks.AsyncLocalStorage();
45
+ module.exports = __toCommonJS(app_exports);
46
+ var import_async_hooks = require("async_hooks");
47
+ var import_prod_server = require("@modern-js/prod-server");
48
+ const store = new import_async_hooks.AsyncLocalStorage();
10
49
  const isInHandler = () => Boolean(store.getStore());
11
- exports.isInHandler = isInHandler;
12
50
  let server = null;
13
- const createApp = async (pwd, config, plugins, routes) => {
51
+ const createApp = (pwd, config, plugins, routes) => __async(void 0, null, function* () {
14
52
  if (!server) {
15
- config.output.path = './';
16
- server = new _prodServer.Server({
53
+ config.output.path = "./";
54
+ server = new import_prod_server.Server({
17
55
  apiOnly: true,
18
56
  pwd,
19
57
  config,
20
58
  internalPlugins: plugins,
21
59
  routes
22
60
  });
23
- await server.init();
61
+ yield server.init();
24
62
  }
25
63
  const app = server.getRequestHandler();
26
64
  return app;
27
- };
28
- exports.createApp = createApp;
65
+ });
29
66
  const getApp = () => {
30
67
  if (!server) {
31
- throw new Error('please createApp first');
68
+ throw new Error("please createApp first");
32
69
  }
33
70
  return server.getRequestHandler();
34
71
  };
35
- exports.getApp = getApp;
36
- const closeServer = async () => {
72
+ const closeServer = () => __async(void 0, null, function* () {
37
73
  if (!server) {
38
- throw new Error('please createApp first');
74
+ throw new Error("please createApp first");
39
75
  }
40
- await server.close();
41
- };
42
- exports.closeServer = closeServer;
76
+ yield server.close();
77
+ });
78
+ // Annotate the CommonJS export names for ESM import in node:
79
+ 0 && (module.exports = {
80
+ closeServer,
81
+ createApp,
82
+ getApp,
83
+ isInHandler
84
+ });
@@ -1,8 +1,27 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var constant_exports = {};
19
+ __export(constant_exports, {
20
+ bff_info_key: () => bff_info_key
21
+ });
22
+ module.exports = __toCommonJS(constant_exports);
23
+ const bff_info_key = "modern_bff_info";
24
+ // Annotate the CommonJS export names for ESM import in node:
25
+ 0 && (module.exports = {
26
+ bff_info_key
5
27
  });
6
- exports.bff_info_key = void 0;
7
- const bff_info_key = 'modern_bff_info';
8
- exports.bff_info_key = bff_info_key;
@@ -1,38 +1,91 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
9
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
10
+ var __spreadValues = (a, b) => {
11
+ for (var prop in b || (b = {}))
12
+ if (__hasOwnProp.call(b, prop))
13
+ __defNormalProp(a, prop, b[prop]);
14
+ if (__getOwnPropSymbols)
15
+ for (var prop of __getOwnPropSymbols(b)) {
16
+ if (__propIsEnum.call(b, prop))
17
+ __defNormalProp(a, prop, b[prop]);
18
+ }
19
+ return a;
20
+ };
21
+ var __export = (target, all) => {
22
+ for (var name in all)
23
+ __defProp(target, name, { get: all[name], enumerable: true });
24
+ };
25
+ var __copyProps = (to, from, except, desc) => {
26
+ if (from && typeof from === "object" || typeof from === "function") {
27
+ for (let key of __getOwnPropNames(from))
28
+ if (!__hasOwnProp.call(to, key) && key !== except)
29
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
30
+ }
31
+ return to;
32
+ };
33
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
34
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
35
+ mod
36
+ ));
37
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
38
+ var __async = (__this, __arguments, generator) => {
39
+ return new Promise((resolve, reject) => {
40
+ var fulfilled = (value) => {
41
+ try {
42
+ step(generator.next(value));
43
+ } catch (e) {
44
+ reject(e);
45
+ }
46
+ };
47
+ var rejected = (value) => {
48
+ try {
49
+ step(generator.throw(value));
50
+ } catch (e) {
51
+ reject(e);
52
+ }
53
+ };
54
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
55
+ step((generator = generator.apply(__this, __arguments)).next());
56
+ });
57
+ };
58
+ var bff_exports = {};
59
+ __export(bff_exports, {
60
+ default: () => bff_default,
61
+ setJestConfigForBFF: () => setJestConfigForBFF
5
62
  });
6
- exports.setJestConfigForBFF = exports.default = void 0;
7
- var _path = _interopRequireDefault(require("path"));
8
- var _utils = require("@modern-js/utils");
9
- var _base = require("../../base");
10
- var _constant = require("./constant");
11
- var _utils2 = require("./utils");
12
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
14
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
15
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
16
- const setJestConfigForBFF = async ({
63
+ module.exports = __toCommonJS(bff_exports);
64
+ var import_path = __toESM(require("path"));
65
+ var import_utils = require("@modern-js/utils");
66
+ var import_base = require("../../base");
67
+ var import_constant = require("./constant");
68
+ var import_utils2 = require("./utils");
69
+ const setJestConfigForBFF = (_0) => __async(void 0, [_0], function* ({
17
70
  pwd,
18
71
  userConfig,
19
72
  plugins,
20
73
  routes,
21
74
  utils
22
- }) => {
23
- var _userConfig$source;
75
+ }) {
76
+ var _a;
24
77
  const bffConfig = {
25
- rootDir: _path.default.join(pwd, './api'),
78
+ rootDir: import_path.default.join(pwd, "./api"),
26
79
  setupFilesAfterEnv: [require.resolve("./setup")],
27
- testEnvironment: 'node',
80
+ testEnvironment: "node",
28
81
  testMatch: [`**/api/**/*.test.[jt]s`],
29
82
  globals: {
30
- 'ts-jest': {
83
+ "ts-jest": {
31
84
  diagnostics: {
32
85
  warnOnly: true
33
86
  }
34
87
  },
35
- [_constant.bff_info_key]: {
88
+ [import_constant.bff_info_key]: {
36
89
  appDir: pwd,
37
90
  modernUserConfig: userConfig,
38
91
  plugins,
@@ -40,25 +93,17 @@ const setJestConfigForBFF = async ({
40
93
  }
41
94
  }
42
95
  };
43
- const {
44
- jestConfig
45
- } = utils;
46
- const alias = (userConfig === null || userConfig === void 0 ? void 0 : (_userConfig$source = userConfig.source) === null || _userConfig$source === void 0 ? void 0 : _userConfig$source.alias) || {};
47
- const aliasMapper = (0, _base.getModuleNameMapper)(alias);
48
- const {
49
- moduleNameMapper
50
- } = jestConfig;
51
-
52
- // 服务端统一使用 ts-jest
96
+ const { jestConfig } = utils;
97
+ const alias = ((_a = userConfig == null ? void 0 : userConfig.source) == null ? void 0 : _a.alias) || {};
98
+ const aliasMapper = (0, import_base.getModuleNameMapper)(alias);
99
+ const { moduleNameMapper } = jestConfig;
53
100
  const transform = {
54
- '\\.[jt]sx?$': require.resolve('ts-jest')
101
+ "\\.[jt]sx?$": require.resolve("ts-jest")
55
102
  };
56
- const apiOnly = await (0, _utils.isApiOnly)(pwd);
57
- const mergedModuleNameMapper = _objectSpread(_objectSpread({}, moduleNameMapper), aliasMapper);
58
- const resolver = jestConfig.resolver || _base.DEFAULT_RESOLVER_PATH;
59
-
60
- // 这三个配置不能设置在 projects 中,需要设置在外层(https://github.com/facebook/jest/issues/9696)
61
- const configFields = ['coverage', 'collectCoverage', 'testTimeout'];
103
+ const apiOnly = yield (0, import_utils.isApiOnly)(pwd);
104
+ const mergedModuleNameMapper = __spreadValues(__spreadValues({}, moduleNameMapper), aliasMapper);
105
+ const resolver = jestConfig.resolver || import_base.DEFAULT_RESOLVER_PATH;
106
+ const configFields = ["coverage", "collectCoverage", "testTimeout"];
62
107
  const commonConfig = configFields.reduce((obj, field) => {
63
108
  if (jestConfig.hasOwnProperty(field)) {
64
109
  obj[field] = jestConfig[field];
@@ -66,41 +111,51 @@ const setJestConfigForBFF = async ({
66
111
  return obj;
67
112
  }, {});
68
113
  if (!apiOnly) {
69
- utils.setJestConfig({
70
- projects: [_objectSpread({}, jestConfig), _objectSpread({
71
- transform,
72
- moduleNameMapper: mergedModuleNameMapper,
73
- resolver
74
- }, bffConfig)]
75
- }, {
76
- force: true
77
- });
114
+ utils.setJestConfig(
115
+ {
116
+ projects: [
117
+ __spreadValues({}, jestConfig),
118
+ __spreadValues({
119
+ transform,
120
+ moduleNameMapper: mergedModuleNameMapper,
121
+ resolver
122
+ }, bffConfig)
123
+ ]
124
+ },
125
+ {
126
+ force: true
127
+ }
128
+ );
78
129
  } else {
79
- utils.setJestConfig({
80
- projects: [_objectSpread({
81
- transform,
82
- moduleNameMapper: mergedModuleNameMapper,
83
- resolver
84
- }, bffConfig)]
85
- }, {
86
- force: true
87
- });
130
+ utils.setJestConfig(
131
+ {
132
+ projects: [
133
+ __spreadValues({
134
+ transform,
135
+ moduleNameMapper: mergedModuleNameMapper,
136
+ resolver
137
+ }, bffConfig)
138
+ ]
139
+ },
140
+ {
141
+ force: true
142
+ }
143
+ );
88
144
  }
89
145
  utils.setJestConfig(commonConfig);
90
- };
91
- exports.setJestConfigForBFF = setJestConfigForBFF;
92
- var _default = () => ({
93
- name: '@modern-js/testing-plugin-bff',
146
+ });
147
+ var bff_default = () => ({
148
+ name: "@modern-js/testing-plugin-bff",
94
149
  setup(api) {
95
150
  return {
96
- jestConfig: async (utils, next) => {
151
+ jestConfig: (utils, next) => __async(this, null, function* () {
97
152
  const appContext = api.useAppContext();
98
153
  const pwd = appContext.appDirectory;
99
- if (!(0, _utils2.isBFFProject)(pwd)) {
154
+ if (!(0, import_utils2.isBFFProject)(pwd)) {
100
155
  return next(utils);
101
156
  }
102
157
  const userConfig = api.useResolvedConfigContext();
103
- await setJestConfigForBFF({
158
+ yield setJestConfigForBFF({
104
159
  pwd,
105
160
  userConfig,
106
161
  routes: appContext.serverRoutes,
@@ -108,8 +163,11 @@ var _default = () => ({
108
163
  utils
109
164
  });
110
165
  return next(utils);
111
- }
166
+ })
112
167
  };
113
168
  }
114
169
  });
115
- exports.default = _default;
170
+ // Annotate the CommonJS export names for ESM import in node:
171
+ 0 && (module.exports = {
172
+ setJestConfigForBFF
173
+ });