mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-08-13 23:13:22 +03:00
До сих пор строгая дорожка кампании жила только в отладочных прогонах, и её некому было защищать: снэпшот сравнивает наш вывод с нашим же прежним выводом, поэтому дрейф от платформы он не ловит. Семь макетов, собранных вручную в Конфигураторе, положены в фикстуры. Кейс декомпилирует такой макет и компилирует обратно, а результат сверяется с исходником побайтово. Проверено, что сеть кусается: подмена одного тега в фикстуре роняет кейс. Раннеру добавлены две ручки: - expect.filesEqual — сравнение двух файлов побайтово. Снэпшот его не заменяет: --update-snapshots молча принял бы расхождение с платформой; - inputFrom — брать вход из файла в рабочем каталоге, а не из case.input. Нужно, когда вход производит preRun: case.input пишется ПОСЛЕ preRun и затёр бы его. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
25 lines
716 B
JSON
25 lines
716 B
JSON
{
|
|
"name": "Раундтрип макета ПЛАТФОРМЫ байт в байт: ЯчейкиСОформлением",
|
|
"setup": "fixture:platform-roundtrip",
|
|
"preRun": [
|
|
{
|
|
"script": "mxl-decompile/scripts/mxl-decompile",
|
|
"args": {
|
|
"-TemplatePath": "ЯчейкиСОформлением.xml",
|
|
"-OutputPath": "back.json"
|
|
},
|
|
"cwd": "{workDir}"
|
|
}
|
|
],
|
|
"params": {
|
|
"outputPath": "out.xml"
|
|
},
|
|
"noSnapshot": "эталон — файл платформы, сверяется expect.filesEqual",
|
|
"expect": {
|
|
"filesEqual": {
|
|
"actual": "out.xml",
|
|
"expected": "ЯчейкиСОформлением.xml"
|
|
}
|
|
},
|
|
"inputFrom": "back.json"
|
|
} |