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]