@breadstone-tools/localizator-core 0.0.30 → 0.0.32
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/Detectors/VueDetector.js +17 -7
- package/Detectors/VueDetector.js.map +1 -1
- package/_tests/AngularHTMLParser.Test.d.ts +1 -0
- package/_tests/AngularHTMLParser.Test.d.ts.map +1 -0
- package/_tests/AngularHTMLParser.Test.js +99 -0
- package/_tests/AngularHTMLParser.Test.js.map +1 -0
- package/_tests/AngularPreset.Test.d.ts +1 -0
- package/_tests/AngularPreset.Test.d.ts.map +1 -0
- package/_tests/AngularPreset.Test.js +14 -0
- package/_tests/AngularPreset.Test.js.map +1 -0
- package/_tests/DuplicateKeysTask.Test.d.ts +1 -0
- package/_tests/DuplicateKeysTask.Test.d.ts.map +1 -0
- package/_tests/DuplicateKeysTask.Test.js +97 -0
- package/_tests/DuplicateKeysTask.Test.js.map +1 -0
- package/_tests/EmptyValuesTask.Test.d.ts +1 -0
- package/_tests/EmptyValuesTask.Test.d.ts.map +1 -0
- package/_tests/EmptyValuesTask.Test.js +87 -0
- package/_tests/EmptyValuesTask.Test.js.map +1 -0
- package/_tests/JSXParser.Test.d.ts +1 -0
- package/_tests/JSXParser.Test.d.ts.map +1 -0
- package/_tests/JSXParser.Test.js +94 -0
- package/_tests/JSXParser.Test.js.map +1 -0
- package/_tests/JavaScriptParser.Test.d.ts +1 -0
- package/_tests/JavaScriptParser.Test.d.ts.map +1 -0
- package/_tests/JavaScriptParser.Test.js +231 -0
- package/_tests/JavaScriptParser.Test.js.map +1 -0
- package/_tests/JsonFormatter.Test.d.ts +1 -0
- package/_tests/JsonFormatter.Test.d.ts.map +1 -0
- package/_tests/JsonFormatter.Test.js +36 -0
- package/_tests/JsonFormatter.Test.js.map +1 -0
- package/_tests/JsonResourceSerializer.Test.d.ts +1 -0
- package/_tests/JsonResourceSerializer.Test.d.ts.map +1 -0
- package/_tests/JsonResourceSerializer.Test.js +105 -0
- package/_tests/JsonResourceSerializer.Test.js.map +1 -0
- package/_tests/JsonResourceTransformerAdapter.Test.d.ts +1 -0
- package/_tests/JsonResourceTransformerAdapter.Test.d.ts.map +1 -0
- package/_tests/JsonResourceTransformerAdapter.Test.js +126 -0
- package/_tests/JsonResourceTransformerAdapter.Test.js.map +1 -0
- package/_tests/KeyConsistencyTask.Test.d.ts +1 -0
- package/_tests/KeyConsistencyTask.Test.d.ts.map +1 -0
- package/_tests/KeyConsistencyTask.Test.js +160 -0
- package/_tests/KeyConsistencyTask.Test.js.map +1 -0
- package/_tests/KeyGenerator.Test.d.ts +1 -0
- package/_tests/KeyGenerator.Test.d.ts.map +1 -0
- package/_tests/KeyGenerator.Test.js +70 -0
- package/_tests/KeyGenerator.Test.js.map +1 -0
- package/_tests/LitPreset.Test.d.ts +1 -0
- package/_tests/LitPreset.Test.d.ts.map +1 -0
- package/_tests/LitPreset.Test.js +16 -0
- package/_tests/LitPreset.Test.js.map +1 -0
- package/_tests/LocalizationProcessor.Test.d.ts +1 -0
- package/_tests/LocalizationProcessor.Test.d.ts.map +1 -0
- package/_tests/LocalizationProcessor.Test.js +121 -0
- package/_tests/LocalizationProcessor.Test.js.map +1 -0
- package/_tests/MissingTranslationsTask.Test.d.ts +1 -0
- package/_tests/MissingTranslationsTask.Test.d.ts.map +1 -0
- package/_tests/MissingTranslationsTask.Test.js +132 -0
- package/_tests/MissingTranslationsTask.Test.js.map +1 -0
- package/_tests/ReactPreset.Test.d.ts +1 -0
- package/_tests/ReactPreset.Test.d.ts.map +1 -0
- package/_tests/ReactPreset.Test.js +16 -0
- package/_tests/ReactPreset.Test.js.map +1 -0
- package/_tests/ResourceProcessor.Test.d.ts +1 -0
- package/_tests/ResourceProcessor.Test.d.ts.map +1 -0
- package/_tests/ResourceProcessor.Test.js +31 -0
- package/_tests/ResourceProcessor.Test.js.map +1 -0
- package/_tests/ResxFormatter.Test.d.ts +1 -0
- package/_tests/ResxFormatter.Test.d.ts.map +1 -0
- package/_tests/ResxFormatter.Test.js +46 -0
- package/_tests/ResxFormatter.Test.js.map +1 -0
- package/_tests/ResxResourceSerializer.Test.d.ts +1 -0
- package/_tests/ResxResourceSerializer.Test.d.ts.map +1 -0
- package/_tests/ResxResourceSerializer.Test.js +119 -0
- package/_tests/ResxResourceSerializer.Test.js.map +1 -0
- package/_tests/ResxResourceTransformerAdapter.Test.d.ts +1 -0
- package/_tests/ResxResourceTransformerAdapter.Test.d.ts.map +1 -0
- package/_tests/ResxResourceTransformerAdapter.Test.js +118 -0
- package/_tests/ResxResourceTransformerAdapter.Test.js.map +1 -0
- package/_tests/StencilPreset.Test.d.ts +1 -0
- package/_tests/StencilPreset.Test.d.ts.map +1 -0
- package/_tests/StencilPreset.Test.js +14 -0
- package/_tests/StencilPreset.Test.js.map +1 -0
- package/_tests/TSXParser.Test.d.ts +1 -0
- package/_tests/TSXParser.Test.d.ts.map +1 -0
- package/_tests/TSXParser.Test.js +76 -0
- package/_tests/TSXParser.Test.js.map +1 -0
- package/_tests/TypeScriptParser.Test.d.ts +1 -0
- package/_tests/TypeScriptParser.Test.d.ts.map +1 -0
- package/_tests/TypeScriptParser.Test.js +277 -0
- package/_tests/TypeScriptParser.Test.js.map +1 -0
- package/_tests/TypescriptResourceSerializer.Test.d.ts +1 -0
- package/_tests/TypescriptResourceSerializer.Test.d.ts.map +1 -0
- package/_tests/TypescriptResourceSerializer.Test.js +143 -0
- package/_tests/TypescriptResourceSerializer.Test.js.map +1 -0
- package/_tests/UnusedKeysTask.Test.d.ts +1 -0
- package/_tests/UnusedKeysTask.Test.d.ts.map +1 -0
- package/_tests/UnusedKeysTask.Test.js +93 -0
- package/_tests/UnusedKeysTask.Test.js.map +1 -0
- package/_tests/VueParser.Test.d.ts +1 -0
- package/_tests/VueParser.Test.d.ts.map +1 -0
- package/_tests/VueParser.Test.js +164 -0
- package/_tests/VueParser.Test.js.map +1 -0
- package/_tests/VuePreset.Test.d.ts +1 -0
- package/_tests/VuePreset.Test.d.ts.map +1 -0
- package/_tests/VuePreset.Test.js +15 -0
- package/_tests/VuePreset.Test.js.map +1 -0
- package/package.json +2 -2
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// // #region Imports
|
|
3
|
+
// import { describe, it, expect } from 'vitest';
|
|
4
|
+
// import { KeyConsistencyTask } from '../src/Resources/Analyzers/Tasks/KeyConsistencyTask';
|
|
5
|
+
// import { JsonResourceInfo } from '../src/Resources/Models/JsonResourceInfo';
|
|
6
|
+
// import type { IAnalyzerTaskExecutionContext, IAnalyzerTaskResult } from '../src/Resources/Analyzers/Tasks/Interfaces/IAnalyzerTask';
|
|
7
|
+
// // #endregion
|
|
8
|
+
// describe('KeyConsistencyTask', () => {
|
|
9
|
+
// it('should detect missing keys across locales', () => {
|
|
10
|
+
// const task = new KeyConsistencyTask(console);
|
|
11
|
+
// const context: IAnalyzerTaskExecutionContext = {
|
|
12
|
+
// resources: [
|
|
13
|
+
// new JsonResourceInfo({
|
|
14
|
+
// locale: 'en',
|
|
15
|
+
// data: {
|
|
16
|
+
// key1: 'value1',
|
|
17
|
+
// key2: 'value2'
|
|
18
|
+
// }
|
|
19
|
+
// }),
|
|
20
|
+
// new JsonResourceInfo({
|
|
21
|
+
// locale: 'de',
|
|
22
|
+
// data: {
|
|
23
|
+
// key1: 'wert1'
|
|
24
|
+
// }
|
|
25
|
+
// })
|
|
26
|
+
// ],
|
|
27
|
+
// parameters: {}
|
|
28
|
+
// };
|
|
29
|
+
// const result: IAnalyzerTaskResult<any> = task.execute(context);
|
|
30
|
+
// expect(result.success).toBe(false);
|
|
31
|
+
// expect(result.data).toEqual([
|
|
32
|
+
// {
|
|
33
|
+
// locale: 'en',
|
|
34
|
+
// missingKeys: [],
|
|
35
|
+
// isEmpty: false
|
|
36
|
+
// },
|
|
37
|
+
// {
|
|
38
|
+
// locale: 'de',
|
|
39
|
+
// missingKeys: ['key2'],
|
|
40
|
+
// isEmpty: false
|
|
41
|
+
// }
|
|
42
|
+
// ]);
|
|
43
|
+
// expect(result.message).toBe('Inconsistencies found in locales.');
|
|
44
|
+
// });
|
|
45
|
+
// it('should detect empty locales', () => {
|
|
46
|
+
// const task = new KeyConsistencyTask(console);
|
|
47
|
+
// const context: IAnalyzerTaskExecutionContext = {
|
|
48
|
+
// resources: [
|
|
49
|
+
// new JsonResourceInfo({
|
|
50
|
+
// locale: 'en',
|
|
51
|
+
// data: {}
|
|
52
|
+
// }),
|
|
53
|
+
// new JsonResourceInfo({
|
|
54
|
+
// locale: 'de',
|
|
55
|
+
// data: {
|
|
56
|
+
// key1: 'wert1'
|
|
57
|
+
// }
|
|
58
|
+
// })
|
|
59
|
+
// ],
|
|
60
|
+
// parameters: {}
|
|
61
|
+
// };
|
|
62
|
+
// const result: IAnalyzerTaskResult<any> = task.execute(context);
|
|
63
|
+
// expect(result.success).toBe(false);
|
|
64
|
+
// expect(result.data).toEqual([
|
|
65
|
+
// {
|
|
66
|
+
// locale: 'en',
|
|
67
|
+
// missingKeys: [],
|
|
68
|
+
// isEmpty: true
|
|
69
|
+
// },
|
|
70
|
+
// {
|
|
71
|
+
// locale: 'de',
|
|
72
|
+
// missingKeys: [],
|
|
73
|
+
// isEmpty: false
|
|
74
|
+
// }
|
|
75
|
+
// ]);
|
|
76
|
+
// expect(result.message).toBe('Inconsistencies found in locales.');
|
|
77
|
+
// });
|
|
78
|
+
// it('should detect consistent keys across locales', () => {
|
|
79
|
+
// const task = new KeyConsistencyTask(console);
|
|
80
|
+
// const context: IAnalyzerTaskExecutionContext = {
|
|
81
|
+
// resources: [
|
|
82
|
+
// new JsonResourceInfo({
|
|
83
|
+
// locale: 'en',
|
|
84
|
+
// data: {
|
|
85
|
+
// key1: 'value1',
|
|
86
|
+
// key2: 'value2'
|
|
87
|
+
// }
|
|
88
|
+
// }),
|
|
89
|
+
// new JsonResourceInfo({
|
|
90
|
+
// locale: 'de',
|
|
91
|
+
// data: {
|
|
92
|
+
// key1: 'wert1',
|
|
93
|
+
// key2: 'wert2'
|
|
94
|
+
// }
|
|
95
|
+
// })
|
|
96
|
+
// ],
|
|
97
|
+
// parameters: {}
|
|
98
|
+
// };
|
|
99
|
+
// const result: IAnalyzerTaskResult<any> = task.execute(context);
|
|
100
|
+
// expect(result.success).toBe(true);
|
|
101
|
+
// expect(result.data).toEqual([
|
|
102
|
+
// {
|
|
103
|
+
// locale: 'en',
|
|
104
|
+
// missingKeys: [],
|
|
105
|
+
// isEmpty: false
|
|
106
|
+
// },
|
|
107
|
+
// {
|
|
108
|
+
// locale: 'de',
|
|
109
|
+
// missingKeys: [],
|
|
110
|
+
// isEmpty: false
|
|
111
|
+
// }
|
|
112
|
+
// ]);
|
|
113
|
+
// expect(result.message).toBe('All locales are consistent.');
|
|
114
|
+
// });
|
|
115
|
+
// it('should handle multiple missing keys across multiple locales', () => {
|
|
116
|
+
// const task = new KeyConsistencyTask(console);
|
|
117
|
+
// const context: IAnalyzerTaskExecutionContext = {
|
|
118
|
+
// resources: [
|
|
119
|
+
// new JsonResourceInfo({
|
|
120
|
+
// locale: 'en',
|
|
121
|
+
// data: {
|
|
122
|
+
// key1: 'value1'
|
|
123
|
+
// }
|
|
124
|
+
// }),
|
|
125
|
+
// new JsonResourceInfo({
|
|
126
|
+
// locale: 'de',
|
|
127
|
+
// data: {
|
|
128
|
+
// key2: 'wert2'
|
|
129
|
+
// }
|
|
130
|
+
// }),
|
|
131
|
+
// new JsonResourceInfo({
|
|
132
|
+
// locale: 'fr',
|
|
133
|
+
// data: {}
|
|
134
|
+
// })
|
|
135
|
+
// ],
|
|
136
|
+
// parameters: {}
|
|
137
|
+
// };
|
|
138
|
+
// const result: IAnalyzerTaskResult<any> = task.execute(context);
|
|
139
|
+
// expect(result.success).toBe(false);
|
|
140
|
+
// expect(result.data).toEqual([
|
|
141
|
+
// {
|
|
142
|
+
// locale: 'fr',
|
|
143
|
+
// missingKeys: [],
|
|
144
|
+
// isEmpty: true
|
|
145
|
+
// },
|
|
146
|
+
// {
|
|
147
|
+
// locale: 'en',
|
|
148
|
+
// missingKeys: ['key2'],
|
|
149
|
+
// isEmpty: false
|
|
150
|
+
// },
|
|
151
|
+
// {
|
|
152
|
+
// locale: 'de',
|
|
153
|
+
// missingKeys: ['key1'],
|
|
154
|
+
// isEmpty: false
|
|
155
|
+
// }
|
|
156
|
+
// ]);
|
|
157
|
+
// expect(result.message).toBe('Inconsistencies found in locales.');
|
|
158
|
+
// });
|
|
159
|
+
// });
|
|
160
|
+
//# sourceMappingURL=KeyConsistencyTask.Test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"KeyConsistencyTask.Test.js","sourceRoot":"","sources":["../../src/_tests/KeyConsistencyTask.Test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=KeyGenerator.Test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"KeyGenerator.Test.d.ts","sourceRoot":"","sources":["../../src/_tests/KeyGenerator.Test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// import { describe, it, expect } from 'vitest';
|
|
3
|
+
// import { KeyGenerator } from '../src/Services/KeyGenerator';
|
|
4
|
+
// describe('KeyGenerator', () => {
|
|
5
|
+
// it('should generate a key for a simple string', () => {
|
|
6
|
+
// // Arrange
|
|
7
|
+
// const input = 'Facts Title';
|
|
8
|
+
// // Act
|
|
9
|
+
// const key = new KeyGenerator().generate(input);
|
|
10
|
+
// // Assert
|
|
11
|
+
// expect(key).toBe('facts.title');
|
|
12
|
+
// });
|
|
13
|
+
// it('should handle strings with special characters', () => {
|
|
14
|
+
// // Arrange
|
|
15
|
+
// const input = 'About (Description)';
|
|
16
|
+
// // Act
|
|
17
|
+
// const key = new KeyGenerator().generate(input);
|
|
18
|
+
// // Assert
|
|
19
|
+
// expect(key).toBe('about.description');
|
|
20
|
+
// });
|
|
21
|
+
// it('should handle strings with numbers', () => {
|
|
22
|
+
// // Arrange
|
|
23
|
+
// const input = 'Version 2.0';
|
|
24
|
+
// // Act
|
|
25
|
+
// const key = new KeyGenerator().generate(input);
|
|
26
|
+
// // Assert
|
|
27
|
+
// expect(key).toBe('version.2.0');
|
|
28
|
+
// });
|
|
29
|
+
// it('should ignore emojis in the input string', () => {
|
|
30
|
+
// // Arrange
|
|
31
|
+
// const input = 'Color copied to clipboard 🎉';
|
|
32
|
+
// // Act
|
|
33
|
+
// const key = new KeyGenerator().generate(input);
|
|
34
|
+
// // Assert
|
|
35
|
+
// expect(key).toBe('color.copied.to.clipboard');
|
|
36
|
+
// });
|
|
37
|
+
// it('should remove multiple spaces and trim the result', () => {
|
|
38
|
+
// // Arrange
|
|
39
|
+
// const input = ' Leading and trailing spaces ';
|
|
40
|
+
// // Act
|
|
41
|
+
// const key = new KeyGenerator().generate(input);
|
|
42
|
+
// // Assert
|
|
43
|
+
// expect(key).toBe('leading.and.trailing.spaces');
|
|
44
|
+
// });
|
|
45
|
+
// it('should handle empty strings', () => {
|
|
46
|
+
// // Arrange
|
|
47
|
+
// const input = '';
|
|
48
|
+
// // Act
|
|
49
|
+
// const key = new KeyGenerator().generate(input);
|
|
50
|
+
// // Assert
|
|
51
|
+
// expect(key).toBe('');
|
|
52
|
+
// });
|
|
53
|
+
// it('should handle strings with only emojis', () => {
|
|
54
|
+
// // Arrange
|
|
55
|
+
// const input = '🎉🚀👍';
|
|
56
|
+
// // Act
|
|
57
|
+
// const key = new KeyGenerator().generate(input);
|
|
58
|
+
// // Assert
|
|
59
|
+
// expect(key).toBe('');
|
|
60
|
+
// });
|
|
61
|
+
// it('should handle mixed content with emojis', () => {
|
|
62
|
+
// // Arrange
|
|
63
|
+
// const input = 'About the Team 👨👩👧👦';
|
|
64
|
+
// // Act
|
|
65
|
+
// const key = new KeyGenerator().generate(input);
|
|
66
|
+
// // Assert
|
|
67
|
+
// expect(key).toBe('about.the.team');
|
|
68
|
+
// });
|
|
69
|
+
// });
|
|
70
|
+
//# sourceMappingURL=KeyGenerator.Test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"KeyGenerator.Test.js","sourceRoot":"","sources":["../../src/_tests/KeyGenerator.Test.ts"],"names":[],"mappings":";AAAA,iDAAiD;AACjD,+DAA+D;AAE/D,mCAAmC;AACnC,8DAA8D;AAC9D,qBAAqB;AACrB,uCAAuC;AAEvC,iBAAiB;AACjB,0DAA0D;AAE1D,oBAAoB;AACpB,2CAA2C;AAC3C,UAAU;AAEV,kEAAkE;AAClE,qBAAqB;AACrB,+CAA+C;AAE/C,iBAAiB;AACjB,0DAA0D;AAE1D,oBAAoB;AACpB,iDAAiD;AACjD,UAAU;AAEV,uDAAuD;AACvD,qBAAqB;AACrB,uCAAuC;AAEvC,iBAAiB;AACjB,0DAA0D;AAE1D,oBAAoB;AACpB,2CAA2C;AAC3C,UAAU;AAEV,6DAA6D;AAC7D,qBAAqB;AACrB,wDAAwD;AAExD,iBAAiB;AACjB,0DAA0D;AAE1D,oBAAoB;AACpB,yDAAyD;AACzD,UAAU;AAEV,sEAAsE;AACtE,qBAAqB;AACrB,gEAAgE;AAEhE,iBAAiB;AACjB,0DAA0D;AAE1D,oBAAoB;AACpB,2DAA2D;AAC3D,UAAU;AAEV,gDAAgD;AAChD,qBAAqB;AACrB,4BAA4B;AAE5B,iBAAiB;AACjB,0DAA0D;AAE1D,oBAAoB;AACpB,gCAAgC;AAChC,UAAU;AAEV,2DAA2D;AAC3D,qBAAqB;AACrB,kCAAkC;AAElC,iBAAiB;AACjB,0DAA0D;AAE1D,oBAAoB;AACpB,gCAAgC;AAChC,UAAU;AAEV,4DAA4D;AAC5D,qBAAqB;AACrB,sDAAsD;AAEtD,iBAAiB;AACjB,0DAA0D;AAE1D,oBAAoB;AACpB,8CAA8C;AAC9C,UAAU;AACV,MAAM"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=LitPreset.Test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LitPreset.Test.d.ts","sourceRoot":"","sources":["../../src/_tests/LitPreset.Test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// import { describe, it, expect } from 'vitest';
|
|
3
|
+
// import { LitPreset } from '../src/Presets/LitPreset.js';
|
|
4
|
+
// import { TypeScriptParser } from '../src/Parsers/TypeScriptParser.js';
|
|
5
|
+
// describe('LitPreset', () => {
|
|
6
|
+
// it('should create an instance', () => {
|
|
7
|
+
// const preset = new LitPreset(console);
|
|
8
|
+
// expect(preset).toBeTruthy();
|
|
9
|
+
// });
|
|
10
|
+
// it('should return correct parsers for file extensions', () => {
|
|
11
|
+
// const preset = new LitPreset(console);
|
|
12
|
+
// const parsers = preset.getParsers();
|
|
13
|
+
// expect(parsers['.ts']).toBeInstanceOf(TypeScriptParser);
|
|
14
|
+
// });
|
|
15
|
+
// });
|
|
16
|
+
//# sourceMappingURL=LitPreset.Test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LitPreset.Test.js","sourceRoot":"","sources":["../../src/_tests/LitPreset.Test.ts"],"names":[],"mappings":";AAAA,iDAAiD;AACjD,2DAA2D;AAC3D,yEAAyE;AAEzE,gCAAgC;AAChC,8CAA8C;AAC9C,iDAAiD;AACjD,uCAAuC;AACvC,UAAU;AAEV,sEAAsE;AACtE,iDAAiD;AACjD,+CAA+C;AAE/C,mEAAmE;AACnE,UAAU;AACV,MAAM"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=LocalizationProcessor.Test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LocalizationProcessor.Test.d.ts","sourceRoot":"","sources":["../../src/_tests/LocalizationProcessor.Test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// // #region Imports
|
|
3
|
+
// import { describe, it, expect, vi, beforeEach } from 'vitest';
|
|
4
|
+
// import { LocalizationProcessor } from '../src/Services/LocalizationProcessor';
|
|
5
|
+
// import type { IFileSystem } from '../src/IO/Interfaces/IFileSystem.js';
|
|
6
|
+
// import { FileSystem } from '../src/IO/FileSystem.js';
|
|
7
|
+
// import { FileCache } from '../src/IO/FileCache.js';
|
|
8
|
+
// import { Presets } from '../src/Presets/Presets.js';
|
|
9
|
+
// import type { IFormatter } from '../src/Formatters/Interfaces/IFormatter.js';
|
|
10
|
+
// import type { IFrameworkPreset } from '../src/Presets/Interfaces/IFrameworkPreset.js';
|
|
11
|
+
// import { EventEmitter } from 'events';
|
|
12
|
+
// import type { IParserResult } from '../src/Parsers/Interfaces/IParser.js';
|
|
13
|
+
// import { Formatters } from '../src/Formatters/Formatters.js';
|
|
14
|
+
// // #endregion
|
|
15
|
+
// describe('LocalizationProcessor', () => {
|
|
16
|
+
// let fileSystemMock: IFileSystem;
|
|
17
|
+
// let formatterMock: IFormatter;
|
|
18
|
+
// let presetMock: IFrameworkPreset;
|
|
19
|
+
// let localizationProcessor: LocalizationProcessor;
|
|
20
|
+
// beforeEach(() => {
|
|
21
|
+
// fileSystemMock = {
|
|
22
|
+
// glob: vi.fn(),
|
|
23
|
+
// readAllText: vi.fn()
|
|
24
|
+
// } as unknown as IFileSystem;
|
|
25
|
+
// formatterMock = {
|
|
26
|
+
// format: vi.fn((keyValueMap) => ({
|
|
27
|
+
// content: JSON.stringify(keyValueMap),
|
|
28
|
+
// changes: keyValueMap
|
|
29
|
+
// }))
|
|
30
|
+
// } as unknown as IFormatter;
|
|
31
|
+
// presetMock = {
|
|
32
|
+
// getParsers: vi.fn(),
|
|
33
|
+
// getParser: vi.fn(),
|
|
34
|
+
// getExtensions: vi.fn()
|
|
35
|
+
// } as unknown as IFrameworkPreset;
|
|
36
|
+
// localizationProcessor = new LocalizationProcessor(formatterMock, fileSystemMock);
|
|
37
|
+
// });
|
|
38
|
+
// it('should return an empty array if the root directory is empty', () => {
|
|
39
|
+
// // Arrange
|
|
40
|
+
// const rootDir = '';
|
|
41
|
+
// // Act
|
|
42
|
+
// const result = localizationProcessor.process(rootDir, presetMock);
|
|
43
|
+
// // Assert
|
|
44
|
+
// expect(result).toEqual([]);
|
|
45
|
+
// });
|
|
46
|
+
// it('should process files and return localization results', () => {
|
|
47
|
+
// // Arrange
|
|
48
|
+
// const parsers = { js: new EventEmitter() };
|
|
49
|
+
// const parserResult: IParserResult = {
|
|
50
|
+
// columnNumber: 0,
|
|
51
|
+
// lineNumber: 0,
|
|
52
|
+
// context: '',
|
|
53
|
+
// match: {
|
|
54
|
+
// value: 'Hello, World!'
|
|
55
|
+
// }
|
|
56
|
+
// };
|
|
57
|
+
// presetMock.getParsers = vi.fn(() => parsers);
|
|
58
|
+
// presetMock.getParser = vi.fn(() => ({
|
|
59
|
+
// parse: vi.fn(() => [parserResult])
|
|
60
|
+
// }));
|
|
61
|
+
// presetMock.getExtensions = vi.fn(() => ['.js']);
|
|
62
|
+
// fileSystemMock.glob = vi.fn(() => ['/path/to/file.js']);
|
|
63
|
+
// fileSystemMock.readAllText = vi.fn(() => 'const message = "Hello, World!";');
|
|
64
|
+
// // Act
|
|
65
|
+
// const result = localizationProcessor.process('/root', presetMock);
|
|
66
|
+
// // Assert
|
|
67
|
+
// expect(fileSystemMock.glob).toHaveBeenCalledWith(['/root/**/*.js']);
|
|
68
|
+
// expect(fileSystemMock.readAllText).toHaveBeenCalledWith('/path/to/file.js');
|
|
69
|
+
// expect(presetMock.getParser).toHaveBeenCalledWith('.js');
|
|
70
|
+
// expect(result).toHaveLength(1);
|
|
71
|
+
// expect(result[0]).toEqual({
|
|
72
|
+
// filePath: '/path/to/file.js',
|
|
73
|
+
// parsings: [parserResult],
|
|
74
|
+
// extraction: {
|
|
75
|
+
// content: '{"hello.world":"Hello, World!"}',
|
|
76
|
+
// changes: { 'hello.world': 'Hello, World!' }
|
|
77
|
+
// }
|
|
78
|
+
// });
|
|
79
|
+
// });
|
|
80
|
+
// it('should emit "processed" events for each parser result', () => {
|
|
81
|
+
// // Arrange
|
|
82
|
+
// const parsers = { js: new EventEmitter() };
|
|
83
|
+
// const parserResult: IParserResult = { match: { value: 'Test String' } };
|
|
84
|
+
// const spyProcessed = vi.fn();
|
|
85
|
+
// localizationProcessor.on('processed', spyProcessed);
|
|
86
|
+
// presetMock.getParsers = vi.fn(() => parsers);
|
|
87
|
+
// presetMock.getParser = vi.fn(() => ({
|
|
88
|
+
// parse: vi.fn(() => [parserResult])
|
|
89
|
+
// }));
|
|
90
|
+
// presetMock.getExtensions = vi.fn(() => ['.js']);
|
|
91
|
+
// fileSystemMock.glob = vi.fn(() => ['/path/to/file.js']);
|
|
92
|
+
// fileSystemMock.readAllText = vi.fn(() => 'const message = "Test String";');
|
|
93
|
+
// // Act
|
|
94
|
+
// localizationProcessor.process('/root', presetMock);
|
|
95
|
+
// parsers.js.emit('parsed', parserResult);
|
|
96
|
+
// // Assert
|
|
97
|
+
// expect(spyProcessed).toHaveBeenCalledWith(parserResult);
|
|
98
|
+
// });
|
|
99
|
+
// it('should emit "failed" events on parser errors', () => {
|
|
100
|
+
// // Arrange
|
|
101
|
+
// const parsers = { js: new EventEmitter() };
|
|
102
|
+
// const error = new Error('Parser error');
|
|
103
|
+
// const spyFailed = vi.fn();
|
|
104
|
+
// localizationProcessor.on('failed', spyFailed);
|
|
105
|
+
// presetMock.getParsers = vi.fn(() => parsers);
|
|
106
|
+
// // Act
|
|
107
|
+
// localizationProcessor.process('/root', presetMock);
|
|
108
|
+
// parsers.js.emit('failed', error);
|
|
109
|
+
// // Assert
|
|
110
|
+
// expect(spyFailed).toHaveBeenCalledWith(error);
|
|
111
|
+
// });
|
|
112
|
+
// it('real world test', () => {
|
|
113
|
+
// const formatter = Formatters.get(Formatters.Json);
|
|
114
|
+
// const fileSystem = new FileSystem(new FileCache({ folder: './cache' }));
|
|
115
|
+
// const processor = new LocalizationProcessor(formatter, fileSystem);
|
|
116
|
+
// const preset = Presets.get(console, Presets.Angular);
|
|
117
|
+
// const result = processor.process(__dirname, preset);
|
|
118
|
+
// expect(result).toEqual([]);
|
|
119
|
+
// });
|
|
120
|
+
// });
|
|
121
|
+
//# sourceMappingURL=LocalizationProcessor.Test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LocalizationProcessor.Test.js","sourceRoot":"","sources":["../../src/_tests/LocalizationProcessor.Test.ts"],"names":[],"mappings":";AAAA,qBAAqB;AAErB,iEAAiE;AACjE,iFAAiF;AACjF,0EAA0E;AAC1E,wDAAwD;AACxD,sDAAsD;AACtD,uDAAuD;AACvD,gFAAgF;AAChF,yFAAyF;AACzF,yCAAyC;AACzC,6EAA6E;AAC7E,gEAAgE;AAEhE,gBAAgB;AAEhB,4CAA4C;AAC5C,uCAAuC;AACvC,qCAAqC;AACrC,wCAAwC;AACxC,wDAAwD;AAExD,yBAAyB;AACzB,6BAA6B;AAC7B,6BAA6B;AAC7B,mCAAmC;AACnC,uCAAuC;AAEvC,4BAA4B;AAC5B,gDAAgD;AAChD,wDAAwD;AACxD,uCAAuC;AACvC,kBAAkB;AAClB,sCAAsC;AAEtC,yBAAyB;AACzB,mCAAmC;AACnC,kCAAkC;AAClC,qCAAqC;AACrC,4CAA4C;AAE5C,4FAA4F;AAC5F,UAAU;AAEV,gFAAgF;AAChF,qBAAqB;AACrB,8BAA8B;AAE9B,iBAAiB;AACjB,6EAA6E;AAE7E,oBAAoB;AACpB,sCAAsC;AACtC,UAAU;AAEV,yEAAyE;AACzE,qBAAqB;AACrB,sDAAsD;AACtD,gDAAgD;AAChD,+BAA+B;AAC/B,6BAA6B;AAC7B,2BAA2B;AAC3B,uBAAuB;AACvB,yCAAyC;AACzC,gBAAgB;AAChB,aAAa;AAEb,wDAAwD;AACxD,gDAAgD;AAChD,iDAAiD;AACjD,eAAe;AACf,2DAA2D;AAE3D,mEAAmE;AACnE,wFAAwF;AAExF,iBAAiB;AACjB,6EAA6E;AAE7E,oBAAoB;AACpB,+EAA+E;AAC/E,uFAAuF;AACvF,oEAAoE;AACpE,0CAA0C;AAC1C,sCAAsC;AACtC,4CAA4C;AAC5C,wCAAwC;AACxC,4BAA4B;AAC5B,8DAA8D;AAC9D,8DAA8D;AAC9D,gBAAgB;AAChB,cAAc;AACd,UAAU;AAEV,0EAA0E;AAC1E,qBAAqB;AACrB,sDAAsD;AACtD,mFAAmF;AACnF,wCAAwC;AAExC,+DAA+D;AAE/D,wDAAwD;AACxD,gDAAgD;AAChD,iDAAiD;AACjD,eAAe;AACf,2DAA2D;AAE3D,mEAAmE;AACnE,sFAAsF;AAEtF,iBAAiB;AACjB,8DAA8D;AAC9D,mDAAmD;AAEnD,oBAAoB;AACpB,mEAAmE;AACnE,UAAU;AAEV,iEAAiE;AACjE,qBAAqB;AACrB,sDAAsD;AACtD,mDAAmD;AACnD,qCAAqC;AAErC,yDAAyD;AACzD,wDAAwD;AAExD,iBAAiB;AACjB,8DAA8D;AAC9D,4CAA4C;AAE5C,oBAAoB;AACpB,yDAAyD;AACzD,UAAU;AAEV,oCAAoC;AACpC,6DAA6D;AAC7D,mFAAmF;AACnF,8EAA8E;AAC9E,gEAAgE;AAChE,+DAA+D;AAE/D,sCAAsC;AACtC,UAAU;AACV,MAAM"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=MissingTranslationsTask.Test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MissingTranslationsTask.Test.d.ts","sourceRoot":"","sources":["../../src/_tests/MissingTranslationsTask.Test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// // #region Imports
|
|
3
|
+
// import { describe, it, expect } from 'vitest';
|
|
4
|
+
// import { MissingTranslationsTask } from '../src/Resources/Analyzers/Tasks/MissingTranslationsTask';
|
|
5
|
+
// import type { IAnalyzerTaskExecutionContext } from '../src/Resources/Analyzers/Tasks/Interfaces/IAnalyzerTask';
|
|
6
|
+
// import { JsonResourceInfo } from '../src/Resources/Models/JsonResourceInfo';
|
|
7
|
+
// // #endregion
|
|
8
|
+
// describe('MissingTranslationsTask', () => {
|
|
9
|
+
// it('should identify missing translations for resources with incomplete keys', () => {
|
|
10
|
+
// const task = new MissingTranslationsTask(console);
|
|
11
|
+
// const context: IAnalyzerTaskExecutionContext = {
|
|
12
|
+
// resources: [
|
|
13
|
+
// new JsonResourceInfo({
|
|
14
|
+
// locale: 'en',
|
|
15
|
+
// data: {
|
|
16
|
+
// key1: 'value1',
|
|
17
|
+
// key2: 'value2'
|
|
18
|
+
// }
|
|
19
|
+
// }),
|
|
20
|
+
// new JsonResourceInfo({
|
|
21
|
+
// locale: 'de',
|
|
22
|
+
// data: {
|
|
23
|
+
// key1: 'wert1'
|
|
24
|
+
// // Missing key2
|
|
25
|
+
// }
|
|
26
|
+
// })
|
|
27
|
+
// ],
|
|
28
|
+
// parameters: {}
|
|
29
|
+
// };
|
|
30
|
+
// const result = task.execute(context);
|
|
31
|
+
// expect(result.success).toBe(false);
|
|
32
|
+
// expect(result.message).toBe('Some resources are missing translations.');
|
|
33
|
+
// expect(result.data).toEqual([
|
|
34
|
+
// {
|
|
35
|
+
// locale: 'de',
|
|
36
|
+
// missingKeys: ['key2']
|
|
37
|
+
// }
|
|
38
|
+
// ]);
|
|
39
|
+
// });
|
|
40
|
+
// it('should return success for resources with all required translations', () => {
|
|
41
|
+
// const task = new MissingTranslationsTask(console);
|
|
42
|
+
// const context: IAnalyzerTaskExecutionContext = {
|
|
43
|
+
// resources: [
|
|
44
|
+
// new JsonResourceInfo({
|
|
45
|
+
// locale: 'en',
|
|
46
|
+
// data: {
|
|
47
|
+
// key1: 'value1',
|
|
48
|
+
// key2: 'value2'
|
|
49
|
+
// }
|
|
50
|
+
// }),
|
|
51
|
+
// new JsonResourceInfo({
|
|
52
|
+
// locale: 'de',
|
|
53
|
+
// data: {
|
|
54
|
+
// key1: 'wert1',
|
|
55
|
+
// key2: 'wert2'
|
|
56
|
+
// }
|
|
57
|
+
// })
|
|
58
|
+
// ],
|
|
59
|
+
// parameters: {}
|
|
60
|
+
// };
|
|
61
|
+
// const result = task.execute(context);
|
|
62
|
+
// expect(result.success).toBe(true);
|
|
63
|
+
// expect(result.message).toBe('All resources have complete translations.');
|
|
64
|
+
// expect(result.data).toEqual([]);
|
|
65
|
+
// });
|
|
66
|
+
// it('should handle resources with no keys', () => {
|
|
67
|
+
// const task = new MissingTranslationsTask(console);
|
|
68
|
+
// const context: IAnalyzerTaskExecutionContext = {
|
|
69
|
+
// resources: [
|
|
70
|
+
// new JsonResourceInfo({
|
|
71
|
+
// locale: 'en',
|
|
72
|
+
// data: {}
|
|
73
|
+
// }),
|
|
74
|
+
// new JsonResourceInfo({
|
|
75
|
+
// locale: 'de',
|
|
76
|
+
// data: {}
|
|
77
|
+
// })
|
|
78
|
+
// ],
|
|
79
|
+
// parameters: {}
|
|
80
|
+
// };
|
|
81
|
+
// const result = task.execute(context);
|
|
82
|
+
// expect(result.success).toBe(true);
|
|
83
|
+
// expect(result.message).toBe('All resources have complete translations.');
|
|
84
|
+
// expect(result.data).toEqual([]);
|
|
85
|
+
// });
|
|
86
|
+
// it('should handle a single resource with missing translations', () => {
|
|
87
|
+
// const task = new MissingTranslationsTask(console);
|
|
88
|
+
// const context: IAnalyzerTaskExecutionContext = {
|
|
89
|
+
// resources: [
|
|
90
|
+
// new JsonResourceInfo({
|
|
91
|
+
// locale: 'en',
|
|
92
|
+
// data: {
|
|
93
|
+
// key1: 'value1',
|
|
94
|
+
// key2: 'value2'
|
|
95
|
+
// }
|
|
96
|
+
// })
|
|
97
|
+
// ],
|
|
98
|
+
// parameters: {}
|
|
99
|
+
// };
|
|
100
|
+
// const result = task.execute(context);
|
|
101
|
+
// expect(result.success).toBe(true);
|
|
102
|
+
// expect(result.message).toBe('All resources have complete translations.');
|
|
103
|
+
// expect(result.data).toEqual([]);
|
|
104
|
+
// });
|
|
105
|
+
// it('should handle resources with duplicate missing keys correctly', () => {
|
|
106
|
+
// const task = new MissingTranslationsTask(console);
|
|
107
|
+
// const context: IAnalyzerTaskExecutionContext = {
|
|
108
|
+
// resources: [
|
|
109
|
+
// new JsonResourceInfo({
|
|
110
|
+
// locale: 'en',
|
|
111
|
+
// data: {
|
|
112
|
+
// key1: 'value1'
|
|
113
|
+
// // Missing key2
|
|
114
|
+
// }
|
|
115
|
+
// }),
|
|
116
|
+
// new JsonResourceInfo({
|
|
117
|
+
// locale: 'de',
|
|
118
|
+
// data: {
|
|
119
|
+
// key1: 'wert1'
|
|
120
|
+
// // Missing key2
|
|
121
|
+
// }
|
|
122
|
+
// })
|
|
123
|
+
// ],
|
|
124
|
+
// parameters: {}
|
|
125
|
+
// };
|
|
126
|
+
// const result = task.execute(context);
|
|
127
|
+
// expect(result.success).toBe(true);
|
|
128
|
+
// expect(result.message).toBe('All resources have complete translations.');
|
|
129
|
+
// expect(result.data).toEqual([]);
|
|
130
|
+
// });
|
|
131
|
+
// });
|
|
132
|
+
//# sourceMappingURL=MissingTranslationsTask.Test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MissingTranslationsTask.Test.js","sourceRoot":"","sources":["../../src/_tests/MissingTranslationsTask.Test.ts"],"names":[],"mappings":";AAAA,qBAAqB;AAErB,iDAAiD;AACjD,sGAAsG;AACtG,kHAAkH;AAClH,+EAA+E;AAE/E,gBAAgB;AAEhB,8CAA8C;AAC9C,4FAA4F;AAC5F,6DAA6D;AAC7D,2DAA2D;AAC3D,2BAA2B;AAC3B,yCAAyC;AACzC,oCAAoC;AACpC,8BAA8B;AAC9B,0CAA0C;AAC1C,yCAAyC;AACzC,wBAAwB;AACxB,sBAAsB;AACtB,yCAAyC;AACzC,oCAAoC;AACpC,8BAA8B;AAC9B,wCAAwC;AACxC,0CAA0C;AAC1C,wBAAwB;AACxB,qBAAqB;AACrB,iBAAiB;AACjB,6BAA6B;AAC7B,aAAa;AAEb,gDAAgD;AAEhD,8CAA8C;AAC9C,mFAAmF;AACnF,wCAAwC;AACxC,gBAAgB;AAChB,gCAAgC;AAChC,wCAAwC;AACxC,gBAAgB;AAChB,cAAc;AACd,UAAU;AAEV,uFAAuF;AACvF,6DAA6D;AAC7D,2DAA2D;AAC3D,2BAA2B;AAC3B,yCAAyC;AACzC,oCAAoC;AACpC,8BAA8B;AAC9B,0CAA0C;AAC1C,yCAAyC;AACzC,wBAAwB;AACxB,sBAAsB;AACtB,yCAAyC;AACzC,oCAAoC;AACpC,8BAA8B;AAC9B,yCAAyC;AACzC,wCAAwC;AACxC,wBAAwB;AACxB,qBAAqB;AACrB,iBAAiB;AACjB,6BAA6B;AAC7B,aAAa;AAEb,gDAAgD;AAEhD,6CAA6C;AAC7C,oFAAoF;AACpF,2CAA2C;AAC3C,UAAU;AAEV,yDAAyD;AACzD,6DAA6D;AAC7D,2DAA2D;AAC3D,2BAA2B;AAC3B,yCAAyC;AACzC,oCAAoC;AACpC,+BAA+B;AAC/B,sBAAsB;AACtB,yCAAyC;AACzC,oCAAoC;AACpC,+BAA+B;AAC/B,qBAAqB;AACrB,iBAAiB;AACjB,6BAA6B;AAC7B,aAAa;AAEb,gDAAgD;AAEhD,6CAA6C;AAC7C,oFAAoF;AACpF,2CAA2C;AAC3C,UAAU;AAEV,8EAA8E;AAC9E,6DAA6D;AAC7D,2DAA2D;AAC3D,2BAA2B;AAC3B,yCAAyC;AACzC,oCAAoC;AACpC,8BAA8B;AAC9B,0CAA0C;AAC1C,yCAAyC;AACzC,wBAAwB;AACxB,qBAAqB;AACrB,iBAAiB;AACjB,6BAA6B;AAC7B,aAAa;AAEb,gDAAgD;AAEhD,6CAA6C;AAC7C,oFAAoF;AACpF,2CAA2C;AAC3C,UAAU;AAEV,kFAAkF;AAClF,6DAA6D;AAC7D,2DAA2D;AAC3D,2BAA2B;AAC3B,yCAAyC;AACzC,oCAAoC;AACpC,8BAA8B;AAC9B,yCAAyC;AACzC,0CAA0C;AAC1C,wBAAwB;AACxB,sBAAsB;AACtB,yCAAyC;AACzC,oCAAoC;AACpC,8BAA8B;AAC9B,wCAAwC;AACxC,0CAA0C;AAC1C,wBAAwB;AACxB,qBAAqB;AACrB,iBAAiB;AACjB,6BAA6B;AAC7B,aAAa;AAEb,gDAAgD;AAEhD,6CAA6C;AAC7C,oFAAoF;AACpF,2CAA2C;AAC3C,UAAU;AACV,MAAM"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=ReactPreset.Test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReactPreset.Test.d.ts","sourceRoot":"","sources":["../../src/_tests/ReactPreset.Test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// import { describe, it, expect } from 'vitest';
|
|
3
|
+
// import { JavaScriptParser } from '../src/Parsers/JavaScriptParser.js';
|
|
4
|
+
// import { JSXParser } from '../src/Parsers/JSXParser.js';
|
|
5
|
+
// import { TypeScriptParser } from '../src/Parsers/TypeScriptParser.js';
|
|
6
|
+
// import { ReactPreset } from '../src/Presets/ReactPreset.js';
|
|
7
|
+
// describe('ReactPreset', () => {
|
|
8
|
+
// it('should return correct parsers for file extensions', () => {
|
|
9
|
+
// const preset = new ReactPreset(console);
|
|
10
|
+
// const parsers = preset.getParsers();
|
|
11
|
+
// expect(parsers['.jsx']).toBeInstanceOf(JSXParser);
|
|
12
|
+
// expect(parsers['.js']).toBeInstanceOf(JavaScriptParser);
|
|
13
|
+
// expect(parsers['.ts']).toBeInstanceOf(TypeScriptParser);
|
|
14
|
+
// });
|
|
15
|
+
// });
|
|
16
|
+
//# sourceMappingURL=ReactPreset.Test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReactPreset.Test.js","sourceRoot":"","sources":["../../src/_tests/ReactPreset.Test.ts"],"names":[],"mappings":";AAAA,iDAAiD;AACjD,yEAAyE;AACzE,2DAA2D;AAC3D,yEAAyE;AACzE,+DAA+D;AAE/D,kCAAkC;AAClC,sEAAsE;AACtE,mDAAmD;AACnD,+CAA+C;AAE/C,6DAA6D;AAC7D,mEAAmE;AACnE,mEAAmE;AACnE,UAAU;AACV,MAAM"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=ResourceProcessor.Test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResourceProcessor.Test.d.ts","sourceRoot":"","sources":["../../src/_tests/ResourceProcessor.Test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// // #region Imports
|
|
3
|
+
// import { describe, it, expect } from 'vitest';
|
|
4
|
+
// import { ResourceProcessor } from '../src/Resources/ResourceProcessor';
|
|
5
|
+
// import { ResourceScanner } from '../src/Resources/Scanners/ResourceScanner';
|
|
6
|
+
// import { ResourceTransformer } from '../src/Resources/Transformers/ResourceTransformer';
|
|
7
|
+
// import { FileSystem } from '../src/IO/FileSystem';
|
|
8
|
+
// import { FileCache } from '../src/IO/FileCache';
|
|
9
|
+
// import { ResourceMode } from '../src/Resources/ResourceMode';
|
|
10
|
+
// import { ResourceAnalyzer } from '../src/Resources/Analyzers/ResourceAnalyzer';
|
|
11
|
+
// import { ResourceSorter } from '../src/Resources/Sorting/ResourceSorter';
|
|
12
|
+
// // #endregion
|
|
13
|
+
// describe('ResourceProcessor', () => {
|
|
14
|
+
// it('should log a warning for empty locales', () => {
|
|
15
|
+
// const fc = new FileCache({
|
|
16
|
+
// disabeld: true,
|
|
17
|
+
// folder: './.cache'
|
|
18
|
+
// });
|
|
19
|
+
// const fs = new FileSystem(fc);
|
|
20
|
+
// const scanner = new ResourceScanner(console, fs, {
|
|
21
|
+
// cwd: './',
|
|
22
|
+
// mode: ResourceMode.Json
|
|
23
|
+
// });
|
|
24
|
+
// const transformer = new ResourceTransformer(console);
|
|
25
|
+
// const analyzer = new ResourceAnalyzer(console);
|
|
26
|
+
// const sorter = new ResourceSorter(console, { dryRun: false });
|
|
27
|
+
// const processor = new ResourceProcessor(console, scanner, transformer, analyzer, sorter);
|
|
28
|
+
// expect(processor).toBeDefined();
|
|
29
|
+
// });
|
|
30
|
+
// });
|
|
31
|
+
//# sourceMappingURL=ResourceProcessor.Test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResourceProcessor.Test.js","sourceRoot":"","sources":["../../src/_tests/ResourceProcessor.Test.ts"],"names":[],"mappings":";AAAA,qBAAqB;AAErB,iDAAiD;AACjD,0EAA0E;AAC1E,+EAA+E;AAC/E,2FAA2F;AAC3F,qDAAqD;AACrD,mDAAmD;AACnD,gEAAgE;AAChE,kFAAkF;AAClF,4EAA4E;AAE5E,gBAAgB;AAEhB,wCAAwC;AACxC,2DAA2D;AAC3D,qCAAqC;AACrC,8BAA8B;AAC9B,iCAAiC;AACjC,cAAc;AACd,yCAAyC;AACzC,6DAA6D;AAC7D,yBAAyB;AACzB,sCAAsC;AACtC,cAAc;AACd,gEAAgE;AAChE,0DAA0D;AAC1D,yEAAyE;AACzE,oGAAoG;AAEpG,2CAA2C;AAC3C,UAAU;AACV,MAAM"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=ResxFormatter.Test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResxFormatter.Test.d.ts","sourceRoot":"","sources":["../../src/_tests/ResxFormatter.Test.ts"],"names":[],"mappings":""}
|