Files
cc-1c-skills/tests/skills/cases/stub-db-create/embed-name-suffix-dataprocessor.json
T
Nick ShirokovandClaude Opus 5 e2c7f38518 fix(epf-build): конвертация в заглушку не калечит имена с суффиксом вида объекта
Замена ExternalReport. -> Report. шла по всему тексту XML и попадала внутрь
имени объекта, если оно оканчивается так же (ПриёмкаExternalReport). Имя берётся
из <Name> до замены и остаётся авторским везде — в имени файла, GeneratedType и
составе конфигурации, — а ссылка в скопированном XML расходилась с ним, и
заглушка не грузилась: «Неизвестный объект метаданных - Report.ПриёмкаReport…».

Заменяется только префикс вида объекта в начале квалифицированного имени.
Регрессии строят фикстуру навыками (erf-init --WithSKD, epf-init, form-add) —
так в кейс попадает и настоящая ссылка вида cfg:ExternalReportObject.<Имя>.
Соседние кейсы каталога переведены на {fakePlatform} и прямые слэши.

Closes #90

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-14 12:09:58 +03:00

72 lines
2.3 KiB
JSON

{
"name": "Имя, оканчивающееся на ExternalDataProcessor, не калечится в ссылках",
"fakePlatform": {
"exit": 1,
"log": ""
},
"preRun": [
{
"script": "epf-init/scripts/init",
"args": {
"-Name": "ТестExternalDataProcessor",
"-SrcDir": "{workDir}/src"
}
},
{
"script": "form-add/scripts/form-add",
"args": {
"-ObjectPath": "{workDir}/src/ТестExternalDataProcessor.xml",
"-FormName": "Форма",
"-SetDefault": true
}
}
],
"args_extra": [
"-SourceDir",
"{workDir}/src",
"-V8Path",
"{fakePlatform}",
"-TempBasePath",
"{workDir}/base",
"-EmbedSourceFile",
"{workDir}/src/ТестExternalDataProcessor.xml"
],
"expect": {
"fileContains": [
{
"file": "base/cfg/DataProcessors/ТестExternalDataProcessor.xml",
"text": [
"<Name>ТестExternalDataProcessor</Name>",
"<DefaultForm>DataProcessor.ТестExternalDataProcessor.Form.Форма</DefaultForm>",
"<xr:GeneratedType name=\"DataProcessorObject.ТестExternalDataProcessor\" category=\"Object\">",
"<xr:GeneratedType name=\"DataProcessorManager.ТестExternalDataProcessor\" category=\"Manager\">"
]
},
{
"file": "base/cfg/DataProcessors/ТестExternalDataProcessor/Forms/Форма/Ext/Form.xml",
"text": "<v8:Type>cfg:DataProcessorObject.ТестExternalDataProcessor</v8:Type>"
},
{
"file": "base/cfg/Configuration.xml",
"text": "<DataProcessor>ТестExternalDataProcessor</DataProcessor>"
}
],
"fileNotContains": [
{
"file": "base/cfg/DataProcessors/ТестExternalDataProcessor.xml",
"text": [
"ТестDataProcessor",
"<ExternalDataProcessor ",
">ExternalDataProcessor."
]
},
{
"file": "base/cfg/DataProcessors/ТестExternalDataProcessor/Forms/Форма/Ext/Form.xml",
"text": "ТестDataProcessor"
}
]
},
"expectError": true,
"noSnapshot": "платформа фейковая, а GUID копии перевыпускаются случайными — проверяется сгенерированная конфигурация"
}