Issue #9770: curses.ascii predicates now work correctly with negative… · python/cpython@283de2b · GitHub
Skip to content

Commit 283de2b

Browse files
Issue #9770: curses.ascii predicates now work correctly with negative integers.
1 parent c9ad8b7 commit 283de2b

3 files changed

Lines changed: 31 additions & 9 deletions

File tree

Lib/curses/ascii.py

Lines changed: 9 additions & 9 deletions

Lib/test/test_curses.py

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -436,6 +436,25 @@ def check(func, expected):
436436
check(curses.ascii.ispunct, c in string.punctuation)
437437
check(curses.ascii.isxdigit, c in string.hexdigits)
438438

439+
for i in (-2, -1, 256, sys.maxunicode, sys.maxunicode+1):
440+
self.assertFalse(curses.ascii.isalnum(i))
441+
self.assertFalse(curses.ascii.isalpha(i))
442+
self.assertFalse(curses.ascii.isdigit(i))
443+
self.assertFalse(curses.ascii.islower(i))
444+
self.assertFalse(curses.ascii.isspace(i))
445+
self.assertFalse(curses.ascii.isupper(i))
446+
447+
self.assertFalse(curses.ascii.isascii(i))
448+
self.assertFalse(curses.ascii.isctrl(i))
449+
self.assertFalse(curses.ascii.iscntrl(i))
450+
self.assertFalse(curses.ascii.isblank(i))
451+
self.assertFalse(curses.ascii.isgraph(i))
452+
self.assertFalse(curses.ascii.isprint(i))
453+
self.assertFalse(curses.ascii.ispunct(i))
454+
self.assertFalse(curses.ascii.isxdigit(i))
455+
456+
self.assertFalse(curses.ascii.ismeta(-1))
457+
439458
def test_ascii(self):
440459
ascii = curses.ascii.ascii
441460
self.assertEqual(ascii('\xc1'), 'A')

Misc/NEWS

Lines changed: 3 additions & 0 deletions

0 commit comments

Comments
 (0)