@@ -221,7 +221,7 @@ fake_repl() do stdin_write, stdout_read, repl
221221 write (stdin_write, " ;" )
222222 readuntil (stdout_read, " shell> " )
223223 Base. print_shell_escaped (stdin_write, Base. julia_cmd (). exec... , special= Base. shell_special)
224- write (stdin_write, """ -e "println(\\ "HI\\ ")\" """ )
224+ write (stdin_write, """ -e "println(\\ "HI\\ ")\" """ )
225225 readuntil (stdout_read, " )\" " )
226226 proc_stdout_read, proc_stdout = redirect_stdout ()
227227 get_stdout = @async read (proc_stdout_read, String)
@@ -299,6 +299,14 @@ fake_repl() do stdin_write, stdout_read, repl
299299 write (stdin_write, " \e [B\n " )
300300 readuntil (stdout_read, s2)
301301
302+ # test that prefix history search "passes through" key bindings to parent mode
303+ write (stdin_write, " 0x321\n " )
304+ readuntil (stdout_read, " 0x321" )
305+ write (stdin_write, " \e [A\e [1;3C|||" ) # uparrow (go up history) and then Meta-rightarrow (indent right)
306+ s2 = readuntil (stdout_read, " |||" , keep= true )
307+ @test endswith (s2, " 0x321\r\e [13C|||" ) # should have a space (from Meta-rightarrow) and not
308+ # have a spurious C before ||| (the one here is not spurious!)
309+
302310 # Close REPL ^D
303311 write (stdin_write, ' \x 04' )
304312 Base. wait (repltask)
0 commit comments