diff --git a/tests/skills/cases/db-create/extra-args-passthrough-py.json b/tests/skills/cases/db-create/extra-args-passthrough-py.json deleted file mode 100644 index 34a148bc..00000000 --- a/tests/skills/cases/db-create/extra-args-passthrough-py.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "name": "Доп. аргументы 1cv8 попадают в командную строку, py-порт (fake platform)", - "runtimeOnly": "python", - "preRun": [ - { - "writeFile": { - "path": "fake.cmd", - "content": "@echo off\r\necho ARGS: %*\r\nexit /b 0\r\n" - } - } - ], - "args_extra": [ - "-V8Path", - "{workDir}\\fake.cmd", - "-InfoBasePath", - "{workDir}\\ib", - "-AdditionalV8Arguments", - "/UseHwLicenses+" - ], - "expect": { - "stdoutContains": "/DisableStartupDialogs /UseHwLicenses+" - }, - "expectError": true, - "noSnapshot": "py-порт печатает лог /Out, а не stdout платформы — проверяется строка запуска", - "osOnly": "win32" -} diff --git a/tests/skills/cases/db-create/extra-args-passthrough.json b/tests/skills/cases/db-create/extra-args-passthrough.json index 9e223270..b35ed359 100644 --- a/tests/skills/cases/db-create/extra-args-passthrough.json +++ b/tests/skills/cases/db-create/extra-args-passthrough.json @@ -16,7 +16,6 @@ "-AdditionalV8Arguments", "/UseHwLicenses+" ], - "runtimeOnly": "powershell", "expect": { "stdoutContains": [ "ARGS: CREATEINFOBASE", diff --git a/tests/skills/cases/db-create/platform-output-oem.json b/tests/skills/cases/db-create/platform-output-oem.json new file mode 100644 index 00000000..20a8aec6 --- /dev/null +++ b/tests/skills/cases/db-create/platform-output-oem.json @@ -0,0 +1,26 @@ +{ + "name": "Вывод платформы в cp866 читается (fake platform)", + "osOnly": "win32", + "preRun": [ + { + "writeFile": { + "path": "fake.cmd", + "content": "@echo off\r\nchcp 866 >nul\r\necho Не найдена лицензия\r\nexit /b 1\r\n" + } + } + ], + "args_extra": [ + "-V8Path", + "{workDir}\\fake.cmd", + "-InfoBasePath", + "{workDir}\\ib" + ], + "expect": { + "stdoutContains": [ + "--- Вывод платформы ---", + "Не найдена лицензия" + ] + }, + "expectError": true, + "noSnapshot": "проверяется фолбэк декодирования" +} diff --git a/tests/skills/cases/db-create/platform-output-silent.json b/tests/skills/cases/db-create/platform-output-silent.json new file mode 100644 index 00000000..2c65d1cf --- /dev/null +++ b/tests/skills/cases/db-create/platform-output-silent.json @@ -0,0 +1,23 @@ +{ + "name": "Молчащая платформа не печатает блок вывода (fake platform)", + "osOnly": "win32", + "preRun": [ + { + "writeFile": { + "path": "fake.cmd", + "content": "@echo off\r\nexit /b 1\r\n" + } + } + ], + "args_extra": [ + "-V8Path", + "{workDir}\\fake.cmd", + "-InfoBasePath", + "{workDir}\\ib" + ], + "expect": { + "stdoutNotContains": "--- Вывод платформы ---" + }, + "expectError": true, + "noSnapshot": "проверяется отсутствие блока" +} diff --git a/tests/skills/cases/db-create/platform-output-utf8.json b/tests/skills/cases/db-create/platform-output-utf8.json new file mode 100644 index 00000000..abc2f808 --- /dev/null +++ b/tests/skills/cases/db-create/platform-output-utf8.json @@ -0,0 +1,18 @@ +{ + "name": "Вывод платформы в UTF-8 читается (fake platform)", + "osOnly": "win32", + "preRun": [ + { + "writeFile": { + "path": "fake.cmd", + "content": "@echo off\r\nchcp 65001 >nul\r\necho Не найдена лицензия\r\nexit /b 1\r\n" + } + } + ], + "args_extra": ["-V8Path", "{workDir}\\fake.cmd", "-InfoBasePath", "{workDir}\\ib"], + "expect": { + "stdoutContains": ["--- Вывод платформы ---", "Не найдена лицензия"] + }, + "expectError": true, + "noSnapshot": "проверяется декодирование вывода платформы" +} diff --git a/tests/skills/cases/db-create/spaced-path.json b/tests/skills/cases/db-create/spaced-path.json new file mode 100644 index 00000000..18fcd310 --- /dev/null +++ b/tests/skills/cases/db-create/spaced-path.json @@ -0,0 +1,23 @@ +{ + "name": "Путь с пробелом попадает в командную строку в кавычках (fake platform)", + "osOnly": "win32", + "preRun": [ + { + "writeFile": { + "path": "fake.cmd", + "content": "@echo off\r\necho ARGS: %*\r\nexit /b 1\r\n" + } + } + ], + "args_extra": [ + "-V8Path", + "{workDir}\\fake.cmd", + "-InfoBasePath", + "{workDir}\\с пробелом" + ], + "expect": { + "stdoutContains": "ARGS: CREATEINFOBASE File=\"" + }, + "expectError": true, + "noSnapshot": "проверяется форма токена, файлов на выходе нет" +} diff --git a/tests/skills/cases/db-dump-cf/missing-infobase.json b/tests/skills/cases/db-dump-cf/missing-infobase.json new file mode 100644 index 00000000..9d948d86 --- /dev/null +++ b/tests/skills/cases/db-dump-cf/missing-infobase.json @@ -0,0 +1,13 @@ +{ + "name": "Отказ до запуска: информационная база не найдена", + "args_extra": [ + "-V8Path", + "{workDir}", + "-InfoBasePath", + "{workDir}\\нет-такой-базы", + "-OutputFile", + "{workDir}\\out.cf" + ], + "expectError": true, + "noSnapshot": "негативный кейс: платформа не запускается" +} diff --git a/tests/skills/cases/epf-build/extra-args-build.json b/tests/skills/cases/epf-build/extra-args-build.json new file mode 100644 index 00000000..11b0e07d --- /dev/null +++ b/tests/skills/cases/epf-build/extra-args-build.json @@ -0,0 +1,45 @@ +{ + "name": "Доп. аргументы доходят до самой сборки EPF (fake platform)", + "osOnly": "win32", + "preRun": [ + { + "writeFile": { + "path": "fake.cmd", + "content": "@echo off\r\necho ARGS: %*\r\nexit /b 0\r\n" + } + }, + { + "writeFile": { + "path": "ib/1Cv8.1CD", + "content": "fake infobase\n" + } + }, + { + "writeFile": { + "path": "src/Обработка.xml", + "content": "\n\n" + } + } + ], + "args_extra": [ + "-V8Path", + "{workDir}\\fake.cmd", + "-InfoBasePath", + "{workDir}\\ib", + "-SourceFile", + "{workDir}\\src\\Обработка.xml", + "-OutputFile", + "{workDir}\\build\\Обработка.epf", + "-AdditionalV8Arguments", + "/UseHwLicenses+" + ], + "expect": { + "stdoutContains": [ + "ARGS: DESIGNER", + "/LoadExternalDataProcessorOrReportFromFiles", + "/DisableStartupDialogs /UseHwLicenses+" + ] + }, + "expectError": true, + "noSnapshot": "база указана явно, stub не создаётся; EPF фейком не собирается — проверяется командная строка" +} diff --git a/tests/skills/cases/epf-build/extra-args-stub-chain.json b/tests/skills/cases/epf-build/extra-args-stub-chain.json index ea24c621..e880be32 100644 --- a/tests/skills/cases/epf-build/extra-args-stub-chain.json +++ b/tests/skills/cases/epf-build/extra-args-stub-chain.json @@ -1,10 +1,11 @@ { - "name": "Доп. аргументы уходят и во временную базу, и в сборку (fake platform)", + "name": "Доп. аргументы доходят до временной базы (fake platform)", + "osOnly": "win32", "preRun": [ { "writeFile": { "path": "fake.cmd", - "content": "@echo off\r\necho ARGS: %*\r\nexit /b 0\r\n" + "content": "@echo off\r\necho ARGS: %*\r\nexit /b 1\r\n" } }, { @@ -24,16 +25,12 @@ "-AdditionalV8Arguments", "/UseHwLicenses+" ], - "runtimeOnly": "powershell", "expect": { "stdoutContains": [ "ARGS: CREATEINFOBASE", - "/DisableStartupDialogs /UseHwLicenses+", - "ARGS: DESIGNER", - "/LoadExternalDataProcessorOrReportFromFiles" + "/DisableStartupDialogs /UseHwLicenses+" ] }, "expectError": true, - "noSnapshot": "проверяются командные строки в stdout, платформа фейковая — EPF не создаётся", - "osOnly": "win32" + "noSnapshot": "платформа фейковая и падает на первом запуске — проверяется её командная строка" }