• xtrn/termtest/termtest.js

    From deuce@VERT to CVS commit on Fri Apr 24 08:30:22 2020
    xtrn/termtest termtest.js NONE 1.1
    Update of /cvsroot/sbbs/xtrn/termtest
    In directory cvs:/tmp/cvs-serv15309/termtest

    Added Files:
    termtest.js
    Log Message:
    Start of a unit test framework for terminals.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Fri Apr 24 10:13:20 2020
    xtrn/termtest termtest.js 1.1 1.2
    Update of /cvsroot/sbbs/xtrn/termtest
    In directory cvs:/tmp/cvs-serv30634

    Modified Files:
    termtest.js
    Log Message:
    More tests.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Fri Apr 24 11:59:36 2020
    xtrn/termtest termtest.js 1.2 1.3
    Update of /cvsroot/sbbs/xtrn/termtest
    In directory cvs:/tmp/cvs-serv14096

    Modified Files:
    termtest.js
    Log Message:
    Implement codes from '@' to '`'...
    Apparently, SyncTERM is doing tabs differently than XTerm, and there's some
    get graphics attribute weirdness in XTerm as well.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Fri Apr 24 17:33:07 2020
    xtrn/termtest termtest.js 1.3 1.4
    Update of /cvsroot/sbbs/xtrn/termtest
    In directory cvs:/tmp/cvs-serv31286

    Modified Files:
    termtest.js
    Log Message:
    More tests.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Fri Apr 24 21:20:53 2020
    xtrn/termtest termtest.js 1.4 1.5
    Update of /cvsroot/sbbs/xtrn/termtest
    In directory cvs:/tmp/cvs-serv31015

    Modified Files:
    termtest.js
    Log Message:
    Finish up adding at least stubs for all documented CTerm sequences.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Mon Apr 27 07:17:32 2020
    xtrn/termtest termtest.js 1.5 1.6
    Update of /cvsroot/sbbs/xtrn/termtest
    In directory cvs:/tmp/cvs-serv24718

    Modified Files:
    termtest.js
    Log Message:
    Have HT test not allow for VT glitch.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Mon Apr 27 21:14:43 2020
    xtrn/termtest termtest.js 1.6 1.7
    Update of /cvsroot/sbbs/xtrn/termtest
    In directory cvs:/tmp/cvs-serv3301

    Modified Files:
    termtest.js
    Log Message:
    Add a test that uses checksum functions rather than needing to be
    interactive.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Tue Apr 28 08:40:37 2020
    xtrn/termtest termtest.js 1.7 1.8
    Update of /cvsroot/sbbs/xtrn/termtest
    In directory cvs:/tmp/cvs-serv10794

    Modified Files:
    termtest.js
    Log Message:
    More CRC based tests, note that the interactive wrapper bit is likely
    broken for some of them...



    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Tue Apr 28 09:46:24 2020
    xtrn/termtest termtest.js 1.8 1.9
    Update of /cvsroot/sbbs/xtrn/termtest
    In directory cvs:/tmp/cvs-serv20968

    Modified Files:
    termtest.js
    Log Message:
    Fix DECCKSR parsing and test.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Tue Apr 28 10:09:50 2020
    xtrn/termtest termtest.js 1.9 1.10
    Update of /cvsroot/sbbs/xtrn/termtest
    In directory cvs:/tmp/cvs-serv24496

    Modified Files:
    termtest.js
    Log Message:
    Make interactive mode for people without checksum functions better.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Tue Apr 28 10:30:52 2020
    xtrn/termtest termtest.js 1.10 1.11
    Update of /cvsroot/sbbs/xtrn/termtest
    In directory cvs:/tmp/cvs-serv28005

    Modified Files:
    termtest.js
    Log Message:
    DECCKSR is upper-case hex.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Tue Apr 28 10:49:00 2020
    xtrn/termtest termtest.js 1.11 1.12
    Update of /cvsroot/sbbs/xtrn/termtest
    In directory cvs:/tmp/cvs-serv30763

    Modified Files:
    termtest.js
    Log Message:
    Don't enforce wrap behaviour in HT test... this is outside the standards.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Tue Apr 28 11:37:45 2020
    xtrn/termtest termtest.js 1.12 1.13
    Update of /cvsroot/sbbs/xtrn/termtest
    In directory cvs:/tmp/cvs-serv6323

    Modified Files:
    termtest.js
    Log Message:
    Handle the case where "erased" is different than spaces in checksums.
    This allows XTerm to pass on all functions it implements.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Wed Apr 29 11:28:20 2020
    xtrn/termtest termtest.js 1.13 1.14
    Update of /cvsroot/sbbs/xtrn/termtest
    In directory cvs:/tmp/cvs-serv14143

    Modified Files:
    termtest.js
    Log Message:
    More tests.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Wed Apr 29 12:42:51 2020
    xtrn/termtest termtest.js 1.14 1.15
    Update of /cvsroot/sbbs/xtrn/termtest
    In directory cvs:/tmp/cvs-serv27631

    Modified Files:
    termtest.js
    Log Message:
    Finish up the basic tests... it's now possible for SyncTERM to get all
    "Passed" results.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuce@VERT to Git commit to main/sbbs/master on Wed Dec 16 12:10:10 2020
    https://gitlab.synchro.net/main/sbbs/-/commit/32f03b0b7371f672104aeac2
    Modified Files:
    xtrn/termtest/termtest.js
    Log Message:
    Fix DECRQCRA test

    Previously, it "succeeded" if no checksum was returned.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/master on Thu Feb 8 23:37:40 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/39f5063c9c78a1755c876a64
    Modified Files:
    xtrn/termtest/termtest.js
    Log Message:
    Add a regression test for bug fixed in previous commit.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/master on Sun Sep 22 15:18:27 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/fd3533d57a2a8bc72bdc821e
    Modified Files:
    xtrn/termtest/termtest.js
    Log Message:
    Send a backspace space backspace after shift in

    Keeps the display cleaner when things work and the shift in byte
    is displayed. Should be harmless in cases where shift in is
    interpreted per the standards.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/master on Tue Sep 24 16:09:51 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/6c65a57c505f99d6b60e19b6
    Modified Files:
    xtrn/termtest/termtest.js
    Log Message:
    Fix APC/SOS naming.

    Thanks Ree!

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/master on Wed Apr 2 10:26:50 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/370f7dde838b9c70f55c8a8a
    Modified Files:
    xtrn/termtest/termtest.js
    Log Message:
    Add test for background music as well

    This crashes SyncTERM on Win32 if it's the first ANSI music played

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/master on Tue Sep 23 19:12:19 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/cb8a0ad3bc57f7fc42c9cbde
    Modified Files:
    xtrn/termtest/termtest.js
    Log Message:
    Fix TAB tests

    Now that console.write() expands tabs, use console.putbyte(9); to
    send tab characters for tests.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/master on Sun Mar 15 19:01:12 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/8a49c13c9d95faa6da93d003
    Modified Files:
    xtrn/termtest/termtest.js
    Log Message:
    Add input key sequence tests to termtest.js

    Regression tests for the keyboard escape sequences fixed in 8ce16dd88f.
    The test menu now offers Non-interactive, Interactive, Input, and All
    modes. Input mode prompts the user to press each special key and
    validates the received escape sequence against a table of known-valid
    sequences from SyncTERM (term.c), VT-220/XTerm (ansi_cio.c), and VT-52.

    Covers: arrows, Home/End/PgUp/PgDn/Ins/Del, Backspace, Backtab,
    F1-F12, Shift+F1-F12, Ctrl+F1-F12, and Alt+F1-F12 (minus Alt+F4).
    Unrecognized sequences are displayed in hex for debugging.

    Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/master on Sun Mar 15 20:35:47 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/c6721f78fdc2143414321d8e
    Modified Files:
    xtrn/termtest/termtest.js
    Log Message:
    Add ANSI fuzz testing mode to termtest.js

    New 'Fuzz' option in the test menu sends intentionally malformed and
    edge-case ANSI sequences to stress-test terminal emulators. Runs
    indefinitely until the user presses a key or the terminal stops
    responding to cursor position reports.

    Five weighted fuzz categories:
    - Malformed CSI (weight 40): long params, many semicolons, huge values,
    invalid intermediates, random final bytes, private-mode garbage
    - Interrupted sequences (weight 25): ESC inside CSI, CAN/SUB mid-sequence,
    multiple bare ESCs, CSI interrupted by DCS
    - String sequences (weight 20): unterminated DCS/OSC/APC/PM/SOS, oversized
    strings, nested initiators, control chars in body
    - Boundary stress (weight 10): extreme cursor positions, inverted scroll
    regions, huge erase/insert counts, rapid scrolls
    - Random byte streams (weight 5): raw random bytes, random with resets,
    alternating valid/invalid sequences

    Each test case is logged with full hex dump to the BBS log so crashes
    can be reproduced. Liveness checked via DSR/CPR with a 3-second hard
    deadline. Terminal state reset (including string terminator) after each iteration. All loops guard bbs.online and js.terminated.

    Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/master on Sun Mar 15 22:51:38 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/b374321cedfaaadba5942c67
    Modified Files:
    xtrn/termtest/termtest.js
    Log Message:
    Ignore terminal responses in fuzz loop abort check

    When the fuzzer sends sequences that elicit terminal responses (e.g.
    DSR variants like ESC[...n), the response bytes land in the input
    buffer and get picked up by the abort-check console.inkey(), causing
    the fuzzer to exit prematurely thinking the user pressed a key.

    Now if the abort check reads ESC (0x1b), it recognizes this as a
    terminal response rather than user input, drains the rest of the
    sequence with a short timeout, and continues fuzzing. Only non-ESC
    characters are treated as user abort.

    Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/master on Thu Mar 19 10:20:49 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/67745d1c9836293b05465666
    Modified Files:
    xtrn/termtest/termtest.js
    Log Message:
    Add 24 tests to termtest.js BBS regression suite (148 total)

    DEC rectangular ops (DECERA, DECFRA, DECCRA, DECIC, DECDC), DECCARA/DECRARA/DECSACE attribute operations, CT24BC 24-bit color,
    FETM/TTM ECMA-48 modes, vertical line tabulation (CVT+VTS), origin
    mode, SL/SR with margins, save/restore mode (CTSMS/CTRMS), SGR
    extended (noblink, normal intensity, default fg/bg, bright bg),
    DECRQSS for DECSACE and speed, and OSC 8 hyperlinks.

    These complement the automated cterm_test/termtest suites by
    providing interactive visual verification when run on a real BBS.

    Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net