Рабочий стол > DL Руководство пользователя > Модификация testlib для DL > Information > Сравнить страницу
Модификация testlib для DL Войти | Зарегистрироваться   Просмотр версии для печати текущей страницы.

Ключ
Эти линии были удалены. Это слово было удалено.
Эти линии были добавлены. Это слово было добавлено.

Просмотр истории страницы


Есть 2 изменений. Просмотреть первое изменение .

 h1. Библиотека fauxtestlib
  
 Многие из российских задач используют для тестирования checker'ы и [player'ы|Интерфейс тестирования задач с интерактивным вводом-выводом], использующие для общих задач тестирования (ввод-вывод, выдача результата) библиотеку {{testlib.h}}. Для использования этих программ на DL можно воспользоваться её модификацией: {{[fauxtestlib.h|http://dl.gsu.by/images/agulenko/fauxtestlib.rar]}}.
 {info}Данная модификация основана на {{testlib}} версии 0.9.5
 {info}
 {warning}Модификация не гарантирует 100% совместимости с {{testlib}}; после внесения изменений проверялся только основной функционал, необходимый для тестирования задач, установленных до сих пор с её помощью.
 {warning}
 Содержание архива:
 || Имя файла || Содержимое ||
 | {{fauxtestlib.h}} | Модификация {{testlib}} для использования на DL |
 | {{DL_I.cpp}}, {{DL_I.h}} | Модификация [библиотеки DL_I|Библиотека DL_I и стандартный чекер для интерактивных задач] для использования fauxtestlib |
 | {{DL_I_player.cpp}} | Версия файла {{DL_I.cpp}} для player'ов (ненулевой код завершения) |
 | {{checker.pas}} | Код checker'а, совместимого с player'ами fauxtestlib (использует [библиотеку DLChecker|Библиотека для написания checker'ов на DL]) |
 Инструкция по применению:
 # Заменить в файле программы подключение {{"testlib.h"}} на {{"fauxtestlib.h"}}
 # Поместить в папку с исходниками файлы {{fauxtestlib.h}}, {{DL_I.cpp}} и {{DL_I.h}}
  # Поместить в папку с исходниками файлы {{fauxtestlib.h}}, {{DL_I.h}} и {{DL_I.cpp}} (или {{DL_I_player.cpp}})
 # Скомпилировать программу; в строку компиляции добавить файл {{DL_I.cpp}} и следующие опции:
 #* {{\-DCHECKER}} (обязательный для компиляции)
 #* {{\-DINFILE="_имя-файла_"}} (значение по умолчанию: {{"$player$.in"}})
 #* {{\-DOUTFILE="_имя-файла_"}} (значение по умолчанию: {{"$player$.out"}})
 # Если это программа-player, для обработки вывода использовать предоставленный checker
  
 {code:title=примеры строки компиляции}
 g++ -O2 -DCHECKER -o checker checker.cpp DL_I.cpp
 g++ -O2 -DCHECKER -o player DL_I.cpp interactor.cpp
 g++ -O2 -DCHECKER -o player DL_I.cpp interact_new.cpp -DINFILE="eq.in" -DOUTFILE="eq.out"
 {code}
 {note}{{{}INFILE}} и {{OUTFILE}} должны содержать корректные строки в формате C; в зависимости от особенностей используемого shell'а, может потребоваться взять их дополнительно в одинарные кавычки (например: {{\-DINFILE='"eq.in"'}})
 {note}
Powered by Atlassian Confluence, the Enterprise Wiki. (Version: http://www.atlassian.com/software/confluence Build:#2.6.1 916) - Ошибка/новая особенность - Свяжитесь с Администраторами