@eggjs/tegg-common-util 3.19.0 → 3.21.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.
- package/dist/src/ModuleConfig.d.ts +6 -4
- package/dist/src/ModuleConfig.js +65 -33
- package/dist/test/MapUtil.test.d.ts +1 -0
- package/dist/test/MapUtil.test.js +28 -0
- package/dist/test/ModuleConfig.test.d.ts +1 -0
- package/dist/test/ModuleConfig.test.js +93 -0
- package/dist/test/NameUtil.test.d.ts +1 -0
- package/dist/test/NameUtil.test.js +16 -0
- package/dist/test/ObjectUtil.test.d.ts +1 -0
- package/dist/test/ObjectUtil.test.js +18 -0
- package/dist/test/ProtoGraph.test.d.ts +1 -0
- package/dist/test/ProtoGraph.test.js +97 -0
- package/package.json +3 -2
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export interface ModuleReference {
|
|
2
|
+
name: string;
|
|
2
3
|
path: string;
|
|
3
4
|
}
|
|
4
5
|
export interface InlineModuleReferenceConfig {
|
|
@@ -20,19 +21,20 @@ export interface ReadModuleReferenceOptions {
|
|
|
20
21
|
extraFilePattern?: string[];
|
|
21
22
|
}
|
|
22
23
|
export declare class ModuleConfigUtil {
|
|
23
|
-
static moduleYamlPath(modulePath: string): string;
|
|
24
|
-
static moduleJsonPath(modulePath: string): string;
|
|
24
|
+
static moduleYamlPath(modulePath: string, env?: string): string;
|
|
25
|
+
static moduleJsonPath(modulePath: string, env?: string): string;
|
|
25
26
|
static readModuleReference(baseDir: string, options?: ReadModuleReferenceOptions): readonly ModuleReference[];
|
|
26
27
|
private static readModuleReferenceFromModuleJson;
|
|
27
28
|
private static readModuleReferenceFromScan;
|
|
28
29
|
static readModuleFromNodeModules(baseDir: string): ModuleReference[];
|
|
29
30
|
static resolveModuleDir(moduleDir: string, baseDir?: string): string;
|
|
31
|
+
private static getModuleName;
|
|
30
32
|
static readModuleName(baseDir: string, moduleDir: string): Promise<string>;
|
|
31
33
|
static readModuleNameSync(moduleDir: string, baseDir?: string): string;
|
|
32
|
-
static loadModuleConfig(moduleDir: string, baseDir?: string): Promise<ModuleConfig | undefined>;
|
|
34
|
+
static loadModuleConfig(moduleDir: string, baseDir?: string, env?: string): Promise<ModuleConfig | undefined>;
|
|
33
35
|
private static loadModuleJson;
|
|
34
36
|
private static loadModuleYaml;
|
|
35
|
-
static loadModuleConfigSync(moduleDir: string, baseDir?: string): ModuleConfig | undefined;
|
|
37
|
+
static loadModuleConfigSync(moduleDir: string, baseDir?: string, env?: string): ModuleConfig | undefined;
|
|
36
38
|
private static loadModuleJsonSync;
|
|
37
39
|
private static loadModuleYamlSync;
|
|
38
40
|
}
|
package/dist/src/ModuleConfig.js
CHANGED
|
@@ -33,6 +33,7 @@ const fs_1 = __importStar(require("fs"));
|
|
|
33
33
|
const path_1 = __importDefault(require("path"));
|
|
34
34
|
const globby_1 = __importDefault(require("globby"));
|
|
35
35
|
const FSUtil_1 = require("./FSUtil");
|
|
36
|
+
const extend2_1 = __importDefault(require("extend2"));
|
|
36
37
|
class ModuleReferenceConfigHelp {
|
|
37
38
|
static isInlineModuleReference(moduleReference) {
|
|
38
39
|
return !!moduleReference.path;
|
|
@@ -46,10 +47,16 @@ const DEFAULT_READ_MODULE_REF_OPTS = {
|
|
|
46
47
|
deep: 10,
|
|
47
48
|
};
|
|
48
49
|
class ModuleConfigUtil {
|
|
49
|
-
static moduleYamlPath(modulePath) {
|
|
50
|
+
static moduleYamlPath(modulePath, env) {
|
|
51
|
+
if (env) {
|
|
52
|
+
return path_1.default.join(modulePath, `module.${env}.yml`);
|
|
53
|
+
}
|
|
50
54
|
return path_1.default.join(modulePath, 'module.yml');
|
|
51
55
|
}
|
|
52
|
-
static moduleJsonPath(modulePath) {
|
|
56
|
+
static moduleJsonPath(modulePath, env) {
|
|
57
|
+
if (env) {
|
|
58
|
+
return path_1.default.join(modulePath, `module.${env}.json`);
|
|
59
|
+
}
|
|
53
60
|
return path_1.default.join(modulePath, 'module.json');
|
|
54
61
|
}
|
|
55
62
|
static readModuleReference(baseDir, options) {
|
|
@@ -73,13 +80,17 @@ class ModuleConfigUtil {
|
|
|
73
80
|
// path.posix for windows keep path as foo/package.json
|
|
74
81
|
const pkgJson = path_1.default.posix.join(moduleReferenceConfig.package, 'package.json');
|
|
75
82
|
const file = require.resolve(pkgJson, options);
|
|
83
|
+
const modulePath = path_1.default.dirname(file);
|
|
76
84
|
moduleReference = {
|
|
77
|
-
path:
|
|
85
|
+
path: modulePath,
|
|
86
|
+
name: ModuleConfigUtil.readModuleNameSync(modulePath),
|
|
78
87
|
};
|
|
79
88
|
}
|
|
80
89
|
else if (ModuleReferenceConfigHelp.isInlineModuleReference(moduleReferenceConfig)) {
|
|
90
|
+
const modulePath = path_1.default.join(configDir, moduleReferenceConfig.path);
|
|
81
91
|
moduleReference = {
|
|
82
|
-
path:
|
|
92
|
+
path: modulePath,
|
|
93
|
+
name: ModuleConfigUtil.readModuleNameSync(modulePath),
|
|
83
94
|
};
|
|
84
95
|
}
|
|
85
96
|
else {
|
|
@@ -121,14 +132,16 @@ class ModuleConfigUtil {
|
|
|
121
132
|
continue;
|
|
122
133
|
}
|
|
123
134
|
moduleDirSet.add(moduleDir);
|
|
135
|
+
let name;
|
|
124
136
|
try {
|
|
125
|
-
this.readModuleNameSync(moduleDir);
|
|
137
|
+
name = this.readModuleNameSync(moduleDir);
|
|
126
138
|
}
|
|
127
139
|
catch (_) {
|
|
128
140
|
continue;
|
|
129
141
|
}
|
|
130
142
|
ref.push({
|
|
131
143
|
path: moduleDir,
|
|
144
|
+
name,
|
|
132
145
|
});
|
|
133
146
|
}
|
|
134
147
|
const moduleReferences = this.readModuleFromNodeModules(baseDir);
|
|
@@ -141,6 +154,7 @@ class ModuleConfigUtil {
|
|
|
141
154
|
});
|
|
142
155
|
ref.push({
|
|
143
156
|
path: moduleReference.path,
|
|
157
|
+
name: moduleReference.name,
|
|
144
158
|
});
|
|
145
159
|
}
|
|
146
160
|
return ref;
|
|
@@ -168,11 +182,11 @@ class ModuleConfigUtil {
|
|
|
168
182
|
const absolutePkgPath = path_1.default.dirname(packageJsonPath);
|
|
169
183
|
const realPkgPath = fs_1.default.realpathSync(absolutePkgPath);
|
|
170
184
|
try {
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
}
|
|
185
|
+
const name = this.readModuleNameSync(realPkgPath);
|
|
186
|
+
ref.push({
|
|
187
|
+
path: realPkgPath,
|
|
188
|
+
name,
|
|
189
|
+
});
|
|
176
190
|
}
|
|
177
191
|
catch (_) {
|
|
178
192
|
continue;
|
|
@@ -187,30 +201,40 @@ class ModuleConfigUtil {
|
|
|
187
201
|
(0, assert_1.default)(baseDir, 'baseDir is required');
|
|
188
202
|
return path_1.default.join(baseDir, 'config', moduleDir);
|
|
189
203
|
}
|
|
204
|
+
static getModuleName(pkg) {
|
|
205
|
+
(0, assert_1.default)(pkg.eggModule && pkg.eggModule.name, 'eggModule.name not found in package.json');
|
|
206
|
+
return pkg.eggModule.name;
|
|
207
|
+
}
|
|
190
208
|
static async readModuleName(baseDir, moduleDir) {
|
|
191
209
|
moduleDir = ModuleConfigUtil.resolveModuleDir(moduleDir, baseDir);
|
|
192
210
|
const pkgContent = await fs_1.promises.readFile(path_1.default.join(moduleDir, 'package.json'), 'utf8');
|
|
193
211
|
const pkg = JSON.parse(pkgContent);
|
|
194
|
-
|
|
195
|
-
return pkg.eggModule.name;
|
|
212
|
+
return ModuleConfigUtil.getModuleName(pkg);
|
|
196
213
|
}
|
|
197
214
|
static readModuleNameSync(moduleDir, baseDir) {
|
|
198
215
|
moduleDir = ModuleConfigUtil.resolveModuleDir(moduleDir, baseDir);
|
|
199
216
|
const pkgContent = fs_1.default.readFileSync(path_1.default.join(moduleDir, 'package.json'), 'utf8');
|
|
200
217
|
const pkg = JSON.parse(pkgContent);
|
|
201
|
-
|
|
202
|
-
return pkg.eggModule.name;
|
|
218
|
+
return ModuleConfigUtil.getModuleName(pkg);
|
|
203
219
|
}
|
|
204
|
-
static async loadModuleConfig(moduleDir, baseDir) {
|
|
220
|
+
static async loadModuleConfig(moduleDir, baseDir, env) {
|
|
205
221
|
moduleDir = ModuleConfigUtil.resolveModuleDir(moduleDir, baseDir);
|
|
206
|
-
|
|
207
|
-
if (
|
|
208
|
-
|
|
222
|
+
let defaultConfig = await ModuleConfigUtil.loadModuleYaml(moduleDir);
|
|
223
|
+
if (!defaultConfig) {
|
|
224
|
+
defaultConfig = await ModuleConfigUtil.loadModuleJson(moduleDir);
|
|
209
225
|
}
|
|
210
|
-
|
|
226
|
+
let envConfig;
|
|
227
|
+
if (env) {
|
|
228
|
+
envConfig = await ModuleConfigUtil.loadModuleYaml(moduleDir, env);
|
|
229
|
+
if (!envConfig) {
|
|
230
|
+
envConfig = await ModuleConfigUtil.loadModuleJson(moduleDir, env);
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
(0, extend2_1.default)(true, defaultConfig, envConfig);
|
|
234
|
+
return defaultConfig;
|
|
211
235
|
}
|
|
212
|
-
static async loadModuleJson(moduleDir) {
|
|
213
|
-
const moduleJsonPath = ModuleConfigUtil.moduleJsonPath(moduleDir);
|
|
236
|
+
static async loadModuleJson(moduleDir, env) {
|
|
237
|
+
const moduleJsonPath = ModuleConfigUtil.moduleJsonPath(moduleDir, env);
|
|
214
238
|
const moduleJsonPathExists = await FSUtil_1.FSUtil.fileExists(moduleJsonPath);
|
|
215
239
|
if (!moduleJsonPathExists) {
|
|
216
240
|
return;
|
|
@@ -219,8 +243,8 @@ class ModuleConfigUtil {
|
|
|
219
243
|
const moduleJson = JSON.parse(moduleJsonContent);
|
|
220
244
|
return moduleJson.config;
|
|
221
245
|
}
|
|
222
|
-
static async loadModuleYaml(moduleDir) {
|
|
223
|
-
const moduleYamlPath = ModuleConfigUtil.moduleYamlPath(moduleDir);
|
|
246
|
+
static async loadModuleYaml(moduleDir, env) {
|
|
247
|
+
const moduleYamlPath = ModuleConfigUtil.moduleYamlPath(moduleDir, env);
|
|
224
248
|
const moduleYamlPathExists = await FSUtil_1.FSUtil.fileExists(moduleYamlPath);
|
|
225
249
|
if (!moduleYamlPathExists) {
|
|
226
250
|
return;
|
|
@@ -228,16 +252,24 @@ class ModuleConfigUtil {
|
|
|
228
252
|
const moduleYamlContent = await fs_1.promises.readFile(moduleYamlPath, 'utf8');
|
|
229
253
|
return js_yaml_1.default.safeLoad(moduleYamlContent);
|
|
230
254
|
}
|
|
231
|
-
static loadModuleConfigSync(moduleDir, baseDir) {
|
|
255
|
+
static loadModuleConfigSync(moduleDir, baseDir, env) {
|
|
232
256
|
moduleDir = ModuleConfigUtil.resolveModuleDir(moduleDir, baseDir);
|
|
233
|
-
|
|
234
|
-
if (
|
|
235
|
-
|
|
257
|
+
let defaultConfig = ModuleConfigUtil.loadModuleYamlSync(moduleDir);
|
|
258
|
+
if (!defaultConfig) {
|
|
259
|
+
defaultConfig = ModuleConfigUtil.loadModuleJsonSync(moduleDir);
|
|
260
|
+
}
|
|
261
|
+
let envConfig;
|
|
262
|
+
if (env) {
|
|
263
|
+
envConfig = ModuleConfigUtil.loadModuleYamlSync(moduleDir, env);
|
|
264
|
+
if (!envConfig) {
|
|
265
|
+
envConfig = ModuleConfigUtil.loadModuleJsonSync(moduleDir, env);
|
|
266
|
+
}
|
|
236
267
|
}
|
|
237
|
-
|
|
268
|
+
(0, extend2_1.default)(true, defaultConfig, envConfig);
|
|
269
|
+
return defaultConfig;
|
|
238
270
|
}
|
|
239
|
-
static loadModuleJsonSync(moduleDir) {
|
|
240
|
-
const moduleJsonPath = ModuleConfigUtil.moduleJsonPath(moduleDir);
|
|
271
|
+
static loadModuleJsonSync(moduleDir, env) {
|
|
272
|
+
const moduleJsonPath = ModuleConfigUtil.moduleJsonPath(moduleDir, env);
|
|
241
273
|
const moduleJsonPathExists = fs_1.default.existsSync(moduleJsonPath);
|
|
242
274
|
if (!moduleJsonPathExists) {
|
|
243
275
|
return;
|
|
@@ -246,8 +278,8 @@ class ModuleConfigUtil {
|
|
|
246
278
|
const moduleJson = JSON.parse(moduleJsonContent);
|
|
247
279
|
return moduleJson.config;
|
|
248
280
|
}
|
|
249
|
-
static loadModuleYamlSync(moduleDir) {
|
|
250
|
-
const moduleYamlPath = ModuleConfigUtil.moduleYamlPath(moduleDir);
|
|
281
|
+
static loadModuleYamlSync(moduleDir, env) {
|
|
282
|
+
const moduleYamlPath = ModuleConfigUtil.moduleYamlPath(moduleDir, env);
|
|
251
283
|
const moduleYamlPathExists = fs_1.default.existsSync(moduleYamlPath);
|
|
252
284
|
if (!moduleYamlPathExists) {
|
|
253
285
|
return;
|
|
@@ -257,4 +289,4 @@ class ModuleConfigUtil {
|
|
|
257
289
|
}
|
|
258
290
|
}
|
|
259
291
|
exports.ModuleConfigUtil = ModuleConfigUtil;
|
|
260
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kdWxlQ29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL01vZHVsZUNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG9EQUE0QjtBQUM1QixzREFBMkI7QUFDM0IseUNBQStDO0FBQy9DLGdEQUF3QjtBQUN4QixvREFBNEI7QUFDNUIscUNBQWtDO0FBZ0JsQyxNQUFhLHlCQUF5QjtJQUNwQyxNQUFNLENBQUMsdUJBQXVCLENBQUMsZUFBc0M7UUFDbkUsT0FBTyxDQUFDLENBQUUsZUFBK0MsQ0FBQyxJQUFJLENBQUM7SUFDakUsQ0FBQztJQUVELE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxlQUFzQztRQUNoRSxPQUFPLENBQUMsQ0FBRSxlQUE0QyxDQUFDLE9BQU8sQ0FBQztJQUNqRSxDQUFDO0NBQ0Y7QUFSRCw4REFRQztBQWFELE1BQU0sNEJBQTRCLEdBQUc7SUFDbkMsSUFBSSxFQUFFLEVBQUU7Q0FDVCxDQUFDO0FBRUYsTUFBYSxnQkFBZ0I7SUFDcEIsTUFBTSxDQUFDLGNBQWMsQ0FBQyxVQUFrQjtRQUM3QyxPQUFPLGNBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFTSxNQUFNLENBQUMsY0FBYyxDQUFDLFVBQWtCO1FBQzdDLE9BQU8sY0FBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxPQUFlLEVBQUUsT0FBb0M7UUFDckYsMkRBQTJEO1FBQzNELHlFQUF5RTtRQUN6RSxNQUFNLFNBQVMsR0FBRyxjQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztRQUMvQyxNQUFNLGNBQWMsR0FBRyxjQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxhQUFhLENBQUMsQ0FBQztR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
|
|
292
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kdWxlQ29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL01vZHVsZUNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG9EQUE0QjtBQUM1QixzREFBMkI7QUFDM0IseUNBQStDO0FBQy9DLGdEQUF3QjtBQUN4QixvREFBNEI7QUFDNUIscUNBQWtDO0FBQ2xDLHNEQUE2QjtBQWlCN0IsTUFBYSx5QkFBeUI7SUFDcEMsTUFBTSxDQUFDLHVCQUF1QixDQUFDLGVBQXNDO1FBQ25FLE9BQU8sQ0FBQyxDQUFFLGVBQStDLENBQUMsSUFBSSxDQUFDO0lBQ2pFLENBQUM7SUFFRCxNQUFNLENBQUMsb0JBQW9CLENBQUMsZUFBc0M7UUFDaEUsT0FBTyxDQUFDLENBQUUsZUFBNEMsQ0FBQyxPQUFPLENBQUM7SUFDakUsQ0FBQztDQUNGO0FBUkQsOERBUUM7QUFhRCxNQUFNLDRCQUE0QixHQUFHO0lBQ25DLElBQUksRUFBRSxFQUFFO0NBQ1QsQ0FBQztBQUVGLE1BQWEsZ0JBQWdCO0lBQ3BCLE1BQU0sQ0FBQyxjQUFjLENBQUMsVUFBa0IsRUFBRSxHQUFZO1FBQzNELElBQUksR0FBRyxFQUFFO1lBQ1AsT0FBTyxjQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxVQUFVLEdBQUcsTUFBTSxDQUFDLENBQUM7U0FDbkQ7UUFDRCxPQUFPLGNBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFTSxNQUFNLENBQUMsY0FBYyxDQUFDLFVBQWtCLEVBQUUsR0FBWTtRQUMzRCxJQUFJLEdBQUcsRUFBRTtZQUNQLE9BQU8sY0FBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsVUFBVSxHQUFHLE9BQU8sQ0FBQyxDQUFDO1NBQ3BEO1FBQ0QsT0FBTyxjQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxhQUFhLENBQUMsQ0FB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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const __1 = require("..");
|
|
7
|
+
const assert_1 = __importDefault(require("assert"));
|
|
8
|
+
describe('test/MapUtil.test.ts', () => {
|
|
9
|
+
it('should set value if key not exists', () => {
|
|
10
|
+
const map = new Map();
|
|
11
|
+
const key = 'test_key';
|
|
12
|
+
const val = 'test_val';
|
|
13
|
+
const getVal = __1.MapUtil.getOrStore(map, key, val);
|
|
14
|
+
(0, assert_1.default)(getVal === val);
|
|
15
|
+
(0, assert_1.default)(map.has(key));
|
|
16
|
+
});
|
|
17
|
+
it('should not set value if key exits', () => {
|
|
18
|
+
const map = new Map();
|
|
19
|
+
const key = 'test_key';
|
|
20
|
+
const val = 'test_val';
|
|
21
|
+
map.set(key, val);
|
|
22
|
+
const initVal = 'test_val2333';
|
|
23
|
+
const getVal = __1.MapUtil.getOrStore(map, key, initVal);
|
|
24
|
+
(0, assert_1.default)(initVal !== getVal);
|
|
25
|
+
(0, assert_1.default)(getVal === val);
|
|
26
|
+
});
|
|
27
|
+
});
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWFwVXRpbC50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdGVzdC9NYXBVdGlsLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwwQkFBNkI7QUFDN0Isb0RBQTRCO0FBRTVCLFFBQVEsQ0FBQyxzQkFBc0IsRUFBRSxHQUFHLEVBQUU7SUFDcEMsRUFBRSxDQUFDLG9DQUFvQyxFQUFFLEdBQUcsRUFBRTtRQUM1QyxNQUFNLEdBQUcsR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ3RCLE1BQU0sR0FBRyxHQUFHLFVBQVUsQ0FBQztRQUN2QixNQUFNLEdBQUcsR0FBRyxVQUFVLENBQUM7UUFDdkIsTUFBTSxNQUFNLEdBQUcsV0FBTyxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ2pELElBQUEsZ0JBQU0sRUFBQyxNQUFNLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDdkIsSUFBQSxnQkFBTSxFQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUN2QixDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyxtQ0FBbUMsRUFBRSxHQUFHLEVBQUU7UUFDM0MsTUFBTSxHQUFHLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUN0QixNQUFNLEdBQUcsR0FBRyxVQUFVLENBQUM7UUFDdkIsTUFBTSxHQUFHLEdBQUcsVUFBVSxDQUFDO1FBQ3ZCLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ2xCLE1BQU0sT0FBTyxHQUFHLGNBQWMsQ0FBQztRQUMvQixNQUFNLE1BQU0sR0FBRyxXQUFPLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDckQsSUFBQSxnQkFBTSxFQUFDLE9BQU8sS0FBSyxNQUFNLENBQUMsQ0FBQztRQUMzQixJQUFBLGdCQUFNLEVBQUMsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDO0lBQ3pCLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMifQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const assert_1 = __importDefault(require("assert"));
|
|
7
|
+
const path_1 = __importDefault(require("path"));
|
|
8
|
+
const ModuleConfig_1 = require("../src/ModuleConfig");
|
|
9
|
+
describe('test/ModuleConfig.test.ts', () => {
|
|
10
|
+
describe('load yaml config', () => {
|
|
11
|
+
it('should work', () => {
|
|
12
|
+
const config = ModuleConfig_1.ModuleConfigUtil.loadModuleConfigSync(path_1.default.join(__dirname, './fixtures/modules/foo-yaml'));
|
|
13
|
+
assert_1.default.deepStrictEqual(config, { mysql: { host: '127.0.0.1' } });
|
|
14
|
+
});
|
|
15
|
+
});
|
|
16
|
+
describe('load module reference', () => {
|
|
17
|
+
describe('module.json not exits', () => {
|
|
18
|
+
it('should work', () => {
|
|
19
|
+
const fixturesPath = path_1.default.join(__dirname, './fixtures/apps/app-with-no-module-json');
|
|
20
|
+
const ref = ModuleConfig_1.ModuleConfigUtil.readModuleReference(fixturesPath);
|
|
21
|
+
assert_1.default.deepStrictEqual(ref, [
|
|
22
|
+
{ path: path_1.default.join(fixturesPath, 'app/module-a') },
|
|
23
|
+
{ path: path_1.default.join(fixturesPath, 'app/module-b') },
|
|
24
|
+
{ path: path_1.default.join(fixturesPath, 'app/module-b/test/fixtures/module-e') },
|
|
25
|
+
{ path: path_1.default.join(fixturesPath, 'node_modules/module-c') },
|
|
26
|
+
]);
|
|
27
|
+
});
|
|
28
|
+
it('duplicated module', () => {
|
|
29
|
+
const fixturesPath = path_1.default.join(__dirname, './fixtures/apps/app-with-no-module-json-duplicated');
|
|
30
|
+
assert_1.default.throws(() => { ModuleConfig_1.ModuleConfigUtil.readModuleReference(fixturesPath); }, /duplicate import of module reference/, 'did not throw with expected message');
|
|
31
|
+
});
|
|
32
|
+
describe('has symlink', () => {
|
|
33
|
+
it('should work', () => {
|
|
34
|
+
const fixturesPath = path_1.default.join(__dirname, './fixtures/apps/app-with-symlink');
|
|
35
|
+
const ref = ModuleConfig_1.ModuleConfigUtil.readModuleReference(fixturesPath);
|
|
36
|
+
assert_1.default.deepStrictEqual(ref, [
|
|
37
|
+
{ path: path_1.default.join(fixturesPath, 'app/module-a') },
|
|
38
|
+
]);
|
|
39
|
+
});
|
|
40
|
+
});
|
|
41
|
+
});
|
|
42
|
+
describe('module.json exits', () => {
|
|
43
|
+
it('should work', () => {
|
|
44
|
+
const fixturesPath = path_1.default.join(__dirname, './fixtures/apps/app-with-module-json');
|
|
45
|
+
const ref = ModuleConfig_1.ModuleConfigUtil.readModuleReference(fixturesPath);
|
|
46
|
+
assert_1.default.deepStrictEqual(ref, [
|
|
47
|
+
{ path: path_1.default.join(fixturesPath, 'app/module-a') },
|
|
48
|
+
{ path: path_1.default.join(fixturesPath, 'app/module-b') },
|
|
49
|
+
]);
|
|
50
|
+
});
|
|
51
|
+
});
|
|
52
|
+
describe('module.json has pkg', () => {
|
|
53
|
+
it('should work', () => {
|
|
54
|
+
const fixturesPath = path_1.default.join(__dirname, './fixtures/apps/app-with-module-pkg-json');
|
|
55
|
+
const ref = ModuleConfig_1.ModuleConfigUtil.readModuleReference(fixturesPath, {
|
|
56
|
+
cwd: fixturesPath,
|
|
57
|
+
});
|
|
58
|
+
assert_1.default.deepStrictEqual(ref, [
|
|
59
|
+
{ path: path_1.default.join(fixturesPath, 'node_modules/module-a') },
|
|
60
|
+
]);
|
|
61
|
+
});
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
describe('read package dependencies', () => {
|
|
65
|
+
it('should success if package.json not exist', async () => {
|
|
66
|
+
const dir = path_1.default.resolve(__dirname, './fixtures/monorepo/foo');
|
|
67
|
+
const ret = ModuleConfig_1.ModuleConfigUtil.readModuleFromNodeModules(dir);
|
|
68
|
+
assert_1.default.deepStrictEqual(ret, []);
|
|
69
|
+
});
|
|
70
|
+
it('should success whether dependencies entry has exported package.json', async () => {
|
|
71
|
+
const dir = path_1.default.resolve(__dirname, './fixtures/monorepo/packages/d');
|
|
72
|
+
const ret = ModuleConfig_1.ModuleConfigUtil.readModuleFromNodeModules(dir);
|
|
73
|
+
assert_1.default.deepStrictEqual(ret, [{
|
|
74
|
+
path: path_1.default.resolve(__dirname, './fixtures/monorepo/packages/d/node_modules/e'),
|
|
75
|
+
}]);
|
|
76
|
+
});
|
|
77
|
+
it('should read dependencies from self node_modules', async () => {
|
|
78
|
+
const dir = path_1.default.resolve(__dirname, './fixtures/monorepo/packages/a');
|
|
79
|
+
const ret = ModuleConfig_1.ModuleConfigUtil.readModuleFromNodeModules(dir);
|
|
80
|
+
assert_1.default.deepStrictEqual(ret, [{
|
|
81
|
+
path: path_1.default.resolve(__dirname, './fixtures/monorepo/packages/a/node_modules/c'),
|
|
82
|
+
}]);
|
|
83
|
+
});
|
|
84
|
+
it('should read dependencies from parent node_modules', async () => {
|
|
85
|
+
const dir = path_1.default.resolve(__dirname, './fixtures/monorepo/packages/b');
|
|
86
|
+
const ret = ModuleConfig_1.ModuleConfigUtil.readModuleFromNodeModules(dir);
|
|
87
|
+
assert_1.default.deepStrictEqual(ret, [{
|
|
88
|
+
path: path_1.default.resolve(__dirname, './fixtures/monorepo/packages/a'),
|
|
89
|
+
}]);
|
|
90
|
+
});
|
|
91
|
+
});
|
|
92
|
+
});
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kdWxlQ29uZmlnLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90ZXN0L01vZHVsZUNvbmZpZy50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsb0RBQTRCO0FBQzVCLGdEQUF3QjtBQUN4QixzREFBdUQ7QUFFdkQsUUFBUSxDQUFDLDJCQUEyQixFQUFFLEdBQUcsRUFBRTtJQUN6QyxRQUFRLENBQUMsa0JBQWtCLEVBQUUsR0FBRyxFQUFFO1FBQ2hDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsR0FBRyxFQUFFO1lBQ3JCLE1BQU0sTUFBTSxHQUFHLCtCQUFnQixDQUFDLG9CQUFvQixDQUFDLGNBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLDZCQUE2QixDQUFDLENBQUMsQ0FBQztZQUMxRyxnQkFBTSxDQUFDLGVBQWUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ25FLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7SUFFSCxRQUFRLENBQUMsdUJBQXVCLEVBQUUsR0FBRyxFQUFFO1FBQ3JDLFFBQVEsQ0FBQyx1QkFBdUIsRUFBRSxHQUFHLEVBQUU7WUFDckMsRUFBRSxDQUFDLGFBQWEsRUFBRSxHQUFHLEVBQUU7Z0JBQ3JCLE1BQU0sWUFBWSxHQUFHLGNBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLHlDQUF5QyxDQUFDLENBQUM7Z0JBQ3JGLE1BQU0sR0FBRyxHQUFHLCtCQUFnQixDQUFDLG1CQUFtQixDQUFDLFlBQVksQ0FBQyxDQUFDO2dCQUMvRCxnQkFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUU7b0JBQzFCLEVBQUUsSUFBSSxFQUFFLGNBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLGNBQWMsQ0FBQyxFQUFFO29CQUNqRCxFQUFFLElBQUksRUFBRSxjQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxjQUFjLENBQUMsRUFBRTtvQkFDakQsRUFBRSxJQUFJLEVBQUUsY0FBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUscUNBQXFDLENBQUMsRUFBRTtvQkFDeEUsRUFBRSxJQUFJLEVBQUUsY0FBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsdUJBQXVCLENBQUMsRUFBRTtpQkFDM0QsQ0FBQyxDQUFDO1lBQ0wsQ0FBQyxDQUFDLENBQUM7WUFFSCxFQUFFLENBQUMsbUJBQW1CLEVBQUUsR0FBRyxFQUFFO2dCQUMzQixNQUFNLFlBQVksR0FBRyxjQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxvREFBb0QsQ0FBQyxDQUFDO2dCQUNoRyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsR0FBRywrQkFBZ0IsQ0FBQyxtQkFBbUIsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxzQ0FBc0MsRUFBRSxxQ0FBcUMsQ0FBQyxDQUFDO1lBQzlKLENBQUMsQ0FBQyxDQUFDO1lBRUgsUUFBUSxDQUFDLGFBQWEsRUFBRSxHQUFHLEVBQUU7Z0JBQzNCLEVBQUUsQ0FBQyxhQUFhLEVBQUUsR0FBRyxFQUFFO29CQUNyQixNQUFNLFlBQVksR0FBRyxjQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxrQ0FBa0MsQ0FBQyxDQUFDO29CQUM5RSxNQUFNLEdBQUcsR0FBRywrQkFBZ0IsQ0FBQyxtQkFBbUIsQ0FBQyxZQUFZLENBQUMsQ0FBQztvQkFDL0QsZ0JBQU0sQ0FBQyxlQUFlLENBQUMsR0FBRyxFQUFFO3dCQUMxQixFQUFFLElBQUksRUFBRSxjQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxjQUFjLENBQUMsRUFBRTtxQkFDbEQsQ0FBQyxDQUFDO2dCQUNMLENBQUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUVILFFBQVEsQ0FBQyxtQkFBbUIsRUFBRSxHQUFHLEVBQUU7WUFDakMsRUFBRSxDQUFDLGFBQWEsRUFBRSxHQUFHLEVBQUU7Z0JBQ3JCLE1BQU0sWUFBWSxHQUFHLGNBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLHNDQUFzQyxDQUFDLENBQUM7Z0JBQ2xGLE1BQU0sR0FBRyxHQUFHLCtCQUFnQixDQUFDLG1CQUFtQixDQUFDLFlBQVksQ0FBQyxDQUFDO2dCQUMvRCxnQkFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUU7b0JBQzFCLEVBQUUsSUFBSSxFQUFFLGNBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLGNBQWMsQ0FBQyxFQUFFO29CQUNqRCxFQUFFLElBQUksRUFBRSxjQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxjQUFjLENBQUMsRUFBRTtpQkFDbEQsQ0FBQyxDQUFDO1lBQ0wsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUVILFFBQVEsQ0FBQyxxQkFBcUIsRUFBRSxHQUFHLEVBQUU7WUFDbkMsRUFBRSxDQUFDLGFBQWEsRUFBRSxHQUFHLEVBQUU7Z0JBQ3JCLE1BQU0sWUFBWSxHQUFHLGNBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLDBDQUEwQyxDQUFDLENBQUM7Z0JBQ3RGLE1BQU0sR0FBRyxHQUFHLCtCQUFnQixDQUFDLG1CQUFtQixDQUFDLFlBQVksRUFBRTtvQkFDN0QsR0FBRyxFQUFFLFlBQVk7aUJBQ2xCLENBQUMsQ0FBQztnQkFDSCxnQkFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUU7b0JBQzFCLEVBQUUsSUFBSSxFQUFFLGNBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLHVCQUF1QixDQUFDLEVBQUU7aUJBQzNELENBQUMsQ0FBQztZQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUVILFFBQVEsQ0FBQywyQkFBMkIsRUFBRSxHQUFHLEVBQUU7UUFFekMsRUFBRSxDQUFDLDBDQUEwQyxFQUFFLEtBQUssSUFBSSxFQUFFO1lBQ3hELE1BQU0sR0FBRyxHQUFHLGNBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLHlCQUF5QixDQUFDLENBQUM7WUFDL0QsTUFBTSxHQUFHLEdBQUcsK0JBQWdCLENBQUMseUJBQXlCLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDNUQsZ0JBQU0sQ0FBQyxlQUFlLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2xDLENBQUMsQ0FBQyxDQUFDO1FBRUgsRUFBRSxDQUFDLHFFQUFxRSxFQUFFLEtBQUssSUFBSSxFQUFFO1lBQ25GLE1BQU0sR0FBRyxHQUFHLGNBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLGdDQUFnQyxDQUFDLENBQUM7WUFDdEUsTUFBTSxHQUFHLEdBQUcsK0JBQWdCLENBQUMseUJBQXlCLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDNUQsZ0JBQU0sQ0FBQyxlQUFlLENBQUMsR0FBRyxFQUFFLENBQUM7b0JBQzNCLElBQUksRUFBRSxjQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSwrQ0FBK0MsQ0FBQztpQkFDL0UsQ0FBQyxDQUFDLENBQUM7UUFDTixDQUFDLENBQUMsQ0FBQztRQUVILEVBQUUsQ0FBQyxpREFBaUQsRUFBRSxLQUFLLElBQUksRUFBRTtZQUMvRCxNQUFNLEdBQUcsR0FBRyxjQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxnQ0FBZ0MsQ0FBQyxDQUFDO1lBQ3RFLE1BQU0sR0FBRyxHQUFHLCtCQUFnQixDQUFDLHlCQUF5QixDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzVELGdCQUFNLENBQUMsZUFBZSxDQUFDLEdBQUcsRUFBRSxDQUFDO29CQUMzQixJQUFJLEVBQUUsY0FBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsK0NBQStDLENBQUM7aUJBQy9FLENBQUMsQ0FBQyxDQUFDO1FBQ04sQ0FBQyxDQUFDLENBQUM7UUFFSCxFQUFFLENBQUMsbURBQW1ELEVBQUUsS0FBSyxJQUFJLEVBQUU7WUFDakUsTUFBTSxHQUFHLEdBQUcsY0FBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsZ0NBQWdDLENBQUMsQ0FBQztZQUN0RSxNQUFNLEdBQUcsR0FBRywrQkFBZ0IsQ0FBQyx5QkFBeUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUM1RCxnQkFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsQ0FBQztvQkFDM0IsSUFBSSxFQUFFLGNBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLGdDQUFnQyxDQUFDO2lCQUNoRSxDQUFDLENBQUMsQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyJ9
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const __1 = require("..");
|
|
7
|
+
const assert_1 = __importDefault(require("assert"));
|
|
8
|
+
describe('test/NameUtil.test.ts', () => {
|
|
9
|
+
it('should work', () => {
|
|
10
|
+
class Hello {
|
|
11
|
+
}
|
|
12
|
+
const name = __1.NameUtil.getClassName(Hello);
|
|
13
|
+
(0, assert_1.default)(name === 'hello');
|
|
14
|
+
});
|
|
15
|
+
});
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTmFtZVV0aWwudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3Rlc3QvTmFtZVV0aWwudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDBCQUE4QjtBQUM5QixvREFBNEI7QUFFNUIsUUFBUSxDQUFDLHVCQUF1QixFQUFFLEdBQUcsRUFBRTtJQUNyQyxFQUFFLENBQUMsYUFBYSxFQUFFLEdBQUcsRUFBRTtRQUNyQixNQUFNLEtBQUs7U0FBRztRQUNkLE1BQU0sSUFBSSxHQUFHLFlBQVEsQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDMUMsSUFBQSxnQkFBTSxFQUFDLElBQUksS0FBSyxPQUFPLENBQUMsQ0FBQztJQUMzQixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const assert_1 = __importDefault(require("assert"));
|
|
7
|
+
const __1 = require("..");
|
|
8
|
+
describe('test/ObjectUtil.test.ts', () => {
|
|
9
|
+
it('should work', () => {
|
|
10
|
+
function mockFunction(/* test */ ctx, foo, bar = '233') {
|
|
11
|
+
// test
|
|
12
|
+
console.log(ctx, foo, bar);
|
|
13
|
+
}
|
|
14
|
+
const argNames = __1.ObjectUtils.getFunctionArgNameList(mockFunction);
|
|
15
|
+
assert_1.default.deepStrictEqual(argNames, ['ctx', 'foo', 'bar']);
|
|
16
|
+
});
|
|
17
|
+
});
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT2JqZWN0VXRpbC50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdGVzdC9PYmplY3RVdGlsLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxvREFBNEI7QUFDNUIsMEJBQWlDO0FBRWpDLFFBQVEsQ0FBQyx5QkFBeUIsRUFBRSxHQUFHLEVBQUU7SUFDdkMsRUFBRSxDQUFDLGFBQWEsRUFBRSxHQUFHLEVBQUU7UUFDckIsU0FBUyxZQUFZLENBQUMsVUFBVSxDQUFBLEdBQVcsRUFBRSxHQUFXLEVBQUUsR0FBRyxHQUFHLEtBQUs7WUFDbkUsT0FBTztZQUNQLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUM3QixDQUFDO1FBRUQsTUFBTSxRQUFRLEdBQUcsZUFBVyxDQUFDLHNCQUFzQixDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ2xFLGdCQUFNLENBQUMsZUFBZSxDQUFDLFFBQVEsRUFBRSxDQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFFLENBQUMsQ0FBQztJQUM1RCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const assert_1 = __importDefault(require("assert"));
|
|
7
|
+
const Graph_1 = require("../src/Graph");
|
|
8
|
+
describe('test/LoadUnit/Graph.test.ts', () => {
|
|
9
|
+
class GraphNodeVal {
|
|
10
|
+
constructor(id) {
|
|
11
|
+
this.id = id;
|
|
12
|
+
}
|
|
13
|
+
toString() {
|
|
14
|
+
return `id:${this.id}`;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
describe('hasLoop', () => {
|
|
18
|
+
it('if has loop, should return path', () => {
|
|
19
|
+
const graph = new Graph_1.Graph();
|
|
20
|
+
const node1 = new Graph_1.GraphNode(new GraphNodeVal('1'));
|
|
21
|
+
const node2 = new Graph_1.GraphNode(new GraphNodeVal('2'));
|
|
22
|
+
const node3 = new Graph_1.GraphNode(new GraphNodeVal('3'));
|
|
23
|
+
const node4 = new Graph_1.GraphNode(new GraphNodeVal('4'));
|
|
24
|
+
const node5 = new Graph_1.GraphNode(new GraphNodeVal('5'));
|
|
25
|
+
graph.addVertex(node2);
|
|
26
|
+
graph.addVertex(node3);
|
|
27
|
+
graph.addVertex(node1);
|
|
28
|
+
graph.addVertex(node4);
|
|
29
|
+
graph.addVertex(node5);
|
|
30
|
+
graph.addEdge(node1, node5);
|
|
31
|
+
graph.addEdge(node1, node2);
|
|
32
|
+
graph.addEdge(node2, node3);
|
|
33
|
+
graph.addEdge(node3, node1);
|
|
34
|
+
const loopPath = graph.loopPath();
|
|
35
|
+
(0, assert_1.default)(loopPath.toString() === 'id:2 -> id:3 -> id:1 -> id:2');
|
|
36
|
+
});
|
|
37
|
+
it('if do not has loop, should return undefined', () => {
|
|
38
|
+
const graph = new Graph_1.Graph();
|
|
39
|
+
const node1 = new Graph_1.GraphNode({ id: '1' });
|
|
40
|
+
const node2 = new Graph_1.GraphNode({ id: '2' });
|
|
41
|
+
const node3 = new Graph_1.GraphNode({ id: '3' });
|
|
42
|
+
const node4 = new Graph_1.GraphNode({ id: '4' });
|
|
43
|
+
const node5 = new Graph_1.GraphNode({ id: '5' });
|
|
44
|
+
graph.addVertex(node2);
|
|
45
|
+
graph.addVertex(node3);
|
|
46
|
+
graph.addVertex(node1);
|
|
47
|
+
graph.addVertex(node4);
|
|
48
|
+
graph.addVertex(node5);
|
|
49
|
+
graph.addEdge(node1, node5);
|
|
50
|
+
graph.addEdge(node1, node2);
|
|
51
|
+
graph.addEdge(node2, node3);
|
|
52
|
+
graph.addEdge(node3, node4);
|
|
53
|
+
const loopPath = graph.loopPath();
|
|
54
|
+
(0, assert_1.default)(!loopPath);
|
|
55
|
+
});
|
|
56
|
+
});
|
|
57
|
+
describe('sort', () => {
|
|
58
|
+
it('can not access vertex should at first', () => {
|
|
59
|
+
const graph = new Graph_1.Graph();
|
|
60
|
+
const node1 = new Graph_1.GraphNode({ id: '1' });
|
|
61
|
+
const node2 = new Graph_1.GraphNode({ id: '2' });
|
|
62
|
+
const node3 = new Graph_1.GraphNode({ id: '3' });
|
|
63
|
+
graph.addVertex(node1);
|
|
64
|
+
graph.addVertex(node2);
|
|
65
|
+
graph.addVertex(node3);
|
|
66
|
+
graph.addEdge(node2, node3);
|
|
67
|
+
const sortRes = graph.sort();
|
|
68
|
+
(0, assert_1.default)(sortRes[0] === node1);
|
|
69
|
+
});
|
|
70
|
+
it('should have reverse order with access direct', () => {
|
|
71
|
+
const graph = new Graph_1.Graph();
|
|
72
|
+
const node1 = new Graph_1.GraphNode({ id: '1' });
|
|
73
|
+
const node2 = new Graph_1.GraphNode({ id: '2' });
|
|
74
|
+
const node3 = new Graph_1.GraphNode({ id: '3' });
|
|
75
|
+
const node4 = new Graph_1.GraphNode({ id: '4' });
|
|
76
|
+
const node5 = new Graph_1.GraphNode({ id: '5' });
|
|
77
|
+
graph.addVertex(node1);
|
|
78
|
+
graph.addVertex(node2);
|
|
79
|
+
graph.addVertex(node3);
|
|
80
|
+
graph.addVertex(node4);
|
|
81
|
+
graph.addVertex(node5);
|
|
82
|
+
graph.addEdge(node1, node2);
|
|
83
|
+
graph.addEdge(node2, node5);
|
|
84
|
+
graph.addEdge(node3, node4);
|
|
85
|
+
graph.addEdge(node4, node5);
|
|
86
|
+
const sortRes = graph.sort();
|
|
87
|
+
assert_1.default.deepStrictEqual(sortRes, [
|
|
88
|
+
node5,
|
|
89
|
+
node2,
|
|
90
|
+
node1,
|
|
91
|
+
node4,
|
|
92
|
+
node3,
|
|
93
|
+
]);
|
|
94
|
+
});
|
|
95
|
+
});
|
|
96
|
+
});
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJvdG9HcmFwaC50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdGVzdC9Qcm90b0dyYXBoLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxvREFBNEI7QUFDNUIsd0NBQThEO0FBRTlELFFBQVEsQ0FBQyw2QkFBNkIsRUFBRSxHQUFHLEVBQUU7SUFDM0MsTUFBTSxZQUFZO1FBR2hCLFlBQVksRUFBVTtZQUNwQixJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQztRQUNmLENBQUM7UUFFRCxRQUFRO1lBQ04sT0FBTyxNQUFNLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztRQUN6QixDQUFDO0tBQ0Y7SUFFRCxRQUFRLENBQUMsU0FBUyxFQUFFLEdBQUcsRUFBRTtRQUN2QixFQUFFLENBQUMsaUNBQWlDLEVBQUUsR0FBRyxFQUFFO1lBQ3pDLE1BQU0sS0FBSyxHQUFHLElBQUksYUFBSyxFQUFFLENBQUM7WUFDMUIsTUFBTSxLQUFLLEdBQUcsSUFBSSxpQkFBUyxDQUFDLElBQUksWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDbkQsTUFBTSxLQUFLLEdBQUcsSUFBSSxpQkFBUyxDQUFDLElBQUksWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDbkQsTUFBTSxLQUFLLEdBQUcsSUFBSSxpQkFBUyxDQUFDLElBQUksWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDbkQsTUFBTSxLQUFLLEdBQUcsSUFBSSxpQkFBUyxDQUFDLElBQUksWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDbkQsTUFBTSxLQUFLLEdBQUcsSUFBSSxpQkFBUyxDQUFDLElBQUksWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDbkQsS0FBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN2QixLQUFLLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3ZCLEtB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
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@eggjs/tegg-common-util",
|
|
3
3
|
"description": "common util for tegg",
|
|
4
|
-
"version": "3.
|
|
4
|
+
"version": "3.21.0",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"egg",
|
|
7
7
|
"typescript",
|
|
@@ -36,6 +36,7 @@
|
|
|
36
36
|
"node": ">=14.0.0"
|
|
37
37
|
},
|
|
38
38
|
"dependencies": {
|
|
39
|
+
"extend2": "^1.0.0",
|
|
39
40
|
"globby": "^11.1.0",
|
|
40
41
|
"js-yaml": "^3.14.0"
|
|
41
42
|
},
|
|
@@ -50,5 +51,5 @@
|
|
|
50
51
|
"ts-node": "^10.9.1",
|
|
51
52
|
"typescript": "^5.0.4"
|
|
52
53
|
},
|
|
53
|
-
"gitHead": "
|
|
54
|
+
"gitHead": "7bd1891af05dc144a2b8521efe851c778c16cebb"
|
|
54
55
|
}
|