test(runner): гейт кейса по ОС (osOnly)

Фейк платформы, написанный как .cmd, на macOS не исполняется ни одним
портом — такие кейсы падали на маке вместо пропуска. runtimeOnly для
этого не годится: ограничение не по порту, а по ОС.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Nick Shirokov
2026-07-29 21:26:29 +03:00
co-authored by Claude Opus 5
parent f6165c8d35
commit c0b4f3fb3b
8 changed files with 115 additions and 28 deletions
@@ -1,13 +1,29 @@
{
"name": "Доп. аргументы уходят и во временную базу, и в сборку (fake platform)",
"preRun": [
{ "writeFile": { "path": "fake.cmd", "content": "@echo off\r\necho ARGS: %*\r\nexit /b 0\r\n" } },
{ "writeFile": { "path": "src/Обработка.xml", "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<MetaDataObject xmlns=\"http://v8.1c.ru/8.3/MDClasses\"/>\n" } }
{
"writeFile": {
"path": "fake.cmd",
"content": "@echo off\r\necho ARGS: %*\r\nexit /b 0\r\n"
}
},
{
"writeFile": {
"path": "src/Обработка.xml",
"content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<MetaDataObject xmlns=\"http://v8.1c.ru/8.3/MDClasses\"/>\n"
}
}
],
"args_extra": [
"-V8Path",
"{workDir}\\fake.cmd",
"-SourceFile",
"{workDir}\\src\\Обработка.xml",
"-OutputFile",
"{workDir}\\build\\Обработка.epf",
"-AdditionalV8Arguments",
"/UseHwLicenses+"
],
"args_extra": ["-V8Path", "{workDir}\\fake.cmd",
"-SourceFile", "{workDir}\\src\\Обработка.xml",
"-OutputFile", "{workDir}\\build\\Обработка.epf",
"-AdditionalV8Arguments", "/UseHwLicenses+"],
"runtimeOnly": "powershell",
"expect": {
"stdoutContains": [
@@ -18,5 +34,6 @@
]
},
"expectError": true,
"noSnapshot": "проверяются командные строки в stdout, платформа фейковая — EPF не создаётся"
"noSnapshot": "проверяются командные строки в stdout, платформа фейковая — EPF не создаётся",
"osOnly": "win32"
}