mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-09-06 10:10:52 +03:00
Относительный путь при копировании содержимого объекта в конфигурацию-заглушку считался через Substring по длине переданной строки. Каталог может прийти с коротким именем (C:\Users\NSHIRO~1\...), а Get-ChildItem отдаёт полное — разница в один символ, и файлы уезжали в <Объект>\а\Ext\ObjectModule.bsl. Проверка при этом молча шла по объекту без модулей и форм и всегда была зелёной. Длина берётся у разрешённого пути; py-порт иммунен (os.path.relpath). Дефект нашли новые кейсы stub-db-create — конвертация внешней обработки в объект конфигурации: корневой тег и порождаемые типы, перевыпуск GUID, копирование .bsl байт в байт. Каждый сверен возвратом дефекта в обоих портах. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013MQkqXxErBepYmoUycfkbn
64 lines
3.0 KiB
JSON
64 lines
3.0 KiB
JSON
{
|
|
"name": "Внешняя обработка конвертируется в объект конфигурации",
|
|
"osOnly": "win32",
|
|
"fakePlatform": {
|
|
"exit": 1,
|
|
"log": ""
|
|
},
|
|
"preRun": [
|
|
{
|
|
"writeFile": {
|
|
"path": "src/Проба.xml",
|
|
"content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<MetaDataObject xmlns=\"http://v8.1c.ru/8.3/MDClasses\" xmlns:v8=\"http://v8.1c.ru/8.1/data/core\" xmlns:xr=\"http://v8.1c.ru/8.3/xcf/readable\" version=\"2.17\">\n\t<ExternalDataProcessor uuid=\"aaaaaaaa-1111-2222-3333-bbbbbbbbbbbb\">\n\t\t<InternalInfo>\n\t\t\t<xr:GeneratedType name=\"ExternalDataProcessorObject.Проба\" category=\"Object\">\n\t\t\t\t<xr:TypeId>cccccccc-4444-5555-6666-dddddddddddd</xr:TypeId>\n\t\t\t\t<xr:ValueId>eeeeeeee-7777-8888-9999-ffffffffffff</xr:ValueId>\n\t\t\t</xr:GeneratedType>\n\t\t</InternalInfo>\n\t\t<Properties>\n\t\t\t<Name>Проба</Name>\n\t\t\t<DefaultForm>ExternalDataProcessor.Проба.Form.Форма</DefaultForm>\n\t\t</Properties>\n\t\t<ChildObjects>\n\t\t\t<Form>Форма</Form>\n\t\t</ChildObjects>\n\t</ExternalDataProcessor>\n</MetaDataObject>\n"
|
|
}
|
|
},
|
|
{
|
|
"writeFile": {
|
|
"path": "src/Проба/Ext/ObjectModule.bsl",
|
|
"content": "Процедура Проба()\r\n\tСообщить(\"ExternalDataProcessorObject.Проба\");\r\n\tСообщить(\"ExternalDataProcessor.Проба.Form.Форма\");\r\nКонецПроцедуры\r\n"
|
|
}
|
|
},
|
|
{
|
|
"writeFile": {
|
|
"path": "src/Проба/Forms/Форма.xml",
|
|
"content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<MetaDataObject xmlns=\"http://v8.1c.ru/8.3/MDClasses\" version=\"2.17\">\n\t<Form uuid=\"11111111-2222-3333-4444-555555555555\">\n\t\t<Properties>\n\t\t\t<Name>Форма</Name>\n\t\t</Properties>\n\t</Form>\n</MetaDataObject>\n"
|
|
}
|
|
}
|
|
],
|
|
"args_extra": [
|
|
"-SourceDir",
|
|
"{workDir}\\src",
|
|
"-V8Path",
|
|
"{workDir}\\fake.cmd",
|
|
"-TempBasePath",
|
|
"{workDir}\\base",
|
|
"-EmbedSourceFile",
|
|
"{workDir}\\src\\Проба.xml"
|
|
],
|
|
"expect": {
|
|
"fileContains": [
|
|
{
|
|
"file": "base\\cfg\\DataProcessors\\Проба.xml",
|
|
"text": [
|
|
"<DataProcessor uuid=",
|
|
"<xr:GeneratedType name=\"DataProcessorObject.Проба\" category=\"Object\">",
|
|
"<xr:GeneratedType name=\"DataProcessorManager.Проба\" category=\"Manager\">",
|
|
"<DefaultForm>DataProcessor.Проба.Form.Форма</DefaultForm>"
|
|
]
|
|
},
|
|
{
|
|
"file": "base\\cfg\\Configuration.xml",
|
|
"text": "<DataProcessor>Проба</DataProcessor>"
|
|
}
|
|
],
|
|
"fileNotContains": {
|
|
"file": "base\\cfg\\DataProcessors\\Проба.xml",
|
|
"text": [
|
|
"<ExternalDataProcessor",
|
|
"ExternalDataProcessorObject."
|
|
]
|
|
}
|
|
},
|
|
"expectError": true,
|
|
"noSnapshot": "платформа фейковая: проверяется сгенерированная конфигурация, а не база"
|
|
} |