@modern-js/plugin-testing 2.21.2-alpha.1 → 2.22.1

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 (92) hide show
  1. package/CHANGELOG.md +41 -0
  2. package/package.json +12 -13
  3. package/dist/js/modern/base/config/index.js +0 -36
  4. package/dist/js/modern/base/config/patches/assetsModule.js +0 -11
  5. package/dist/js/modern/base/config/patches/filemock.js +0 -4
  6. package/dist/js/modern/base/config/patches/index.js +0 -34
  7. package/dist/js/modern/base/config/patches/transformer.js +0 -38
  8. package/dist/js/modern/base/config/resolver.js +0 -21
  9. package/dist/js/modern/base/config/testConfigOperator.js +0 -69
  10. package/dist/js/modern/base/config/transformer/babelTransformer.js +0 -19
  11. package/dist/js/modern/base/hook.js +0 -12
  12. package/dist/js/modern/base/index.js +0 -14
  13. package/dist/js/modern/base/runJest.js +0 -102
  14. package/dist/js/modern/base/types/index.js +0 -0
  15. package/dist/js/modern/base/utils.js +0 -66
  16. package/dist/js/modern/cli/bff/app.js +0 -58
  17. package/dist/js/modern/cli/bff/constant.js +0 -4
  18. package/dist/js/modern/cli/bff/index.js +0 -149
  19. package/dist/js/modern/cli/bff/mockAPI.js +0 -109
  20. package/dist/js/modern/cli/bff/setup.js +0 -75
  21. package/dist/js/modern/cli/bff/utils/index.js +0 -37
  22. package/dist/js/modern/cli/index.js +0 -115
  23. package/dist/js/modern/cli/test.js +0 -61
  24. package/dist/js/modern/constant.js +0 -4
  25. package/dist/js/modern/index.js +0 -3
  26. package/dist/js/modern/runtime-testing/app.js +0 -48
  27. package/dist/js/modern/runtime-testing/base.js +0 -7
  28. package/dist/js/modern/runtime-testing/customRender.js +0 -25
  29. package/dist/js/modern/runtime-testing/index.js +0 -2
  30. package/dist/js/modern/runtime-testing/reduck.js +0 -55
  31. package/dist/js/modern/runtime-testing/request.js +0 -16
  32. package/dist/js/modern/runtime-testing/resolvePlugins.js +0 -33
  33. package/dist/js/node/base/config/index.js +0 -67
  34. package/dist/js/node/base/config/patches/assetsModule.js +0 -40
  35. package/dist/js/node/base/config/patches/filemock.js +0 -25
  36. package/dist/js/node/base/config/patches/index.js +0 -57
  37. package/dist/js/node/base/config/patches/transformer.js +0 -67
  38. package/dist/js/node/base/config/resolver.js +0 -30
  39. package/dist/js/node/base/config/testConfigOperator.js +0 -90
  40. package/dist/js/node/base/config/transformer/babelTransformer.js +0 -46
  41. package/dist/js/node/base/hook.js +0 -37
  42. package/dist/js/node/base/index.js +0 -43
  43. package/dist/js/node/base/runJest.js +0 -132
  44. package/dist/js/node/base/types/index.js +0 -15
  45. package/dist/js/node/base/utils.js +0 -95
  46. package/dist/js/node/cli/bff/app.js +0 -84
  47. package/dist/js/node/cli/bff/constant.js +0 -27
  48. package/dist/js/node/cli/bff/index.js +0 -173
  49. package/dist/js/node/cli/bff/mockAPI.js +0 -134
  50. package/dist/js/node/cli/bff/setup.js +0 -84
  51. package/dist/js/node/cli/bff/utils/index.js +0 -64
  52. package/dist/js/node/cli/index.js +0 -135
  53. package/dist/js/node/cli/test.js +0 -88
  54. package/dist/js/node/constant.js +0 -27
  55. package/dist/js/node/index.js +0 -19
  56. package/dist/js/node/runtime-testing/app.js +0 -73
  57. package/dist/js/node/runtime-testing/base.js +0 -38
  58. package/dist/js/node/runtime-testing/customRender.js +0 -50
  59. package/dist/js/node/runtime-testing/index.js +0 -18
  60. package/dist/js/node/runtime-testing/reduck.js +0 -85
  61. package/dist/js/node/runtime-testing/request.js +0 -45
  62. package/dist/js/node/runtime-testing/resolvePlugins.js +0 -52
  63. package/dist/js/treeshaking/base/config/index.js +0 -154
  64. package/dist/js/treeshaking/base/config/patches/assetsModule.js +0 -9
  65. package/dist/js/treeshaking/base/config/patches/filemock.js +0 -2
  66. package/dist/js/treeshaking/base/config/patches/index.js +0 -225
  67. package/dist/js/treeshaking/base/config/patches/transformer.js +0 -36
  68. package/dist/js/treeshaking/base/config/resolver.js +0 -37
  69. package/dist/js/treeshaking/base/config/testConfigOperator.js +0 -127
  70. package/dist/js/treeshaking/base/config/transformer/babelTransformer.js +0 -17
  71. package/dist/js/treeshaking/base/hook.js +0 -8
  72. package/dist/js/treeshaking/base/index.js +0 -7
  73. package/dist/js/treeshaking/base/runJest.js +0 -292
  74. package/dist/js/treeshaking/base/types/index.js +0 -1
  75. package/dist/js/treeshaking/base/utils.js +0 -76
  76. package/dist/js/treeshaking/cli/bff/app.js +0 -200
  77. package/dist/js/treeshaking/cli/bff/constant.js +0 -2
  78. package/dist/js/treeshaking/cli/bff/index.js +0 -297
  79. package/dist/js/treeshaking/cli/bff/mockAPI.js +0 -188
  80. package/dist/js/treeshaking/cli/bff/setup.js +0 -192
  81. package/dist/js/treeshaking/cli/bff/utils/index.js +0 -47
  82. package/dist/js/treeshaking/cli/index.js +0 -255
  83. package/dist/js/treeshaking/cli/test.js +0 -180
  84. package/dist/js/treeshaking/constant.js +0 -2
  85. package/dist/js/treeshaking/index.js +0 -3
  86. package/dist/js/treeshaking/runtime-testing/app.js +0 -90
  87. package/dist/js/treeshaking/runtime-testing/base.js +0 -4
  88. package/dist/js/treeshaking/runtime-testing/customRender.js +0 -41
  89. package/dist/js/treeshaking/runtime-testing/index.js +0 -2
  90. package/dist/js/treeshaking/runtime-testing/reduck.js +0 -89
  91. package/dist/js/treeshaking/runtime-testing/request.js +0 -51
  92. package/dist/js/treeshaking/runtime-testing/resolvePlugins.js +0 -46
@@ -1,149 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
3
- var __hasOwnProp = Object.prototype.hasOwnProperty;
4
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
5
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
6
- var __spreadValues = (a, b) => {
7
- for (var prop in b || (b = {}))
8
- if (__hasOwnProp.call(b, prop))
9
- __defNormalProp(a, prop, b[prop]);
10
- if (__getOwnPropSymbols)
11
- for (var prop of __getOwnPropSymbols(b)) {
12
- if (__propIsEnum.call(b, prop))
13
- __defNormalProp(a, prop, b[prop]);
14
- }
15
- return a;
16
- };
17
- var __async = (__this, __arguments, generator) => {
18
- return new Promise((resolve, reject) => {
19
- var fulfilled = (value) => {
20
- try {
21
- step(generator.next(value));
22
- } catch (e) {
23
- reject(e);
24
- }
25
- };
26
- var rejected = (value) => {
27
- try {
28
- step(generator.throw(value));
29
- } catch (e) {
30
- reject(e);
31
- }
32
- };
33
- var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
34
- step((generator = generator.apply(__this, __arguments)).next());
35
- });
36
- };
37
- import path from "path";
38
- import { isApiOnly } from "@modern-js/utils";
39
- import {
40
- getModuleNameMapper,
41
- DEFAULT_RESOLVER_PATH
42
- } from "../../base";
43
- import { bff_info_key } from "./constant";
44
- import { isBFFProject } from "./utils";
45
- const setJestConfigForBFF = (_0) => __async(void 0, [_0], function* ({
46
- pwd,
47
- userConfig,
48
- plugins,
49
- routes,
50
- utils
51
- }) {
52
- var _a;
53
- const bffConfig = {
54
- rootDir: path.join(pwd, "./api"),
55
- setupFilesAfterEnv: [require.resolve("./setup")],
56
- testEnvironment: "node",
57
- testMatch: [`**/api/**/*.test.[jt]s`],
58
- globals: {
59
- "ts-jest": {
60
- diagnostics: {
61
- warnOnly: true
62
- }
63
- },
64
- [bff_info_key]: {
65
- appDir: pwd,
66
- modernUserConfig: userConfig,
67
- plugins,
68
- routes
69
- }
70
- }
71
- };
72
- const { jestConfig } = utils;
73
- const alias = ((_a = userConfig == null ? void 0 : userConfig.source) == null ? void 0 : _a.alias) || {};
74
- const aliasMapper = getModuleNameMapper(alias);
75
- const { moduleNameMapper } = jestConfig;
76
- const transform = {
77
- "\\.[jt]sx?$": require.resolve("ts-jest")
78
- };
79
- const apiOnly = yield isApiOnly(pwd);
80
- const mergedModuleNameMapper = __spreadValues(__spreadValues({}, moduleNameMapper), aliasMapper);
81
- const resolver = jestConfig.resolver || DEFAULT_RESOLVER_PATH;
82
- const configFields = ["coverage", "collectCoverage", "testTimeout"];
83
- const commonConfig = configFields.reduce((obj, field) => {
84
- if (jestConfig.hasOwnProperty(field)) {
85
- obj[field] = jestConfig[field];
86
- }
87
- return obj;
88
- }, {});
89
- if (!apiOnly) {
90
- utils.setJestConfig(
91
- {
92
- projects: [
93
- __spreadValues({}, jestConfig),
94
- __spreadValues({
95
- transform,
96
- moduleNameMapper: mergedModuleNameMapper,
97
- resolver
98
- }, bffConfig)
99
- ]
100
- },
101
- {
102
- force: true
103
- }
104
- );
105
- } else {
106
- utils.setJestConfig(
107
- {
108
- projects: [
109
- __spreadValues({
110
- transform,
111
- moduleNameMapper: mergedModuleNameMapper,
112
- resolver
113
- }, bffConfig)
114
- ]
115
- },
116
- {
117
- force: true
118
- }
119
- );
120
- }
121
- utils.setJestConfig(commonConfig);
122
- });
123
- var bff_default = () => ({
124
- name: "@modern-js/testing-plugin-bff",
125
- setup(api) {
126
- return {
127
- jestConfig: (utils, next) => __async(this, null, function* () {
128
- const appContext = api.useAppContext();
129
- const pwd = appContext.appDirectory;
130
- if (!isBFFProject(pwd)) {
131
- return next(utils);
132
- }
133
- const userConfig = api.useResolvedConfigContext();
134
- yield setJestConfigForBFF({
135
- pwd,
136
- userConfig,
137
- routes: appContext.serverRoutes,
138
- plugins: appContext.serverInternalPlugins,
139
- utils
140
- });
141
- return next(utils);
142
- })
143
- };
144
- }
145
- });
146
- export {
147
- bff_default as default,
148
- setJestConfigForBFF
149
- };
@@ -1,109 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
3
- var __hasOwnProp = Object.prototype.hasOwnProperty;
4
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
5
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
6
- var __spreadValues = (a, b) => {
7
- for (var prop in b || (b = {}))
8
- if (__hasOwnProp.call(b, prop))
9
- __defNormalProp(a, prop, b[prop]);
10
- if (__getOwnPropSymbols)
11
- for (var prop of __getOwnPropSymbols(b)) {
12
- if (__propIsEnum.call(b, prop))
13
- __defNormalProp(a, prop, b[prop]);
14
- }
15
- return a;
16
- };
17
- import * as ptr from "path-to-regexp";
18
- import * as mockAppModule from "./app";
19
- const mock_replaceUrlWithParams = (url, paramValues, payload) => {
20
- const keys = [];
21
- ptr.pathToRegexp(url, keys);
22
- const params = keys.reduce((cur, key, index) => {
23
- if (paramValues[index]) {
24
- cur[key.name] = paramValues[index];
25
- }
26
- return cur;
27
- }, {});
28
- const getFinalPath = ptr.compile(url, { encode: encodeURIComponent });
29
- return getFinalPath(__spreadValues(__spreadValues({}, params), payload));
30
- };
31
- const mock_getParamsAndPayload = (args) => {
32
- if (args.length === 0) {
33
- return [[], {}];
34
- }
35
- const head = args[0];
36
- if (typeof head === "object") {
37
- return [[], head];
38
- } else {
39
- const latest = args[args.length - 1];
40
- if (typeof latest === "object") {
41
- return [args.slice(0, args.length - 1), latest];
42
- } else {
43
- return [args, {}];
44
- }
45
- }
46
- };
47
- var mockAPI_default = (mockApiInfosByFile) => {
48
- const files = Object.keys(mockApiInfosByFile);
49
- files.forEach((mockedFile) => {
50
- jest.mock(mockedFile, () => {
51
- const supertest = require("supertest");
52
- return mockApiInfosByFile[mockedFile].reduce(
53
- (res, info) => {
54
- const module = {
55
- [info.name]: (...args) => {
56
- if (mockAppModule.isInHandler()) {
57
- return info.handler(...args);
58
- }
59
- const [params, payload] = mock_getParamsAndPayload(args);
60
- const { returnHttp } = module[info.name];
61
- const url = mock_replaceUrlWithParams(
62
- info.routePath,
63
- params,
64
- payload.params
65
- );
66
- const app = mockAppModule.getApp();
67
- let test = supertest(app)[info.httpMethod.toLowerCase()](url);
68
- if (payload.query) {
69
- test = test.query(payload.query);
70
- }
71
- if (payload.body) {
72
- test = test.send(payload.body);
73
- }
74
- if (payload.data) {
75
- test = test.send(payload.data);
76
- }
77
- if (payload.headers) {
78
- for (const name in payload.headers) {
79
- test = test.set(name, payload.headers[name]);
80
- }
81
- }
82
- if (payload.cookies) {
83
- test = test.set("Cookie", [payload.cookies]);
84
- }
85
- if (returnHttp) {
86
- return test;
87
- }
88
- return test.then((value) => {
89
- try {
90
- return JSON.parse(value.text);
91
- } catch (e) {
92
- return value.text;
93
- }
94
- });
95
- }
96
- };
97
- res[info.name] = module[info.name];
98
- Object.assign(res[info.name], info.handler);
99
- res.__esModule = true;
100
- return res;
101
- },
102
- {}
103
- );
104
- });
105
- });
106
- };
107
- export {
108
- mockAPI_default as default
109
- };
@@ -1,75 +0,0 @@
1
- var __getOwnPropNames = Object.getOwnPropertyNames;
2
- var __commonJS = (cb, mod) => function __require() {
3
- return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
4
- };
5
- var __async = (__this, __arguments, generator) => {
6
- return new Promise((resolve, reject) => {
7
- var fulfilled = (value) => {
8
- try {
9
- step(generator.next(value));
10
- } catch (e) {
11
- reject(e);
12
- }
13
- };
14
- var rejected = (value) => {
15
- try {
16
- step(generator.throw(value));
17
- } catch (e) {
18
- reject(e);
19
- }
20
- };
21
- var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
22
- step((generator = generator.apply(__this, __arguments)).next());
23
- });
24
- };
25
- import path from "path";
26
- import { ApiRouter } from "@modern-js/bff-core";
27
- import { bff_info_key } from "./constant";
28
- import mockAPI from "./mockAPI";
29
- import { createApp, closeServer } from "./app";
30
- var require_setup = __commonJS({
31
- "src/cli/bff/setup.ts"(exports) {
32
- let uped = false;
33
- const setup = () => {
34
- var _a, _b;
35
- if (uped) {
36
- return;
37
- }
38
- uped = true;
39
- const bff_info = global[bff_info_key];
40
- const prefix = (_b = (_a = bff_info == null ? void 0 : bff_info.modernUserConfig) == null ? void 0 : _a.bff) == null ? void 0 : _b.prefix;
41
- const apiRouter = new ApiRouter({
42
- apiDir: path.join(bff_info.appDir, "./api"),
43
- prefix
44
- });
45
- const apiInfos = apiRouter.getApiHandlers();
46
- const apiInfosByFile = apiInfos.reduce(
47
- (res, apiInfo) => {
48
- if (!res[apiInfo.filename]) {
49
- res[apiInfo.filename] = [];
50
- }
51
- res[apiInfo.filename].push(apiInfo);
52
- return res;
53
- },
54
- {}
55
- );
56
- let app = null;
57
- beforeAll(() => __async(exports, null, function* () {
58
- if (!app) {
59
- app = yield createApp(
60
- bff_info.appDir,
61
- bff_info.modernUserConfig,
62
- bff_info.plugins,
63
- bff_info.routes
64
- );
65
- }
66
- }));
67
- afterAll(() => __async(exports, null, function* () {
68
- yield closeServer();
69
- }));
70
- mockAPI(apiInfosByFile);
71
- };
72
- setup();
73
- }
74
- });
75
- export default require_setup();
@@ -1,37 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
3
- var __hasOwnProp = Object.prototype.hasOwnProperty;
4
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
5
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
6
- var __spreadValues = (a, b) => {
7
- for (var prop in b || (b = {}))
8
- if (__hasOwnProp.call(b, prop))
9
- __defNormalProp(a, prop, b[prop]);
10
- if (__getOwnPropSymbols)
11
- for (var prop of __getOwnPropSymbols(b)) {
12
- if (__propIsEnum.call(b, prop))
13
- __defNormalProp(a, prop, b[prop]);
14
- }
15
- return a;
16
- };
17
- import path from "path";
18
- import { chalk } from "@modern-js/utils";
19
- const isBFFProject = (pwd) => {
20
- try {
21
- const packageJson = require(path.join(pwd, "./package.json"));
22
- const { dependencies, devDependencies } = packageJson;
23
- const isBFF = Object.keys(__spreadValues(__spreadValues({}, dependencies), devDependencies)).some(
24
- (dependency) => dependency.includes("plugin-bff")
25
- );
26
- const isMWA = Object.keys(devDependencies).some(
27
- (devDependency) => devDependency.includes("app-tools")
28
- );
29
- return isMWA && isBFF;
30
- } catch (error) {
31
- console.log(chalk.red(error));
32
- return false;
33
- }
34
- };
35
- export {
36
- isBFFProject
37
- };
@@ -1,115 +0,0 @@
1
- var __async = (__this, __arguments, generator) => {
2
- return new Promise((resolve, reject) => {
3
- var fulfilled = (value) => {
4
- try {
5
- step(generator.next(value));
6
- } catch (e) {
7
- reject(e);
8
- }
9
- };
10
- var rejected = (value) => {
11
- try {
12
- step(generator.throw(value));
13
- } catch (e) {
14
- reject(e);
15
- }
16
- };
17
- var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
18
- step((generator = generator.apply(__this, __arguments)).next());
19
- });
20
- };
21
- import path from "path";
22
- import {
23
- isApiOnly,
24
- mergeAlias,
25
- PLUGIN_SCHEMAS,
26
- createRuntimeExportsUtils
27
- } from "@modern-js/utils";
28
- import {
29
- testingHooks,
30
- getModuleNameMapper,
31
- DEFAULT_RESOLVER_PATH
32
- } from "../base";
33
- import { MODERNJS_CONFIG_KEY } from "../constant";
34
- import testingBffPlugin from "./bff";
35
- import test from "./test";
36
- const mergeUserJestConfig = (testUtils) => {
37
- const resolveJestConfig = testUtils.testConfig.jest;
38
- if (resolveJestConfig && typeof resolveJestConfig !== "function") {
39
- testUtils.mergeJestConfig(resolveJestConfig);
40
- }
41
- };
42
- var cli_default = () => {
43
- const bffPlugin = testingBffPlugin();
44
- return {
45
- name: "@modern-js/plugin-testing",
46
- usePlugins: [bffPlugin],
47
- post: [bffPlugin.name],
48
- registerHook: testingHooks,
49
- setup: (api) => {
50
- let testingExportsUtils;
51
- return {
52
- commands: ({ program }) => {
53
- program.command("test").allowUnknownOption().usage("<regexForTestFiles> --[options]").action(() => __async(void 0, null, function* () {
54
- yield test(api);
55
- }));
56
- },
57
- validateSchema() {
58
- return PLUGIN_SCHEMAS["@modern-js/plugin-testing"];
59
- },
60
- config() {
61
- const appContext = api.useAppContext();
62
- testingExportsUtils = createRuntimeExportsUtils(
63
- appContext.internalDirectory,
64
- "testing"
65
- );
66
- return {
67
- source: {
68
- alias: {
69
- "@": path.join(appContext.appDirectory, "src"),
70
- "@modern-js/runtime/testing": testingExportsUtils.getPath()
71
- }
72
- }
73
- };
74
- },
75
- addRuntimeExports() {
76
- const testingPath = path.resolve(__dirname, "../");
77
- testingExportsUtils.addExport(`export * from '${testingPath}'`);
78
- },
79
- jestConfig: (utils, next) => __async(void 0, null, function* () {
80
- const appContext = api.useAppContext();
81
- const userConfig = api.useResolvedConfigContext();
82
- const apiOnly = yield isApiOnly(appContext.appDirectory);
83
- if (apiOnly) {
84
- return next(utils);
85
- }
86
- const alias = mergeAlias(userConfig.source.alias);
87
- if (testingExportsUtils) {
88
- alias["@modern-js/runtime/testing"] = [
89
- testingExportsUtils.getPath()
90
- ];
91
- }
92
- utils.mergeJestConfig({
93
- globals: {
94
- [MODERNJS_CONFIG_KEY]: userConfig
95
- },
96
- moduleNameMapper: getModuleNameMapper(alias),
97
- testEnvironment: "jsdom",
98
- resolver: DEFAULT_RESOLVER_PATH,
99
- rootDir: appContext.appDirectory || process.cwd(),
100
- testMatch: [
101
- `<rootDir>/src/**/*.test.[jt]s?(x)`,
102
- `<rootDir>/tests/**/*.test.[jt]s?(x)`
103
- ]
104
- });
105
- mergeUserJestConfig(utils);
106
- return next(utils);
107
- })
108
- };
109
- }
110
- };
111
- };
112
- export {
113
- cli_default as default,
114
- mergeUserJestConfig
115
- };
@@ -1,61 +0,0 @@
1
- var __async = (__this, __arguments, generator) => {
2
- return new Promise((resolve, reject) => {
3
- var fulfilled = (value) => {
4
- try {
5
- step(generator.next(value));
6
- } catch (e) {
7
- reject(e);
8
- }
9
- };
10
- var rejected = (value) => {
11
- try {
12
- step(generator.throw(value));
13
- } catch (e) {
14
- reject(e);
15
- }
16
- };
17
- var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
18
- step((generator = generator.apply(__this, __arguments)).next());
19
- });
20
- };
21
- import path from "path";
22
- import { compiler } from "@modern-js/babel-compiler";
23
- import { runTest } from "../base";
24
- const test = (api) => __async(void 0, null, function* () {
25
- var _a, _b;
26
- const userConfig = api.useResolvedConfigContext();
27
- const appContext = api.useAppContext();
28
- userConfig.testing = userConfig.testing || {};
29
- const jest = userConfig.testing.jest || ((_a = userConfig == null ? void 0 : userConfig.tools) == null ? void 0 : _a.jest);
30
- if (Array.isArray(jest)) {
31
- userConfig.testing.jest = jest[0];
32
- }
33
- userConfig.testing.jest = userConfig.testing.jest || ((_b = userConfig == null ? void 0 : userConfig.tools) == null ? void 0 : _b.jest);
34
- const runtimeExportsPath = path.join(
35
- appContext.internalDirectory,
36
- ".runtime-exports"
37
- );
38
- yield compiler(
39
- {
40
- sourceDir: runtimeExportsPath,
41
- rootDir: runtimeExportsPath,
42
- distDir: runtimeExportsPath,
43
- quiet: true
44
- },
45
- {
46
- presets: [
47
- [
48
- require.resolve("@babel/preset-env"),
49
- {
50
- modules: "cjs"
51
- }
52
- ]
53
- ]
54
- }
55
- );
56
- yield runTest(api, userConfig.testing);
57
- });
58
- var test_default = test;
59
- export {
60
- test_default as default
61
- };
@@ -1,4 +0,0 @@
1
- const MODERNJS_CONFIG_KEY = "__modernjs_config__";
2
- export {
3
- MODERNJS_CONFIG_KEY
4
- };
@@ -1,3 +0,0 @@
1
- import "@testing-library/jest-dom/extend-expect";
2
- import "@testing-library/jest-dom";
3
- export * from "./runtime-testing";
@@ -1,48 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
3
- var __hasOwnProp = Object.prototype.hasOwnProperty;
4
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
5
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
6
- var __spreadValues = (a, b) => {
7
- for (var prop in b || (b = {}))
8
- if (__hasOwnProp.call(b, prop))
9
- __defNormalProp(a, prop, b[prop]);
10
- if (__getOwnPropSymbols)
11
- for (var prop of __getOwnPropSymbols(b)) {
12
- if (__propIsEnum.call(b, prop))
13
- __defNormalProp(a, prop, b[prop]);
14
- }
15
- return a;
16
- };
17
- import { createApp } from "@modern-js/runtime";
18
- import { MODERNJS_CONFIG_KEY } from "../constant";
19
- import resolvePlugins from "./resolvePlugins";
20
- class ModernRuntime {
21
- constructor(options) {
22
- this.options = options;
23
- }
24
- init(options) {
25
- this.options = options;
26
- }
27
- createApp(props) {
28
- var _a, _b;
29
- const { entry, children } = props || {};
30
- let runtimeFeatures = (_a = this.options) == null ? void 0 : _a.runtime;
31
- if (entry) {
32
- runtimeFeatures = __spreadValues(__spreadValues({}, runtimeFeatures || {}), (_b = this.options.runtimeByEntries) == null ? void 0 : _b[entry]);
33
- }
34
- const Component = () => {
35
- if (!children) {
36
- return null;
37
- }
38
- return children;
39
- };
40
- return createApp({
41
- plugins: resolvePlugins(runtimeFeatures || {})
42
- })(Component);
43
- }
44
- }
45
- var app_default = new ModernRuntime(global[MODERNJS_CONFIG_KEY] || {});
46
- export {
47
- app_default as default
48
- };
@@ -1,7 +0,0 @@
1
- import { default as default2 } from "./customRender";
2
- export * from "@testing-library/react";
3
- import { request } from "./request";
4
- export {
5
- default2 as renderApp,
6
- request as testBff
7
- };
@@ -1,25 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
3
- var __hasOwnProp = Object.prototype.hasOwnProperty;
4
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
5
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
6
- var __spreadValues = (a, b) => {
7
- for (var prop in b || (b = {}))
8
- if (__hasOwnProp.call(b, prop))
9
- __defNormalProp(a, prop, b[prop]);
10
- if (__getOwnPropSymbols)
11
- for (var prop of __getOwnPropSymbols(b)) {
12
- if (__propIsEnum.call(b, prop))
13
- __defNormalProp(a, prop, b[prop]);
14
- }
15
- return a;
16
- };
17
- import React from "react";
18
- import { render } from "@testing-library/react";
19
- import app from "./app";
20
- const WrapModernProviders = (props) => React.createElement(app.createApp(props));
21
- const customRender = (ui, options) => render(ui, __spreadValues({ wrapper: WrapModernProviders }, options));
22
- var customRender_default = customRender;
23
- export {
24
- customRender_default as default
25
- };
@@ -1,2 +0,0 @@
1
- export * from "./base";
2
- export * from "./reduck";