summaryrefslogtreecommitdiffstats
path: root/Lib/test/curses_tests.py
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/test/curses_tests.py')
-rw-r--r--Lib/test/curses_tests.py46
1 files changed, 46 insertions, 0 deletions
diff --git a/Lib/test/curses_tests.py b/Lib/test/curses_tests.py
new file mode 100644
index 0000000..7dedbbc
--- /dev/null
+++ b/Lib/test/curses_tests.py
@@ -0,0 +1,46 @@
+#!/usr/bin/env python
+#
+# $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.
+#
+
+import curses
+from curses import textpad
+
+def test_textpad(stdscr, insert_mode=False):
+ ncols, nlines = 8, 3
+ uly, ulx = 3, 2
+ if insert_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()
+
+ for i in range(3):
+ stdscr.move(uly+ncols+2 + i, 0)
+ stdscr.clrtoeol()
+
+def main(stdscr):
+ stdscr.clear()
+ test_textpad(stdscr, False)
+ test_textpad(stdscr, True)
+
+
+if __name__ == '__main__':
+ curses.wrapper(main)