From ace9e29e91b20767d875e16eaf92bf005dcbf127 Mon Sep 17 00:00:00 2001 From: Nick Shirokov Date: Fri, 14 Aug 2026 17:46:55 +0300 Subject: [PATCH] =?UTF-8?q?test(cfe-borrow):=20=D0=BF=D0=BB=D0=B0=D1=82?= =?UTF-8?q?=D1=84=D0=BE=D1=80=D0=BC=D0=B5=D0=BD=D0=BD=D0=B0=D1=8F=20=D0=B2?= =?UTF-8?q?=D0=B5=D1=80=D0=B8=D1=84=D0=B8=D0=BA=D0=B0=D1=86=D0=B8=D1=8F=20?= =?UTF-8?q?=D0=BA=D0=B5=D0=B9=D1=81=D0=BE=D0=B2=20=D0=BD=D0=B0=20=D1=81?= =?UTF-8?q?=D0=B2=D1=8F=D0=B7=D0=B8=20=D0=BF=D0=B0=D1=80=D0=B0=D0=BC=D0=B5?= =?UTF-8?q?=D1=82=D1=80=D0=BE=D0=B2=20=D0=B2=D1=8B=D0=B1=D0=BE=D1=80=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Прогон verify-snapshots вскрыл, что два новых кейса опирались на вход, который платформа не принимает — падала конфигурация-источник, а не расширение. form-choice-link-items: путь «Items.Ячейка.CurrentData.Склад» был невалиден, потому что Ячейка — поле ввода, а не таблица. Кейс пересобран на настоящей табличной части: путь корректен, связь по-прежнему вырезается, фикстура грузится. Кейс продолжает падать на коде до правки. form-choice-link-dangling: вход намеренно содержит путь на несуществующий реквизит объекта — в валидной конфигурации такой формы не бывает, а проверяется именно поведение навыка на таком пути. Помечен skipPlatformVerify с причиной. После правок verify-snapshots --skill cfe-borrow: 21 прошло, 0 упало, 1 пропущен по объявленной причине. cfe-validate — 7 из 7. Co-Authored-By: Claude Opus 5 (1M context) --- .../cfe-borrow/form-choice-link-dangling.json | 3 +- .../cfe-borrow/form-choice-link-items.json | 92 ++++------- .../Documents/Размещение.xml | 149 ++++++++++++++---- .../Forms/ФормаДокумента/Ext/Form.xml | 63 ++++++-- .../Forms/ФормаДокумента/Ext/Form.xml | 86 +++++++++- 5 files changed, 277 insertions(+), 116 deletions(-) diff --git a/tests/skills/cases/cfe-borrow/form-choice-link-dangling.json b/tests/skills/cases/cfe-borrow/form-choice-link-dangling.json index 42c66c13..4d62d07f 100644 --- a/tests/skills/cases/cfe-borrow/form-choice-link-dangling.json +++ b/tests/skills/cases/cfe-borrow/form-choice-link-dangling.json @@ -97,5 +97,6 @@ "" ] } - } + }, + "skipPlatformVerify": "вход намеренно содержит путь, который платформа отвергает: в валидной конфигурации форма не может ссылаться на несуществующий реквизит объекта, а проверяется именно поведение навыка на таком пути. Расширение на выходе валидно, но verify-snapshots грузит и конфигурацию-источник" } diff --git a/tests/skills/cases/cfe-borrow/form-choice-link-items.json b/tests/skills/cases/cfe-borrow/form-choice-link-items.json index a10a9ce7..bb0c838f 100644 --- a/tests/skills/cases/cfe-borrow/form-choice-link-items.json +++ b/tests/skills/cases/cfe-borrow/form-choice-link-items.json @@ -3,49 +3,30 @@ "preRun": [ { "script": "meta-compile/scripts/meta-compile", - "input": { - "type": "Catalog", - "name": "Склады" - }, - "args": { - "-JsonPath": "{inputFile}", - "-OutputDir": "{workDir}" - } + "input": { "type": "Catalog", "name": "Склады" }, + "args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" } + }, + { + "script": "meta-compile/scripts/meta-compile", + "input": { "type": "Catalog", "name": "Ячейки" }, + "args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" } }, { "script": "meta-compile/scripts/meta-compile", "input": { - "type": "Catalog", - "name": "Ячейки" + "type": "Document", "name": "Размещение", + "tabularSections": { + "Строки": [ + "Склад: CatalogRef.Склады", + "Ячейка: CatalogRef.Ячейки" + ] + } }, - "args": { - "-JsonPath": "{inputFile}", - "-OutputDir": "{workDir}" - } - }, - { - "script": "meta-compile/scripts/meta-compile", - "input": { - "type": "Document", - "name": "Размещение", - "attributes": [ - { - "name": "Ячейка", - "type": "CatalogRef.Ячейки" - } - ] - }, - "args": { - "-JsonPath": "{inputFile}", - "-OutputDir": "{workDir}" - } + "args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" } }, { "script": "form-add/scripts/form-add", - "args": { - "-ObjectPath": "{workDir}/Documents/Размещение.xml", - "-FormName": "ФормаДокумента" - } + "args": { "-ObjectPath": "{workDir}/Documents/Размещение.xml", "-FormName": "ФормаДокумента" } }, { "script": "form-compile/scripts/form-compile", @@ -53,49 +34,32 @@ "title": "Размещение", "elements": [ { - "input": "Ячейка", - "path": "Объект.Ячейка", - "choiceParameterLinks": [ + "table": "Строки", "path": "Объект.Строки", + "columns": [ + { "input": "Склад", "path": "Объект.Строки.Склад" }, { - "name": "Отбор.Владелец", - "dataPath": "Items.Ячейка.CurrentData.Склад" + "input": "Ячейка", "path": "Объект.Строки.Ячейка", + "choiceParameterLinks": [ + { "name": "Отбор.Владелец", "dataPath": "Items.Строки.CurrentData.Склад" } + ] } ] } ], - "attributes": [ - { - "name": "Объект", - "type": "DocumentObject.Размещение", - "main": true - } - ] + "attributes": [ { "name": "Объект", "type": "DocumentObject.Размещение", "main": true } ] }, - "args": { - "-JsonPath": "{inputFile}", - "-OutputPath": "{workDir}/Documents/Размещение/Forms/ФормаДокумента/Ext/Form.xml" - } + "args": { "-JsonPath": "{inputFile}", "-OutputPath": "{workDir}/Documents/Размещение/Forms/ФормаДокумента/Ext/Form.xml" } }, { "script": "cfe-init/scripts/cfe-init", - "args": { - "-Name": "Тест", - "-OutputDir": "{workDir}/ext", - "-ConfigPath": "{workDir}" - } + "args": { "-Name": "Тест", "-OutputDir": "{workDir}/ext", "-ConfigPath": "{workDir}" } } ], - "params": { - "extensionPath": "ext", - "object": "Document.Размещение.Form.ФормаДокумента" - }, + "params": { "extensionPath": "ext", "object": "Document.Размещение.Form.ФормаДокумента" }, "expect": { "fileNotContains": { "file": "ext/Documents/Размещение/Forms/ФормаДокумента/Ext/Form.xml", - "text": [ - "", - "Items.Ячейка.CurrentData.Склад" - ] + "text": ["", "Items.Строки.CurrentData.Склад"] } } } diff --git a/tests/skills/cases/cfe-borrow/snapshots/form-choice-link-items/Documents/Размещение.xml b/tests/skills/cases/cfe-borrow/snapshots/form-choice-link-items/Documents/Размещение.xml index 0f5bf814..2c0ecdd0 100644 --- a/tests/skills/cases/cfe-borrow/snapshots/form-choice-link-items/Documents/Размещение.xml +++ b/tests/skills/cases/cfe-borrow/snapshots/form-choice-link-items/Documents/Размещение.xml @@ -78,46 +78,135 @@ false - +
ФормаДокумента
+ + + + UUID-013 + UUID-014 + + + UUID-015 + UUID-016 + + - Ячейка + Строки ru - Ячейка + Строки - - cfg:CatalogRef.Ячейки - - false - - - false - - false - false - - - false - DontCheck - Items - - - Auto - Auto - - - Auto - DontIndex - Use - Use + + + + DontCheck + false + false + Auto + + + false + + + Auto + Auto + + false + Use + false + + + + Use + + + + + + -
-
ФормаДокумента
+ + + + Склад + + + ru + Склад + + + + + cfg:CatalogRef.Склады + + false + + + + false + + false + false + + + DontCheck + Items + + + Auto + Auto + + + Auto + DontIndex + Use + Use + + + + + Ячейка + + + ru + Ячейка + + + + + cfg:CatalogRef.Ячейки + + false + + + + false + + false + false + + + DontCheck + Items + + + Auto + Auto + + + Auto + DontIndex + Use + Use + + + +
\ No newline at end of file diff --git a/tests/skills/cases/cfe-borrow/snapshots/form-choice-link-items/Documents/Размещение/Forms/ФормаДокумента/Ext/Form.xml b/tests/skills/cases/cfe-borrow/snapshots/form-choice-link-items/Documents/Размещение/Forms/ФормаДокумента/Ext/Form.xml index a7e20352..840e5bea 100644 --- a/tests/skills/cases/cfe-borrow/snapshots/form-choice-link-items/Documents/Размещение/Forms/ФормаДокумента/Ext/Form.xml +++ b/tests/skills/cases/cfe-borrow/snapshots/form-choice-link-items/Documents/Размещение/Forms/ФормаДокумента/Ext/Form.xml @@ -9,21 +9,58 @@ false - - Объект.Ячейка - - - Отбор.Владелец - Items.Ячейка.CurrentData.Склад - Clear - - - - - + + Объект.Строки + + + + + + Строки + SearchStringRepresentation + + + + + + + Строки + ViewStatusRepresentation + + + + + + + Строки + SearchControl + + + + + + + Объект.Строки.Склад + + + + + Объект.Строки.Ячейка + + + Отбор.Владелец + Items.Строки.CurrentData.Склад + Clear + + + + + + +
- + cfg:DocumentObject.Размещение diff --git a/tests/skills/cases/cfe-borrow/snapshots/form-choice-link-items/Ext/Documents/Размещение/Forms/ФормаДокумента/Ext/Form.xml b/tests/skills/cases/cfe-borrow/snapshots/form-choice-link-items/Ext/Documents/Размещение/Forms/ФормаДокумента/Ext/Form.xml index 9edb08fb..0808972b 100644 --- a/tests/skills/cases/cfe-borrow/snapshots/form-choice-link-items/Ext/Documents/Размещение/Forms/ФормаДокумента/Ext/Form.xml +++ b/tests/skills/cases/cfe-borrow/snapshots/form-choice-link-items/Ext/Documents/Размещение/Forms/ФормаДокумента/Ext/Form.xml @@ -9,10 +9,45 @@ false - - - - + + + + + + + Строки + SearchStringRepresentation + + + + + + + Строки + ViewStatusRepresentation + + + + + + + Строки + SearchControl + + + + + + + + + + + + + + +
@@ -25,10 +60,45 @@ false - - - - + + + + + + + Строки + SearchStringRepresentation + + + + + + + Строки + ViewStatusRepresentation + + + + + + + Строки + SearchControl + + + + + + + + + + + + + + +