@modern-js/plugin-testing 2.15.0 → 2.16.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 +20 -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
- });