- Notifications
You must be signed in to change notification settings - Fork 31.8k
/
Copy pathcurses_tests.py
executable file
·46 lines (38 loc) · 1.21 KB
/
curses_tests.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#!/usr/bin/env python3
#
# $Id: ncurses.py 36559 2004-07-18 05:56:09Z tim_one $
#
# Interactive test suite for the curses module.
# This script displays various things and the user should verify whether
# they display correctly.
#
importcurses
fromcursesimporttextpad
deftest_textpad(stdscr, insert_mode=False):
ncols, nlines=8, 3
uly, ulx=3, 2
ifinsert_mode:
mode='insert mode'
else:
mode='overwrite mode'
stdscr.addstr(uly-3, ulx, "Use Ctrl-G to end editing (%s)."%mode)
stdscr.addstr(uly-2, ulx, "Be sure to try typing in the lower-right corner.")
win=curses.newwin(nlines, ncols, uly, ulx)
textpad.rectangle(stdscr, uly-1, ulx-1, uly+nlines, ulx+ncols)
stdscr.refresh()
box=textpad.Textbox(win, insert_mode)
contents=box.edit()
stdscr.addstr(uly+ncols+2, 0, "Text entered in the box\n")
stdscr.addstr(repr(contents))
stdscr.addstr('\n')
stdscr.addstr('Press any key')
stdscr.getch()
foriinrange(3):
stdscr.move(uly+ncols+2+i, 0)
stdscr.clrtoeol()
defmain(stdscr):
stdscr.clear()
test_textpad(stdscr, False)
test_textpad(stdscr, True)
if__name__=='__main__':
curses.wrapper(main)