0
0
mirror of https://github.com/vim/vim.git synced 2025-08-23 19:34:27 -04:00

patch 8.0.0940: Test_terminal_scrape_multibyte is flaky

Problem:    Test_terminal_scrape_multibyte is flaky. (James McCoy)
Solution:   Use WaitFor() instead of term_wait().
This commit is contained in:
Bram Moolenaar 2017-08-14 22:01:16 +02:00
parent 51c23687a9
commit c08706135d
2 changed files with 16 additions and 17 deletions

View File

@ -189,15 +189,10 @@ func Test_terminal_scrape_multibyte()
else
let cmd = "cat Xtext"
endif
let buf = term_start(cmd)
let g:buf = term_start(cmd)
call term_wait(buf)
if has('win32')
" TODO: this should not be needed
sleep 100m
endif
let l = term_scrape(buf, 1)
call WaitFor('term_scrape(g:buf, 1)[0].chars == "l"')
let l = term_scrape(g:buf, 1)
call assert_true(len(l) >= 7)
call assert_equal('l', l[0].chars)
call assert_equal('é', l[1].chars)
@ -209,11 +204,12 @@ func Test_terminal_scrape_multibyte()
call assert_equal('r', l[5].chars)
call assert_equal('s', l[6].chars)
let g:job = term_getjob(buf)
let g:job = term_getjob(g:buf)
call WaitFor('job_status(g:job) == "dead"')
call term_wait(buf)
call term_wait(g:buf)
exe buf . 'bwipe'
exe g:buf . 'bwipe'
unlet g:buf
call delete('Xtext')
endfunc
@ -409,16 +405,17 @@ func Test_terminal_env()
if !has('unix')
return
endif
let buf = Run_shell_in_terminal({'env': {'TESTENV': 'correct'}})
let g:buf = Run_shell_in_terminal({'env': {'TESTENV': 'correct'}})
" Wait for the shell to display a prompt
call WaitFor('term_getline(1) != ""')
call term_sendkeys(buf, "echo $TESTENV\r")
call term_wait(buf)
call Stop_shell_in_terminal(buf)
call WaitFor('term_getline(g:buf, 1) != ""')
call term_sendkeys(g:buf, "echo $TESTENV\r")
call term_wait(g:buf)
call Stop_shell_in_terminal(g:buf)
call WaitFor('getline(2) == "correct"')
call assert_equal('correct', getline(2))
exe buf . 'bwipe'
exe g:buf . 'bwipe'
unlet g:buf
endfunc
" must be last, we can't go back from GUI to terminal

View File

@ -769,6 +769,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
940,
/**/
939,
/**/