Skip to content

Commit d2cab49

Browse files
authored
Merge pull request #173 from silverbulleters/fix/CommonTemplate
fix(templates): Расширение типов TemplateType
2 parents 3034689 + e2d2d39 commit d2cab49

File tree

32 files changed

+821
-42
lines changed

32 files changed

+821
-42
lines changed

src/main/java/com/github/_1c_syntax/mdclasses/metadata/additional/TemplateType.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,8 @@ public enum TemplateType implements EnumWithValue {
2929
GRAPHICAL_SCHEME("GraphicalSchema"),
3030
HTML_DOCUMENT("HTMLDocument"),
3131
SPREADSHEET_DOCUMENT("SpreadsheetDocument"),
32+
ACTIVE_DOCUMENT("ActiveDocument"),
33+
GEOGRAPHICAL_SCHEMA("GeographicalSchema"),
3234
TEXT_DOCUMENT("TextDocument");
3335

3436
private final String value;

src/test/java/com/github/_1c_syntax/mdclasses/mdo/CommonTemplateTest.java

Lines changed: 200 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,11 @@
2222
package com.github._1c_syntax.mdclasses.mdo;
2323

2424
import com.github._1c_syntax.mdclasses.metadata.additional.MDOType;
25+
import com.github._1c_syntax.mdclasses.metadata.additional.TemplateType;
2526
import org.junit.jupiter.api.Test;
2627

28+
import static org.assertj.core.api.Assertions.assertThat;
29+
2730
class CommonTemplateTest extends AbstractMDOTest {
2831
CommonTemplateTest() {
2932
super(MDOType.COMMON_TEMPLATE);
@@ -32,20 +35,210 @@ class CommonTemplateTest extends AbstractMDOTest {
3235
@Override
3336
@Test
3437
void testEDT() {
35-
var mdo = getMDObjectEDT("CommonTemplates/Макет/Макет.mdo");
36-
checkBaseField(mdo, CommonTemplate.class, "Макет",
37-
"799e0ae7-f5ea-4b50-8853-e2c58ef5d9cd");
38-
checkNoChildren(mdo);
39-
checkNoModules(mdo);
38+
checkEdtActiveDocument();
39+
checkEdtSpreadSheetDocument();
40+
checkEdtHtmlDocument();
41+
checkEdtBinaryData();
42+
checkEdtDataCompositionAppearance();
43+
checkEdtDataCompositionScheme();
44+
checkEdtTextDocument();
45+
checkEdtAddin();
46+
checkEdtGeoScheme();
47+
checkEdtGraphicalScheme();
4048
}
4149

4250
@Override
4351
@Test
4452
void testDesigner() {
45-
var mdo = getMDObjectDesigner("CommonTemplates/Макет.xml");
53+
checkOriginalActiveDocument();
54+
checkOriginalSpreadSheetDocument();
55+
checkOriginalHtmlDocument();
56+
checkOriginalBinaryData();
57+
checkOriginalDataCompositionAppearance();
58+
checkOriginalDataCompositionScheme();
59+
checkOriginalTextDocument();
60+
checkOriginalAddin();
61+
checkOriginalGeoScheme();
62+
checkOriginalGraphicalScheme();
63+
}
64+
65+
private void checkEdtGraphicalScheme() {
66+
var mdo = getMDObjectEDT("CommonTemplates/ГрафическаяСхема/ГрафическаяСхема.mdo");
67+
checkBaseField(mdo, CommonTemplate.class, "ГрафическаяСхема",
68+
"4333f027-4fc2-40a0-ae7d-48fbf0cea50b");
69+
checkNoChildren(mdo);
70+
checkNoModules(mdo);
71+
assertThat(((CommonTemplate) mdo).getTemplateType()).isEqualTo(TemplateType.GRAPHICAL_SCHEME);
72+
}
73+
74+
private void checkEdtGeoScheme() {
75+
var mdo = getMDObjectEDT("CommonTemplates/ГеографическаяСхема/ГеографическаяСхема.mdo");
76+
checkBaseField(mdo, CommonTemplate.class, "ГеографическаяСхема",
77+
"1d8d8dfc-e7c5-445a-a88d-6743faad2ab6");
78+
checkNoChildren(mdo);
79+
checkNoModules(mdo);
80+
assertThat(((CommonTemplate) mdo).getTemplateType()).isEqualTo(TemplateType.GEOGRAPHICAL_SCHEMA);
81+
}
82+
83+
private void checkEdtAddin() {
84+
var mdo = getMDObjectEDT("CommonTemplates/ВнешняяКомпонента/ВнешняяКомпонента.mdo");
85+
checkBaseField(mdo, CommonTemplate.class, "ВнешняяКомпонента",
86+
"4a0dab22-affd-4887-a9b6-57a1e88f8377");
87+
checkNoChildren(mdo);
88+
checkNoModules(mdo);
89+
assertThat(((CommonTemplate) mdo).getTemplateType()).isEqualTo(TemplateType.ADD_IN);
90+
}
91+
92+
private void checkEdtTextDocument() {
93+
var mdo = getMDObjectEDT("CommonTemplates/ТекстовыйДокумент/ТекстовыйДокумент.mdo");
94+
checkBaseField(mdo, CommonTemplate.class, "ТекстовыйДокумент",
95+
"3084f392-8f90-4134-a82e-790e225aab29");
96+
checkNoChildren(mdo);
97+
checkNoModules(mdo);
98+
assertThat(((CommonTemplate) mdo).getTemplateType()).isEqualTo(TemplateType.TEXT_DOCUMENT);
99+
}
100+
101+
private void checkEdtDataCompositionScheme() {
102+
var mdo = getMDObjectEDT("CommonTemplates/СКД/СКД.mdo");
103+
checkBaseField(mdo, CommonTemplate.class, "СКД",
104+
"8ae95178-7f50-4a77-aaf8-f8ffb72c65d4");
105+
checkNoChildren(mdo);
106+
checkNoModules(mdo);
107+
assertThat(((CommonTemplate) mdo).getTemplateType()).isEqualTo(TemplateType.DATA_COMPOSITION_SCHEME);
108+
}
109+
110+
private void checkEdtDataCompositionAppearance() {
111+
var mdo = getMDObjectEDT("CommonTemplates/МакетОформления/МакетОформления.mdo");
112+
checkBaseField(mdo, CommonTemplate.class, "МакетОформления",
113+
"f6bbaf46-bc77-412b-9440-3032bfc06c57");
114+
checkNoChildren(mdo);
115+
checkNoModules(mdo);
116+
assertThat(((CommonTemplate) mdo).getTemplateType()).isEqualTo(TemplateType.DATA_COMPOSITION_APPEARANCE_TEMPLATE);
117+
}
118+
119+
private void checkEdtBinaryData() {
120+
var mdo = getMDObjectEDT("CommonTemplates/ДвоичныеДанные/ДвоичныеДанные.mdo");
121+
checkBaseField(mdo, CommonTemplate.class, "ДвоичныеДанные",
122+
"f4ab9283-1110-4808-9cbf-40c71ebb88a2");
123+
checkNoChildren(mdo);
124+
checkNoModules(mdo);
125+
assertThat(((CommonTemplate) mdo).getTemplateType()).isEqualTo(TemplateType.BINARY_DATA);
126+
}
127+
128+
private void checkEdtHtmlDocument() {
129+
var mdo = getMDObjectEDT("CommonTemplates/HTML/HTML.mdo");
130+
checkBaseField(mdo, CommonTemplate.class, "HTML",
131+
"5d76084a-68fa-4579-91da-17d7ffab6225");
132+
checkNoChildren(mdo);
133+
checkNoModules(mdo);
134+
assertThat(((CommonTemplate) mdo).getTemplateType()).isEqualTo(TemplateType.HTML_DOCUMENT);
135+
}
136+
137+
private void checkEdtSpreadSheetDocument() {
138+
var mdo = getMDObjectEDT("CommonTemplates/ТабличныйДокумент/ТабличныйДокумент.mdo");
139+
checkBaseField(mdo, CommonTemplate.class, "ТабличныйДокумент",
140+
"5b54ba38-ec04-4fc6-897f-48d36d0312a6");
141+
checkNoChildren(mdo);
142+
checkNoModules(mdo);
143+
assertThat(((CommonTemplate) mdo).getTemplateType()).isEqualTo(TemplateType.SPREADSHEET_DOCUMENT);
144+
}
145+
146+
private void checkEdtActiveDocument() {
147+
var mdo = getMDObjectEDT("CommonTemplates/Active/Active.mdo");
148+
checkBaseField(mdo, CommonTemplate.class, "Active",
149+
"557665fc-86f5-44e1-9801-490cea841718");
150+
checkNoChildren(mdo);
151+
checkNoModules(mdo);
152+
assertThat(((CommonTemplate) mdo).getTemplateType()).isEqualTo(TemplateType.ACTIVE_DOCUMENT);
153+
}
154+
155+
private void checkOriginalGraphicalScheme() {
156+
var mdo = getMDObjectDesigner("CommonTemplates/ГрафическаяСхема.xml");
157+
checkBaseField(mdo, CommonTemplate.class, "ГрафическаяСхема",
158+
"4333f027-4fc2-40a0-ae7d-48fbf0cea50b");
159+
checkNoChildren(mdo);
160+
checkNoModules(mdo);
161+
assertThat(((CommonTemplate) mdo).getTemplateType()).isEqualTo(TemplateType.GRAPHICAL_SCHEME);
162+
}
163+
164+
private void checkOriginalGeoScheme() {
165+
var mdo = getMDObjectDesigner("CommonTemplates/ГеографическаяСхема.xml");
166+
checkBaseField(mdo, CommonTemplate.class, "ГеографическаяСхема",
167+
"1d8d8dfc-e7c5-445a-a88d-6743faad2ab6");
168+
checkNoChildren(mdo);
169+
checkNoModules(mdo);
170+
assertThat(((CommonTemplate) mdo).getTemplateType()).isEqualTo(TemplateType.GEOGRAPHICAL_SCHEMA);
171+
}
172+
173+
private void checkOriginalAddin() {
174+
var mdo = getMDObjectDesigner("CommonTemplates/ВнешняяКомпонента.xml");
175+
checkBaseField(mdo, CommonTemplate.class, "ВнешняяКомпонента",
176+
"4a0dab22-affd-4887-a9b6-57a1e88f8377");
177+
checkNoChildren(mdo);
178+
checkNoModules(mdo);
179+
assertThat(((CommonTemplate) mdo).getTemplateType()).isEqualTo(TemplateType.ADD_IN);
180+
}
181+
182+
private void checkOriginalTextDocument() {
183+
var mdo = getMDObjectDesigner("CommonTemplates/ТекстовыйДокумент.xml");
184+
checkBaseField(mdo, CommonTemplate.class, "ТекстовыйДокумент",
185+
"3084f392-8f90-4134-a82e-790e225aab29");
186+
checkNoChildren(mdo);
187+
checkNoModules(mdo);
188+
assertThat(((CommonTemplate) mdo).getTemplateType()).isEqualTo(TemplateType.TEXT_DOCUMENT);
189+
}
190+
191+
private void checkOriginalDataCompositionScheme() {
192+
var mdo = getMDObjectDesigner("CommonTemplates/СКД.xml");
193+
checkBaseField(mdo, CommonTemplate.class, "СКД",
194+
"8ae95178-7f50-4a77-aaf8-f8ffb72c65d4");
195+
checkNoChildren(mdo);
196+
checkNoModules(mdo);
197+
assertThat(((CommonTemplate) mdo).getTemplateType()).isEqualTo(TemplateType.DATA_COMPOSITION_SCHEME);
198+
}
199+
200+
private void checkOriginalDataCompositionAppearance() {
201+
var mdo = getMDObjectDesigner("CommonTemplates/МакетОформления.xml");
202+
checkBaseField(mdo, CommonTemplate.class, "МакетОформления",
203+
"f6bbaf46-bc77-412b-9440-3032bfc06c57");
204+
checkNoChildren(mdo);
205+
checkNoModules(mdo);
206+
assertThat(((CommonTemplate) mdo).getTemplateType()).isEqualTo(TemplateType.DATA_COMPOSITION_APPEARANCE_TEMPLATE);
207+
}
208+
209+
private void checkOriginalBinaryData() {
210+
var mdo = getMDObjectDesigner("CommonTemplates/ДвоичныеДанные.xml");
211+
checkBaseField(mdo, CommonTemplate.class, "ДвоичныеДанные",
212+
"f4ab9283-1110-4808-9cbf-40c71ebb88a2");
213+
checkNoChildren(mdo);
214+
checkNoModules(mdo);
215+
assertThat(((CommonTemplate) mdo).getTemplateType()).isEqualTo(TemplateType.BINARY_DATA);
216+
}
217+
218+
private void checkOriginalHtmlDocument() {
219+
var mdo = getMDObjectDesigner("CommonTemplates/HTML.xml");
220+
checkBaseField(mdo, CommonTemplate.class, "HTML",
221+
"5d76084a-68fa-4579-91da-17d7ffab6225");
222+
checkNoChildren(mdo);
223+
checkNoModules(mdo);
224+
assertThat(((CommonTemplate) mdo).getTemplateType()).isEqualTo(TemplateType.HTML_DOCUMENT);
225+
}
226+
227+
private void checkOriginalSpreadSheetDocument() {
228+
var mdo = getMDObjectDesigner("CommonTemplates/ТабличныйДокумент.xml");
46229
checkBaseField(mdo, CommonTemplate.class, "Макет",
47-
"799e0ae7-f5ea-4b50-8853-e2c58ef5d9cd");
230+
"799e0ae7-f5ea-4b50-8853-e2c58ef5d9cd");
231+
checkNoChildren(mdo);
232+
checkNoModules(mdo);
233+
assertThat(((CommonTemplate) mdo).getTemplateType()).isEqualTo(TemplateType.SPREADSHEET_DOCUMENT);
234+
}
235+
236+
private void checkOriginalActiveDocument() {
237+
var mdo = getMDObjectDesigner("CommonTemplates/Active.xml");
238+
checkBaseField(mdo, CommonTemplate.class, "Active",
239+
"557665fc-86f5-44e1-9801-490cea841718");
48240
checkNoChildren(mdo);
49241
checkNoModules(mdo);
242+
assertThat(((CommonTemplate) mdo).getTemplateType()).isEqualTo(TemplateType.ACTIVE_DOCUMENT);
50243
}
51244
}

src/test/java/com/github/_1c_syntax/mdclasses/mdo/MDOConfigurationTest.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ void testEDT() {
7474
assertThat(configuration.getObjectBelonging()).isEqualTo(ObjectBelonging.OWN);
7575
assertThat(configuration.getNamePrefix()).isEmpty();
7676

77-
assertThat(configuration.getChildren()).hasSize(52)
77+
assertThat(configuration.getChildren()).hasSize(61)
7878
.allMatch(Either::isRight);
7979
checkChildCount(configuration, MDOType.ACCOUNTING_REGISTER, 1);
8080
checkChildCount(configuration, MDOType.ACCUMULATION_REGISTER, 1);
@@ -90,7 +90,7 @@ void testEDT() {
9090
checkChildCount(configuration, MDOType.COMMON_FORM, 1);
9191
checkChildCount(configuration, MDOType.COMMON_MODULE, 6);
9292
checkChildCount(configuration, MDOType.COMMON_PICTURE, 1);
93-
checkChildCount(configuration, MDOType.COMMON_TEMPLATE, 1);
93+
checkChildCount(configuration, MDOType.COMMON_TEMPLATE, 10);
9494
checkChildCount(configuration, MDOType.CONSTANT, 1);
9595
checkChildCount(configuration, MDOType.DATA_PROCESSOR, 1);
9696
checkChildCount(configuration, MDOType.DEFINED_TYPE, 1);
@@ -185,7 +185,7 @@ void testDesigner() {
185185
assertThat(configuration.getObjectBelonging()).isEqualTo(ObjectBelonging.OWN);
186186
assertThat(configuration.getNamePrefix()).isEmpty();
187187

188-
assertThat(configuration.getChildren()).hasSize(52)
188+
assertThat(configuration.getChildren()).hasSize(61)
189189
.allMatch(Either::isRight);
190190
checkChildCount(configuration, MDOType.ACCOUNTING_REGISTER, 1);
191191
checkChildCount(configuration, MDOType.ACCUMULATION_REGISTER, 1);
@@ -201,7 +201,7 @@ void testDesigner() {
201201
checkChildCount(configuration, MDOType.COMMON_FORM, 1);
202202
checkChildCount(configuration, MDOType.COMMON_MODULE, 6);
203203
checkChildCount(configuration, MDOType.COMMON_PICTURE, 1);
204-
checkChildCount(configuration, MDOType.COMMON_TEMPLATE, 1);
204+
checkChildCount(configuration, MDOType.COMMON_TEMPLATE, 10);
205205
checkChildCount(configuration, MDOType.CONSTANT, 1);
206206
checkChildCount(configuration, MDOType.DATA_PROCESSOR, 1);
207207
checkChildCount(configuration, MDOType.DEFINED_TYPE, 1);

src/test/java/com/github/_1c_syntax/mdclasses/metadata/ConfigurationTest.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ void testEDT() {
8080
assertThat(configuration.getCommonModules()).hasSize(6);
8181
assertThat(configuration.getLanguages()).hasSize(3);
8282

83-
assertThat(configuration.getChildren()).hasSize(96);
83+
assertThat(configuration.getChildren()).hasSize(105);
8484
checkChildCount(configuration, MDOType.CONFIGURATION, 1);
8585
checkChildCount(configuration, MDOType.COMMAND, 3);
8686
checkChildCount(configuration, MDOType.FORM, 7);
@@ -104,7 +104,7 @@ void testEDT() {
104104
checkChildCount(configuration, MDOType.COMMON_FORM, 1);
105105
checkChildCount(configuration, MDOType.COMMON_MODULE, 6);
106106
checkChildCount(configuration, MDOType.COMMON_PICTURE, 1);
107-
checkChildCount(configuration, MDOType.COMMON_TEMPLATE, 1);
107+
checkChildCount(configuration, MDOType.COMMON_TEMPLATE, 10);
108108
checkChildCount(configuration, MDOType.CONSTANT, 1);
109109
checkChildCount(configuration, MDOType.DATA_PROCESSOR, 1);
110110
checkChildCount(configuration, MDOType.DEFINED_TYPE, 1);
@@ -134,7 +134,7 @@ void testEDT() {
134134
checkChildCount(configuration, MDOType.WS_REFERENCE, 1);
135135
checkChildCount(configuration, MDOType.XDTO_PACKAGE, 1);
136136

137-
assertThat(configuration.getChildrenByMdoRef()).hasSize(96);
137+
assertThat(configuration.getChildrenByMdoRef()).hasSize(105);
138138

139139
assertThat(configuration.getCommonModule("ГлобальныйОбщийМодуль")).isPresent();
140140
assertThat(configuration.getCommonModule("НесуществующийМодуль")).isNotPresent();
@@ -319,7 +319,7 @@ void testDesigner() {
319319
assertThat(configuration.getCommonModules()).hasSize(6);
320320
assertThat(configuration.getLanguages()).hasSize(3);
321321

322-
assertThat(configuration.getChildren()).hasSize(101);
322+
assertThat(configuration.getChildren()).hasSize(110);
323323
checkChildCount(configuration, MDOType.CONFIGURATION, 1);
324324
checkChildCount(configuration, MDOType.COMMAND, 1);
325325
checkChildCount(configuration, MDOType.FORM, 7);
@@ -343,7 +343,7 @@ void testDesigner() {
343343
checkChildCount(configuration, MDOType.COMMON_FORM, 1);
344344
checkChildCount(configuration, MDOType.COMMON_MODULE, 6);
345345
checkChildCount(configuration, MDOType.COMMON_PICTURE, 1);
346-
checkChildCount(configuration, MDOType.COMMON_TEMPLATE, 1);
346+
checkChildCount(configuration, MDOType.COMMON_TEMPLATE, 10);
347347
checkChildCount(configuration, MDOType.CONSTANT, 1);
348348
checkChildCount(configuration, MDOType.DATA_PROCESSOR, 1);
349349
checkChildCount(configuration, MDOType.DEFINED_TYPE, 1);
@@ -374,7 +374,7 @@ void testDesigner() {
374374
checkChildCount(configuration, MDOType.WS_REFERENCE, 1);
375375
checkChildCount(configuration, MDOType.XDTO_PACKAGE, 1);
376376

377-
assertThat(configuration.getChildrenByMdoRef()).hasSize(101);
377+
assertThat(configuration.getChildrenByMdoRef()).hasSize(110);
378378

379379
assertThat(configuration.getCommonModule("ГлобальныйОбщийМодуль")).isPresent();
380380
assertThat(configuration.getCommonModule("ГлобальныйОбщийМодуль3")).isNotPresent();
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<mdclass:CommonTemplate xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="557665fc-86f5-44e1-9801-490cea841718">
3+
<name>Active</name>
4+
<synonym>
5+
<key>ru</key>
6+
<value>Active</value>
7+
</synonym>
8+
<templateType>ActiveDocument</templateType>
9+
</mdclass:CommonTemplate>

0 commit comments

Comments
 (0)