mirror of https://github.com/python/cpython
Test for issue #13500
This commit is contained in:
parent
c5df563041
commit
6e250998b6
|
@ -182,6 +182,14 @@ class TestAlternateInput(unittest.TestCase):
|
|||
def do_EOF(self, args):
|
||||
return True
|
||||
|
||||
|
||||
class simplecmd2(simplecmd):
|
||||
|
||||
def do_EOF(self, args):
|
||||
print('*** Unknown syntax: EOF', file=self.stdout)
|
||||
return True
|
||||
|
||||
|
||||
def test_file_with_missing_final_nl(self):
|
||||
input = StringIO.StringIO("print test\nprint test2")
|
||||
output = StringIO.StringIO()
|
||||
|
@ -194,6 +202,27 @@ class TestAlternateInput(unittest.TestCase):
|
|||
"(Cmd) "))
|
||||
|
||||
|
||||
def test_input_reset_at_EOF(self):
|
||||
input = io.StringIO("print test\nprint test2")
|
||||
output = io.StringIO()
|
||||
cmd = self.simplecmd2(stdin=input, stdout=output)
|
||||
cmd.use_rawinput = False
|
||||
cmd.cmdloop()
|
||||
self.assertMultiLineEqual(output.getvalue(),
|
||||
("(Cmd) test\n"
|
||||
"(Cmd) test2\n"
|
||||
"(Cmd) *** Unknown syntax: EOF\n"))
|
||||
input = io.StringIO("print \n\n")
|
||||
output = io.StringIO()
|
||||
cmd.stdin = input
|
||||
cmd.stdout = output
|
||||
cmd.cmdloop()
|
||||
self.assertMultiLineEqual(output.getvalue(),
|
||||
("(Cmd) \n"
|
||||
"(Cmd) \n"
|
||||
"(Cmd) *** Unknown syntax: EOF\n"))
|
||||
|
||||
|
||||
def test_main(verbose=None):
|
||||
from test import test_cmd
|
||||
test_support.run_doctest(test_cmd, verbose)
|
||||
|
|
Loading…
Reference in New Issue