Skip to content

[3.15] gh-151693: Add curses tests for panels, textpad, and window behavior (GH-151694)#151719

Merged
serhiy-storchaka merged 1 commit into
python:3.15from
miss-islington:backport-b4cfb99-3.15
Jun 19, 2026
Merged

[3.15] gh-151693: Add curses tests for panels, textpad, and window behavior (GH-151694)#151719
serhiy-storchaka merged 1 commit into
python:3.15from
miss-islington:backport-b4cfb99-3.15

Conversation

@miss-islington

@miss-islington miss-islington commented Jun 19, 2026

Copy link
Copy Markdown
Contributor

Add curses tests for panels, textpad, and window behavior

Extend test_curses with behavior-verifying tests that go beyond the
existing smoke tests:

  • curses.panel stacking: new_panel/top/bottom/above/below ordering,
    hide/show/hidden, move, replace and userptr round-trip.
  • Real-window curses.textpad.Textbox: gather(), edit(), stripspaces,
    insert mode and the Emacs-like editing commands (previously only
    exercised through a MagicMock).
  • Window output: addstr cursor advance and addnstr truncation,
    insstr/insnstr shifting without cursor movement, and pad behavior
    (instr, subpad cell sharing, the required 6-argument refresh()).
  • Error handling: out-of-range coordinates raising curses.error and
    bad character/string argument types.
    (cherry picked from commit b4cfb99)

Co-authored-by: Serhiy Storchaka storchaka@gmail.com
Co-authored-by: Claude Opus 4.8 (1M context) noreply@anthropic.com

…avior (pythonGH-151694)

Add curses tests for panels, textpad, and window behavior

Extend test_curses with behavior-verifying tests that go beyond the
existing smoke tests:

* curses.panel stacking: new_panel/top/bottom/above/below ordering,
  hide/show/hidden, move, replace and userptr round-trip.
* Real-window curses.textpad.Textbox: gather(), edit(), stripspaces,
  insert mode and the Emacs-like editing commands (previously only
  exercised through a MagicMock).
* Window output: addstr cursor advance and addnstr truncation,
  insstr/insnstr shifting without cursor movement, and pad behavior
  (instr, subpad cell sharing, the required 6-argument refresh()).
* Error handling: out-of-range coordinates raising curses.error and
  bad character/string argument types.
(cherry picked from commit b4cfb99)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@bedevere-app bedevere-app Bot added the tests Tests in the Lib/test dir label Jun 19, 2026
@serhiy-storchaka serhiy-storchaka enabled auto-merge (squash) June 19, 2026 09:53
@serhiy-storchaka serhiy-storchaka merged commit d81cc86 into python:3.15 Jun 19, 2026
96 of 98 checks passed
@miss-islington miss-islington deleted the backport-b4cfb99-3.15 branch June 19, 2026 12:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

skip news tests Tests in the Lib/test dir

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants