BBS: TELESC.NET.BR Assunto: src/syncterm/run_termtest.sh termtest.csrc/syncterm/CMakeLists.txt GNU De: Deuc¨ Data: Tue, 17 Mar 2026 22:37:37 -0700 ----------------------------------------------------------- https://gitlab.synchro.net/main/sbbs/-/commit/b1aef46a981bceb260b745a5 Added Files: src/syncterm/run_termtest.sh termtest.c Modified Files: src/syncterm/CMakeLists.txt GNUmakefile Log Message: Add automated terminal test suite (99 tests) termtest.c: standalone C test harness that runs as the child process of a SyncTERM shell: connection via PTY. Sends escape sequences, reads terminal responses, writes results to a file. 99 tests covering: C0/escape controls, string passthrough, cursor movement, clamping, editing, tabs, save/restore, device queries (DSR, DA, DECRQCRA, DECTABSR, DECRQSS, DECMSR), scroll regions, scrolling, SGR attributes (256-color, RGB, bright, negative, conceal), modes (autowrap, nowrap, origin, BCDM), DECRQM for private/ANSI/CTerm modes, palette queries (OSC 4, OSC 104), cursor style (DECRQSS SP q), screen readback (STS text-only, full line, no SSA, with SGR, ANSI mode discovery), and SyncTERM extensions (DECDMAC, DECINVM, CTSV). check_string_at() uses both DECRQCRA checksums and STS readback for dual verification of content and attributes. run_termtest.sh: wrapper script that sets up headless SDL (offscreen + software renderer), launches SyncTERM, checks results. Build integration: - gmake: 'gmake test' and 'gmake termtest' targets - cmake: enable_testing(), add_test() with ctest support Co-Authored-By: Claude Opus 4.6 (1M context)n --- mSynchronetn hgVertrauen n hHome of Synchronet n gh[vert/cvs/bbs].synchro.net ----------------------------------------------------------- [Voltar]