mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-09-01 16:00:51 +03:00
fix(cfe-borrow): вернуть вставку заимствованных реквизитов в свой ChildObjects
При переводе сохранения объекта на семью Detect-XmlStyle/Finalize-XmlText из блока выпал вызов Insert-IntoOwnChildObjects: заимствованные реквизиты собираются текстом и вставляются в собственный ChildObjects объекта, а не через InnerXml (тот ломает пространства имён). Без вызова слияние реквизитов при заимствовании по глубокому пути молча теряло их. Вызов стоит до Finalize-XmlText, чтобы схлопывание пустых тегов накрывало и вставленные реквизиты — как было в исходном порядке. Тестами не ловится: путь Merge-AttributesIntoObject не покрыт ни одним кейсом, поэтому удаление прошло 29/29 и верификацию платформой. Проверено изолированным прогоном связки: реквизит вставлен, самозакрытый ChildObjects раскрыт, пустые теги плотные, XML валиден. Покрытие этого пути — отдельная задача. Попутно: кейс type-name-russian расширен на add-childObject — русское имя вида проверялось только в sort и remove. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01QoAJmoNbgWKobA7JGgN5S3
This commit is contained in:
co-authored by
Claude Opus 5
parent
c7b0dce151
commit
1ccd56606b
@@ -248,6 +248,7 @@
|
||||
<Language>Русский</Language>
|
||||
<Catalog>Альфа</Catalog>
|
||||
<Catalog>Гамма</Catalog>
|
||||
<Catalog>Бета</Catalog>
|
||||
<Role>Омега</Role>
|
||||
<Role>Каппа</Role>
|
||||
<Subsystem>Яблоко</Subsystem>
|
||||
|
||||
@@ -1,15 +1,29 @@
|
||||
{
|
||||
"name": "Имя вида принимается по-русски: sort-childObjects «Справочники» и remove-childObject «Справочник.Бета»",
|
||||
"name": "Имя вида принимается по-русски во всех операциях с видами: sort, remove, add",
|
||||
"setup": "fixture:unsorted-childobjects",
|
||||
"input": [
|
||||
{ "operation": "sort-childObjects", "value": "Справочники" },
|
||||
{ "operation": "remove-childObject", "value": "Справочник.Бета" }
|
||||
{
|
||||
"operation": "sort-childObjects",
|
||||
"value": "Справочники"
|
||||
},
|
||||
{
|
||||
"operation": "remove-childObject",
|
||||
"value": "Справочник.Бета"
|
||||
},
|
||||
{
|
||||
"operation": "add-childObject",
|
||||
"value": "Справочник.Бета"
|
||||
}
|
||||
],
|
||||
"expect": {
|
||||
"stdoutContains": ["Sorted: Catalog (3)", "Removed: Catalog.Бета"],
|
||||
"stdoutContains": [
|
||||
"Sorted: Catalog (3)",
|
||||
"Removed: Catalog.Бета",
|
||||
"Added: Catalog.Бета"
|
||||
],
|
||||
"fileContains": {
|
||||
"file": "Configuration.xml",
|
||||
"text": "<Catalog>Альфа</Catalog>\r\n\t\t\t<Catalog>Гамма</Catalog>"
|
||||
"text": "<Catalog>Альфа</Catalog>\r\n\t\t\t<Catalog>Гамма</Catalog>\r\n\t\t\t<Catalog>Бета</Catalog>"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user