|
Тестовая команда, позволяющая запускать внешние программы из командной строки.
Полное описание команды выглядит как:<exec> <cmd>command line for test</cmd> <out>test result base path</out> <in>name of file to send to input</in> <input>text to send to input</input> </exec> |
cmd |
Командная строка для запуска теста. Система запускает программу, не добавляя к этой строке ничего (только заменяя переменные) из произвольной директории на файловой системе. Таким образом, нужно либо указывать абсолютный путь к исполняемому файлу, либо использовать переменную подстановки %test_dir% которая раскрывается в путь к директории, в которой лежит описание данного теста. |
out |
Базовое название файла, в котором будет сохраняться результат теста. Предполагается, что имеет расширение. Если базовое название имеет вид [имя_файла].[последнее_расширение] то имя файла-результата строится как [имя_файла].result.[последнее_расширение]. При использовании к имени файла автоматически добавляется путь к файлу, в котором лежит описание теста, так что %test_dir% использовать не надо. |
in |
Имя файла, содержимое которого будет подаваться на стандартный вход тестируемой программы. Если поля in и input (смотри далее) пустые, то на стандартный вход программы ничего не подаётся. При использовании к имени файла автоматически добавляется путь к файлу, в котором лежит описание теста, так что %test_dir% использовать не надо. |
input |
Текст, который будет подаваться на вход тестируемой программы. Имеет смысл только если поле in (смотри предыдущее описание) пустое. В случае если это не так (в поле in задано имя файла с входными данными), на вход будет подаваться всё-таки содержимое файла, а содержимое поля input будет просто проигнорировано. Если поля in и input (смотри выше) пустые, то на стандартный вход программы ничего не подаётся. |
В данном случае при запуске программы ничего не проверяется (и никаких результатов теста не показывается), хотя вывод может сохраняться.
Например, сохранённый вывод может быть нормализован другой программой и только после этого проверен при помощи check .
|