vim-patch:8.0.1165: popup test is still flaky

Problem:    Popup test is still flaky.
Solution:   Add a term_wait() call. (Ozaki Kiichi)
f52c383156
This commit is contained in:
Jan Edmund Lazo
2018-11-19 23:45:59 -05:00
parent f1d2297c5e
commit 3c228e8935

View File

@@ -677,20 +677,26 @@ func Test_popup_and_window_resize()
endif endif
let g:buf = term_start([$NVIM_PRG, '--clean', '-c', 'set noswapfile'], {'term_rows': h / 3}) let g:buf = term_start([$NVIM_PRG, '--clean', '-c', 'set noswapfile'], {'term_rows': h / 3})
call term_sendkeys(g:buf, (h / 3 - 1)."o\<esc>G") call term_sendkeys(g:buf, (h / 3 - 1)."o\<esc>G")
call term_wait(g:buf, 100)
call term_sendkeys(g:buf, "i\<c-x>") call term_sendkeys(g:buf, "i\<c-x>")
call term_wait(g:buf, 100) call term_wait(g:buf, 100)
call term_sendkeys(g:buf, "\<c-v>") call term_sendkeys(g:buf, "\<c-v>")
call term_wait(g:buf, 100) call term_wait(g:buf, 100)
" popup first entry "!" must be at the top
call WaitFor('term_getline(g:buf, 1) =~ "^!"') call WaitFor('term_getline(g:buf, 1) =~ "^!"')
call assert_match('^!\s*$', term_getline(g:buf, 1)) call assert_match('^!\s*$', term_getline(g:buf, 1))
exe 'resize +' . (h - 1) exe 'resize +' . (h - 1)
call term_wait(g:buf, 100) call term_wait(g:buf, 100)
redraw! redraw!
" popup shifted down, first line is now empty
call WaitFor('term_getline(g:buf, 1) == ""') call WaitFor('term_getline(g:buf, 1) == ""')
call assert_equal('', term_getline(g:buf, 1)) call assert_equal('', term_getline(g:buf, 1))
sleep 100m sleep 100m
" popup is below cursor line and shows first match "!"
call WaitFor('term_getline(g:buf, term_getcursor(g:buf)[0] + 1) =~ "^!"') call WaitFor('term_getline(g:buf, term_getcursor(g:buf)[0] + 1) =~ "^!"')
call assert_match('^!\s*$', term_getline(g:buf, term_getcursor(g:buf)[0] + 1)) call assert_match('^!\s*$', term_getline(g:buf, term_getcursor(g:buf)[0] + 1))
" cursor line also shows !
call assert_match('^!\s*$', term_getline(g:buf, term_getcursor(g:buf)[0]))
bwipe! bwipe!
endfunc endfunc