Skip to content

Commit e7b28b3

Browse files
Merged in msabramo/pyrepl/msabramo/improve_test_readline (pull request #8)
Make testing/test_readline.py more comprehensive
2 parents f43284f + 39259a7 commit e7b28b3

File tree

1 file changed

+30
-4
lines changed

1 file changed

+30
-4
lines changed

testing/test_readline.py

Lines changed: 30 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,41 @@
11
from pyrepl.readline import _ReadlineWrapper
22
import os
33
import pty
4+
import sys
45

6+
if sys.version_info < (3, ):
7+
bytes_type = str
8+
unicode_type = unicode
9+
else:
10+
bytes_type = bytes
11+
unicode_type = str
512

6-
def test_raw_input():
13+
14+
def test_readline():
715
master, slave = pty.openpty()
816
readline_wrapper = _ReadlineWrapper(slave, slave)
917
os.write(master, b'input\n')
1018

1119
result = readline_wrapper.get_reader().readline()
12-
#result = readline_wrapper.raw_input('prompt:')
20+
assert result == b'input'
21+
assert isinstance(result, bytes_type)
22+
23+
24+
def test_readline_returns_unicode():
25+
master, slave = pty.openpty()
26+
readline_wrapper = _ReadlineWrapper(slave, slave)
27+
os.write(master, b'input\n')
28+
29+
result = readline_wrapper.get_reader().readline(returns_unicode=True)
1330
assert result == 'input'
14-
# A bytes string on python2, a unicode string on python3.
15-
assert isinstance(result, str)
31+
assert isinstance(result, unicode_type)
32+
33+
34+
def test_raw_input():
35+
master, slave = pty.openpty()
36+
readline_wrapper = _ReadlineWrapper(slave, slave)
37+
os.write(master, b'input\n')
38+
39+
result = readline_wrapper.raw_input('prompt:')
40+
assert result == b'input'
41+
assert isinstance(result, bytes_type)

0 commit comments

Comments
 (0)