Serve.cfg:problem:test dir

From EjudgeWiki
Revision as of 11:28, 12 February 2013 by Anna (talk | contribs)

Навигация: Главная страница/Система ejudge/Использование/Конфигурационные файлы/serve.cfg/Конфигурационные параметры задач/test_dir

Имя переменной: test_dir
Содержится в: problem
Используется: serve, run
Тип содержимого: путь к каталогу или шаблон
Может отсутствовать: да
Наследуется: да
Может повторяться: нет

Редактирование элемента: страница "Editing contest", вкладка "Problems (serve.cfg)", блок "Abstract problems", поле "Directory with tests".

Описание. Данная конфигурационная переменная устанавливает путь к каталогу, в котором находятся тесты для данной задачи. Полный путь к каталогу с тестами для каждой неабстрактной задачи определяется по следующим правилам:

  1. Если конфигурационная переменная test_dir задачи не определена, и эта задача наследует свойства некоторой абстрактной задачи, у которой конфигурационная переменная определена, то выполняется форматная подстановка с форматом, определяемым значением переменной test_dir этой абстрактной задачи, и результат помещается в переменную test_dir данной неабстрактной задачи.
  2. Если после предыдущего шага конфигурационная переменная test_dir всё ещё не определена, её значение устанавливается в короткое имя данной задачи (см. переменную short_name).
  3. Если после предыдущего шага значение конфигурационной переменной не начинается с символа ’/’, то есть не является абсолютным путём к каталогу, значение данной конфигурационной переменной добавляется к значению глобальной конфигурационной переменной test_dir, и результат помещается в конфигурационную переменную test_dir задачи. Таким образом, глобальная конфигурационная переменная test_dir содержит первые компоненты пути к каталогу тестов, а конфигурационная переменная test_dir описания задачи — последние компоненты пути к каталогу тестов.

Пример. Следующий пример отключает распределение тестов по подкаталогам каталога, определяемого глобальной переменной test_dir.

test_dir = "."

Следующий пример для описания абстрактной задачи задаёт использование подкаталога, имя которого получается преобразованием к строчным буквам короткого имени задачи (short_name), в каталоге, определяемом глобальной переменной test_dir, для тестов каждой задачи, наследующей свойства данной абстрактной задачи.

test_dir = "%lPs"