diff options
Diffstat (limited to 'Lib/test/test_readline.py')
| -rw-r--r-- | Lib/test/test_readline.py | 23 | 
1 files changed, 18 insertions, 5 deletions
diff --git a/Lib/test/test_readline.py b/Lib/test/test_readline.py index 5483dd31b8..8b778186f1 100644 --- a/Lib/test/test_readline.py +++ b/Lib/test/test_readline.py @@ -1,17 +1,20 @@  """  Very minimal unittests for parts of the readline module. - -These tests were added to check that the libedit emulation on OSX and -the "real" readline have the same interface for history manipulation. That's -why the tests cover only a small subset of the interface.  """ +import os  import unittest  from test.support import run_unittest, import_module +from test.script_helper import assert_python_ok  # Skip tests if there is no readline module  readline = import_module('readline')  class TestHistoryManipulation (unittest.TestCase): +    """ +    These tests were added to check that the libedit emulation on OSX and the +    "real" readline have the same interface for history manipulation. That's +    why the tests cover only a small subset of the interface. +    """      @unittest.skipIf(not hasattr(readline, 'clear_history'),                       "The history update test cannot be run because the " @@ -40,8 +43,18 @@ class TestHistoryManipulation (unittest.TestCase):          self.assertEqual(readline.get_current_history_length(), 1) +class TestReadline(unittest.TestCase): +    def test_init(self): +        # Issue #19884: Ensure that the ANSI sequence "\033[1034h" is not +        # written into stdout when the readline module is imported and stdout +        # is redirected to a pipe. +        rc, stdout, stderr = assert_python_ok('-c', 'import readline', +                                              TERM='xterm-256color') +        self.assertEqual(stdout, b'') + +  def test_main(): -    run_unittest(TestHistoryManipulation) +    run_unittest(TestHistoryManipulation, TestReadline)  if __name__ == "__main__":      test_main()  | 
