2323from _pyrepl .readline import ReadlineAlikeReader , ReadlineConfig
2424from _pyrepl .simple_interact import _strip_final_indent
2525from _pyrepl .unix_eventqueue import EventQueue
26+ from _pyrepl .simple_interact import InteractiveColoredConsole
2627
2728
2829def more_lines (unicodetext , namespace = None ):
@@ -830,7 +831,6 @@ def test_bracketed_paste(self):
830831 ' else:\n '
831832 ' pass\n '
832833 )
833- # fmt: on
834834
835835 output_code = (
836836 'def a():\n '
@@ -841,8 +841,8 @@ def test_bracketed_paste(self):
841841 '\n '
842842 ' else:\n '
843843 ' pass\n '
844- '\n '
845844 )
845+ # fmt: on
846846
847847 paste_start = "\x1b [200~"
848848 paste_end = "\x1b [201~"
@@ -857,6 +857,22 @@ def test_bracketed_paste(self):
857857 output = multiline_input (reader )
858858 self .assertEqual (output , output_code )
859859
860+ def test_bracketed_paste_single_line (self ):
861+ input_code = "oneline"
862+
863+ paste_start = "\x1b [200~"
864+ paste_end = "\x1b [201~"
865+
866+ events = itertools .chain (
867+ code_to_events (paste_start ),
868+ code_to_events (input_code ),
869+ code_to_events (paste_end ),
870+ code_to_events ("\n " ),
871+ )
872+ reader = self .prepare_reader (events )
873+ output = multiline_input (reader )
874+ self .assertEqual (output , input_code )
875+
860876
861877class TestReader (TestCase ):
862878 def assert_screen_equals (self , reader , expected ):
@@ -986,5 +1002,5 @@ def test_up_arrow_after_ctrl_r(self):
9861002 self .assert_screen_equals (reader , "" )
9871003
9881004
989- if __name__ == " __main__" :
1005+ if __name__ == ' __main__' :
9901006 unittest .main ()
0 commit comments