@modern-js/plugin-testing 2.14.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 +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,43 +1,30 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
8
6
  for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
- var runJest_exports = {};
29
- __export(runJest_exports, {
7
+ Object.defineProperty(target, name, {
8
+ enumerable: true,
9
+ get: all[name]
10
+ });
11
+ }
12
+ _export(exports, {
30
13
  runJest: () => runJest,
31
14
  runTest: () => runTest
32
15
  });
33
- module.exports = __toCommonJS(runJest_exports);
34
- var import_yargs = __toESM(require("yargs/yargs"));
35
- var import_jest = require("jest");
36
- var import_utils = require("@modern-js/utils");
37
- var import_config = require("./config");
38
- var import_utils2 = require("./utils");
16
+ const _yargs = /* @__PURE__ */ _interop_require_default(require("yargs/yargs"));
17
+ const _jest = require("jest");
18
+ const _utils = require("@modern-js/utils");
19
+ const _config = require("./config");
20
+ const _utils1 = require("./utils");
21
+ function _interop_require_default(obj) {
22
+ return obj && obj.__esModule ? obj : {
23
+ default: obj
24
+ };
25
+ }
39
26
  const buildArgv = async (rawArgv, config) => {
40
- const argv = await (0, import_yargs.default)(rawArgv).argv;
27
+ const argv = await (0, _yargs.default)(rawArgv).argv;
41
28
  const result = {
42
29
  $0: argv.$0,
43
30
  _: argv._.slice(1)
@@ -62,51 +49,38 @@ const readResultsAndExit = (result, globalConfig) => {
62
49
  });
63
50
  if (globalConfig.forceExit) {
64
51
  if (!globalConfig.detectOpenHandles) {
65
- console.warn(
66
- `${import_utils.chalk.bold(
67
- "Force exiting Jest: "
68
- )}Have you considered using \`--detectOpenHandles\` to detect async operations that kept running after all tests finished?`
69
- );
52
+ console.warn(`${_utils.chalk.bold("Force exiting Jest: ")}Have you considered using \`--detectOpenHandles\` to detect async operations that kept running after all tests finished?`);
70
53
  }
71
54
  process.exit(code);
72
55
  } else if (!globalConfig.detectOpenHandles) {
73
56
  setTimeout(() => {
74
- console.warn(
75
- import_utils.chalk.yellow.bold(
76
- "Jest did not exit one second after the test run has completed.\n\n"
77
- ) + import_utils.chalk.yellow(
78
- "This usually means that there are asynchronous operations that weren't stopped in your tests. Consider running Jest with `--detectOpenHandles` to troubleshoot this issue."
79
- )
80
- );
57
+ console.warn(_utils.chalk.yellow.bold("Jest did not exit one second after the test run has completed.\n\n") + _utils.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."));
81
58
  }, 1e3).unref();
82
59
  }
83
60
  };
84
61
  async function runJest(config, pwd = process.cwd()) {
85
62
  try {
86
63
  const argvConfig = await buildArgv(process.argv.slice(2), config);
87
- const { results, globalConfig } = await (0, import_jest.runCLI)(argvConfig, [pwd]);
64
+ const { results, globalConfig } = await (0, _jest.runCLI)(argvConfig, [
65
+ pwd
66
+ ]);
88
67
  readResultsAndExit(results, globalConfig);
89
68
  } catch (e) {
90
- console.error(import_utils.chalk.red((e == null ? void 0 : e.stack) || e));
69
+ console.error(_utils.chalk.red((e === null || e === void 0 ? void 0 : e.stack) || e));
91
70
  process.exit(1);
92
71
  }
93
72
  }
94
73
  async function runTest(api, config, pwd = process.cwd()) {
95
74
  process.env.NODE_ENV = "test";
96
- const jestUtils = (0, import_config.getJestUtils)(config);
97
- await (0, import_config.patchConfig)(jestUtils);
75
+ const jestUtils = (0, _config.getJestUtils)(config);
76
+ await (0, _config.patchConfig)(jestUtils);
98
77
  jestUtils.setJestUserConfig();
99
78
  const hookRunners = api.useHookRunners();
100
79
  const testConfigOperator = await hookRunners.jestConfig(jestUtils, {
101
80
  onLast: (input) => input
102
81
  });
103
82
  const finalConfig = testConfigOperator.getFinalConfig();
104
- (0, import_utils2.debug)("Jest config:", finalConfig);
83
+ (0, _utils1.debug)("Jest config:", finalConfig);
105
84
  await runJest(finalConfig, pwd);
106
85
  await hookRunners.afterTest();
107
86
  }
108
- // Annotate the CommonJS export names for ESM import in node:
109
- 0 && (module.exports = {
110
- runJest,
111
- runTest
112
- });
@@ -1,15 +1,4 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __copyProps = (to, from, except, desc) => {
6
- if (from && typeof from === "object" || typeof from === "function") {
7
- for (let key of __getOwnPropNames(from))
8
- if (!__hasOwnProp.call(to, key) && key !== except)
9
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
10
- }
11
- return to;
12
- };
13
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
14
- var types_exports = {};
15
- module.exports = __toCommonJS(types_exports);
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
@@ -1,64 +1,45 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
8
6
  for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
- var utils_exports = {};
29
- __export(utils_exports, {
7
+ Object.defineProperty(target, name, {
8
+ enumerable: true,
9
+ get: all[name]
10
+ });
11
+ }
12
+ _export(exports, {
30
13
  debug: () => debug,
31
- getModuleNameMapper: () => getModuleNameMapper,
32
- readCompilerOptions: () => readCompilerOptions
14
+ readCompilerOptions: () => readCompilerOptions,
15
+ getModuleNameMapper: () => getModuleNameMapper
33
16
  });
34
- module.exports = __toCommonJS(utils_exports);
35
- var import_fs = __toESM(require("fs"));
36
- var import_path = __toESM(require("path"));
37
- var import_utils = require("@modern-js/utils");
38
- const debug = (0, import_utils.createDebugger)("test");
17
+ const _fs = /* @__PURE__ */ _interop_require_default(require("fs"));
18
+ const _path = /* @__PURE__ */ _interop_require_default(require("path"));
19
+ const _utils = require("@modern-js/utils");
20
+ function _interop_require_default(obj) {
21
+ return obj && obj.__esModule ? obj : {
22
+ default: obj
23
+ };
24
+ }
25
+ const debug = (0, _utils.createDebugger)("test");
39
26
  const readCompilerOptions = (pwd = process.cwd(), filename = "tsconfig.json") => {
40
27
  let tsConfig = {};
41
28
  let extendedCompilerOptions = {};
42
29
  let tsconfigFile = "";
43
30
  try {
44
- const maybeTsconfigFile = import_path.default.join(pwd, filename);
45
- if (import_fs.default.existsSync(maybeTsconfigFile)) {
31
+ const maybeTsconfigFile = _path.default.join(pwd, filename);
32
+ if (_fs.default.existsSync(maybeTsconfigFile)) {
46
33
  tsconfigFile = maybeTsconfigFile;
47
34
  } else {
48
35
  tsconfigFile = require.resolve(filename);
49
36
  }
50
- ({ config: tsConfig } = require("typescript").parseConfigFileTextToJson(
51
- tsconfigFile,
52
- import_fs.default.readFileSync(tsconfigFile, "utf8")
53
- ));
37
+ ({ config: tsConfig } = require("typescript").parseConfigFileTextToJson(tsconfigFile, _fs.default.readFileSync(tsconfigFile, "utf8")));
54
38
  } catch (e) {
55
39
  return {};
56
40
  }
57
41
  if (tsConfig.extends) {
58
- extendedCompilerOptions = readCompilerOptions(
59
- import_path.default.dirname(tsconfigFile),
60
- tsConfig.extends
61
- );
42
+ extendedCompilerOptions = readCompilerOptions(_path.default.dirname(tsconfigFile), tsConfig.extends);
62
43
  }
63
44
  return {
64
45
  ...extendedCompilerOptions,
@@ -66,7 +47,9 @@ const readCompilerOptions = (pwd = process.cwd(), filename = "tsconfig.json") =>
66
47
  };
67
48
  };
68
49
  const getModuleNameMapper = (alias) => Object.keys(alias).reduce((memo, cur) => {
69
- const aliasValue = Array.isArray(alias[cur]) ? alias[cur] : [alias[cur]];
50
+ const aliasValue = Array.isArray(alias[cur]) ? alias[cur] : [
51
+ alias[cur]
52
+ ];
70
53
  const isFile = aliasValue.some((s) => s.endsWith(".js"));
71
54
  if (cur === "@modern-js/runtime$") {
72
55
  memo[`.+${cur}`] = aliasValue[0];
@@ -76,13 +59,7 @@ const getModuleNameMapper = (alias) => Object.keys(alias).reduce((memo, cur) =>
76
59
  memo[cur] = aliasValue[0];
77
60
  }
78
61
  const key = `^${cur}/(.*)$`;
79
- const value = import_path.default.normalize(`${aliasValue}/$1`);
62
+ const value = _path.default.normalize(`${aliasValue}/$1`);
80
63
  memo[key] = value;
81
64
  return memo;
82
65
  }, {});
83
- // Annotate the CommonJS export names for ESM import in node:
84
- 0 && (module.exports = {
85
- debug,
86
- getModuleNameMapper,
87
- readCompilerOptions
88
- });
@@ -1,37 +1,29 @@
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) => {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
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 app_exports = {};
19
- __export(app_exports, {
20
- closeServer: () => closeServer,
7
+ Object.defineProperty(target, name, {
8
+ enumerable: true,
9
+ get: all[name]
10
+ });
11
+ }
12
+ _export(exports, {
13
+ isInHandler: () => isInHandler,
21
14
  createApp: () => createApp,
22
15
  getApp: () => getApp,
23
- isInHandler: () => isInHandler
16
+ closeServer: () => closeServer
24
17
  });
25
- module.exports = __toCommonJS(app_exports);
26
- var import_async_hooks = require("async_hooks");
27
- var import_prod_server = require("@modern-js/prod-server");
28
- const store = new import_async_hooks.AsyncLocalStorage();
18
+ const _async_hooks = require("async_hooks");
19
+ const _prodserver = require("@modern-js/prod-server");
20
+ const store = new _async_hooks.AsyncLocalStorage();
29
21
  const isInHandler = () => Boolean(store.getStore());
30
22
  let server = null;
31
23
  const createApp = async (pwd, config, plugins, routes) => {
32
24
  if (!server) {
33
25
  config.output.path = "./";
34
- server = new import_prod_server.Server({
26
+ server = new _prodserver.Server({
35
27
  apiOnly: true,
36
28
  pwd,
37
29
  config,
@@ -55,10 +47,3 @@ const closeServer = async () => {
55
47
  }
56
48
  await server.close();
57
49
  };
58
- // Annotate the CommonJS export names for ESM import in node:
59
- 0 && (module.exports = {
60
- closeServer,
61
- createApp,
62
- getApp,
63
- isInHandler
64
- });
@@ -1,27 +1,9 @@
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
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
21
4
  });
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
+ Object.defineProperty(exports, "bff_info_key", {
6
+ enumerable: true,
7
+ get: () => bff_info_key
27
8
  });
9
+ const bff_info_key = "modern_bff_info";
@@ -1,56 +1,41 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
8
6
  for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
- var bff_exports = {};
29
- __export(bff_exports, {
30
- default: () => bff_default,
31
- setJestConfigForBFF: () => setJestConfigForBFF
7
+ Object.defineProperty(target, name, {
8
+ enumerable: true,
9
+ get: all[name]
10
+ });
11
+ }
12
+ _export(exports, {
13
+ setJestConfigForBFF: () => setJestConfigForBFF,
14
+ default: () => _default
32
15
  });
33
- module.exports = __toCommonJS(bff_exports);
34
- var import_path = __toESM(require("path"));
35
- var import_utils = require("@modern-js/utils");
36
- var import_base = require("../../base");
37
- var import_constant = require("./constant");
38
- var import_utils2 = require("./utils");
39
- const setJestConfigForBFF = async ({
40
- pwd,
41
- userConfig,
42
- plugins,
43
- routes,
44
- utils
45
- }) => {
46
- var _a;
16
+ const _path = /* @__PURE__ */ _interop_require_default(require("path"));
17
+ const _utils = require("@modern-js/utils");
18
+ const _base = require("../../base");
19
+ const _constant = require("./constant");
20
+ const _utils1 = require("./utils");
21
+ function _interop_require_default(obj) {
22
+ return obj && obj.__esModule ? obj : {
23
+ default: obj
24
+ };
25
+ }
26
+ const setJestConfigForBFF = async ({ pwd, userConfig, plugins, routes, utils }) => {
27
+ var _userConfig_source;
47
28
  const bffConfig = {
48
- rootDir: import_path.default.join(pwd, "./api"),
49
- setupFilesAfterEnv: [require.resolve("./setup")],
29
+ rootDir: _path.default.join(pwd, "./api"),
30
+ setupFilesAfterEnv: [
31
+ require.resolve("./setup")
32
+ ],
50
33
  testEnvironment: "node",
51
- testMatch: [`**/api/**/*.test.[jt]s`],
34
+ testMatch: [
35
+ `**/api/**/*.test.[jt]s`
36
+ ],
52
37
  globals: {
53
- [import_constant.bff_info_key]: {
38
+ [_constant.bff_info_key]: {
54
39
  appDir: pwd,
55
40
  modernUserConfig: userConfig,
56
41
  plugins,
@@ -59,8 +44,8 @@ const setJestConfigForBFF = async ({
59
44
  }
60
45
  };
61
46
  const { jestConfig } = utils;
62
- const alias = ((_a = userConfig == null ? void 0 : userConfig.source) == null ? void 0 : _a.alias) || {};
63
- const aliasMapper = (0, import_base.getModuleNameMapper)(alias);
47
+ const alias = (userConfig === null || userConfig === void 0 ? void 0 : (_userConfig_source = userConfig.source) === null || _userConfig_source === void 0 ? void 0 : _userConfig_source.alias) || {};
48
+ const aliasMapper = (0, _base.getModuleNameMapper)(alias);
64
49
  const { moduleNameMapper } = jestConfig;
65
50
  const transform = {
66
51
  "\\.[jt]sx?$": [
@@ -72,13 +57,17 @@ const setJestConfigForBFF = async ({
72
57
  }
73
58
  ]
74
59
  };
75
- const apiOnly = await (0, import_utils.isApiOnly)(pwd);
60
+ const apiOnly = await (0, _utils.isApiOnly)(pwd);
76
61
  const mergedModuleNameMapper = {
77
62
  ...moduleNameMapper,
78
63
  ...aliasMapper
79
64
  };
80
- const resolver = jestConfig.resolver || import_base.DEFAULT_RESOLVER_PATH;
81
- const configFields = ["coverage", "collectCoverage", "testTimeout"];
65
+ const resolver = jestConfig.resolver || _base.DEFAULT_RESOLVER_PATH;
66
+ const configFields = [
67
+ "coverage",
68
+ "collectCoverage",
69
+ "testTimeout"
70
+ ];
82
71
  const commonConfig = configFields.reduce((obj, field) => {
83
72
  if (jestConfig.hasOwnProperty(field)) {
84
73
  obj[field] = jestConfig[field];
@@ -86,51 +75,45 @@ const setJestConfigForBFF = async ({
86
75
  return obj;
87
76
  }, {});
88
77
  if (!apiOnly) {
89
- utils.setJestConfig(
90
- {
91
- projects: [
92
- {
93
- ...jestConfig
94
- },
95
- {
96
- transform,
97
- moduleNameMapper: mergedModuleNameMapper,
98
- resolver,
99
- ...bffConfig
100
- }
101
- ]
102
- },
103
- {
104
- force: true
105
- }
106
- );
78
+ utils.setJestConfig({
79
+ projects: [
80
+ {
81
+ ...jestConfig
82
+ },
83
+ {
84
+ transform,
85
+ moduleNameMapper: mergedModuleNameMapper,
86
+ resolver,
87
+ ...bffConfig
88
+ }
89
+ ]
90
+ }, {
91
+ force: true
92
+ });
107
93
  } else {
108
- utils.setJestConfig(
109
- {
110
- projects: [
111
- {
112
- transform,
113
- moduleNameMapper: mergedModuleNameMapper,
114
- resolver,
115
- ...bffConfig
116
- }
117
- ]
118
- },
119
- {
120
- force: true
121
- }
122
- );
94
+ utils.setJestConfig({
95
+ projects: [
96
+ {
97
+ transform,
98
+ moduleNameMapper: mergedModuleNameMapper,
99
+ resolver,
100
+ ...bffConfig
101
+ }
102
+ ]
103
+ }, {
104
+ force: true
105
+ });
123
106
  }
124
107
  utils.setJestConfig(commonConfig);
125
108
  };
126
- var bff_default = () => ({
109
+ const _default = () => ({
127
110
  name: "@modern-js/testing-plugin-bff",
128
111
  setup(api) {
129
112
  return {
130
113
  jestConfig: async (utils, next) => {
131
114
  const appContext = api.useAppContext();
132
115
  const pwd = appContext.appDirectory;
133
- if (!(0, import_utils2.isBFFProject)(pwd)) {
116
+ if (!(0, _utils1.isBFFProject)(pwd)) {
134
117
  return next(utils);
135
118
  }
136
119
  const userConfig = api.useResolvedConfigContext();
@@ -146,7 +129,3 @@ var bff_default = () => ({
146
129
  };
147
130
  }
148
131
  });
149
- // Annotate the CommonJS export names for ESM import in node:
150
- 0 && (module.exports = {
151
- setJestConfigForBFF
152
- });