Я бы хотел написать тесты для простого байт-ориентированного протокола, используя что-то вроде Expect. Тестовые сценарии будет выглядеть как обычный поток:Ожидающий инструмент для тестирования бинарных протоколов
send "data"
expect "data"
(Где отправить запись в стандартный вывод и ожидать, что читает достаточно просто из стандартного ввода, выхода, если он не соответствует.)
Я не могу использовать ожидать себя потому, что он предназначен для буферизованных, ориентированных на линию взаимодействий. Соответствие шаблону с помощью grep или awk отсутствует по той же причине.
Есть ли инструмент или библиотека UNIX, которую я могу использовать? Еще лучше, если он стандартный и портативный, так как он должен интегрироваться с существующей программой.
Похоже, что я проанализирую протокол с помощью perc getc(). Не мой любимый язык, чтобы учиться, но он * вездесущ. – Tobu
pack/unpack был бы лучшим для «анализа» протокола и getc впечатляюще плохим выбором для нестрочного ориентированного двоичного протокола. используйте чтение и печать (или sysread и syswrite, чтобы избежать буферизации), чтобы говорить с другой стороны. – MkV