test: кейсы формата 2.21 для навыков-эмиттеров

Фикстура empty-config-221 (cf-init -FormatVersion 2.21) и по кейсу на навык:
cf-init, meta-compile, meta-edit, form-add, form-compile, template-add,
mxl-compile, subsystem-compile, subsystem-edit, role-compile, xdto-compile,
cfe-init, cfe-borrow, epf-init, erf-init.

Проверки через expect.fileContains по сырым байтам, а не только снэпшотом:
позиция xmlns:pal (после lf, перед style) и его отсутствие там, где платформа
его не пишет (Rights.xml роли, Ext/ClientApplicationInterface.xml).

663/663 ps1, 660/663 py.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Nick Shirokov
2026-08-06 21:56:26 +03:00
co-authored by Claude Opus 5
parent 3ef9e76f03
commit 6315a706b5
104 changed files with 5727 additions and 0 deletions
+2
View File
@@ -132,6 +132,8 @@ function ensureSetup(setupName, runtime, skillCasesDir) {
'empty-config-218': ['-FormatVersion', '2.18', '-CompatibilityMode', 'Version8_3_24'],
'empty-config-220': ['-FormatVersion', '2.20', '-CompatibilityMode', 'Version8_3_27'],
'empty-config-220-compat24': ['-FormatVersion', '2.20', '-CompatibilityMode', 'Version8_3_24'],
// 2.21 (8.5) — в шапках MetaDataObject и Form появляется xmlns:pal.
'empty-config-221': ['-FormatVersion', '2.21', '-CompatibilityMode', 'Version8_3_27'],
};
if (EMPTY_CONFIGS[setupName]) {
const cached = join(CACHE, setupName);