Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
patch 8.0.1697: various tests are still a bit flaky
Problem:    Various tests are still a bit flaky.
Solution:   Increase the default wait time to five seconds.
  • Loading branch information
brammool committed Apr 11, 2018
1 parent d60e0a1 commit 769e9d2
Show file tree
Hide file tree
Showing 7 changed files with 15 additions and 13 deletions.
6 changes: 3 additions & 3 deletions src/testdir/screendump.vim
Expand Up @@ -60,8 +60,8 @@ func RunVimInTerminal(arguments, options)
call assert_equal([rows, cols], term_getsize(buf))

" Wait for "All" of the ruler in the status line to be shown.
" This can be quite slow (e.g. when using valgrind), wait up to 4 seconds.
call WaitFor({-> len(term_getline(buf, rows)) >= cols - 1}, 4000)
" This can be quite slow (e.g. when using valgrind).
call WaitFor({-> len(term_getline(buf, rows)) >= cols - 1})

return buf
endfunc
Expand All @@ -70,7 +70,7 @@ endfunc
func StopVimInTerminal(buf)
call assert_equal("running", term_getstatus(a:buf))
call term_sendkeys(a:buf, "\<Esc>\<Esc>:qa!\<cr>")
call WaitFor('term_getstatus(' . a:buf . ') == "finished"', 3000)
call WaitFor('term_getstatus(' . a:buf . ') == "finished"')
only!
endfunc

Expand Down
4 changes: 2 additions & 2 deletions src/testdir/shared.vim
Expand Up @@ -113,14 +113,14 @@ func s:kill_server(cmd)
endif
endfunc

" Wait for up to a second for "expr" to become true. "expr" can be a
" Wait for up to five seconds for "expr" to become true. "expr" can be a
" stringified expression to evaluate, or a funcref without arguments.
" A second argument can be used to specify a different timeout in msec.
"
" Return time slept in milliseconds. With the +reltime feature this can be
" more than the actual waiting time. Without +reltime it can also be less.
func WaitFor(expr, ...)
let timeout = get(a:000, 0, 1000)
let timeout = get(a:000, 0, 5000)
" using reltime() is more accurate, but not always available
if has('reltime')
let start = reltime()
Expand Down
4 changes: 2 additions & 2 deletions src/testdir/test_channel.vim
Expand Up @@ -1143,7 +1143,7 @@ func Test_pipe_to_buffer_raw()
let job = job_start([s:python, '-c',
\ 'import sys; [sys.stdout.write(".") and sys.stdout.flush() for _ in range(10000)]'], options)
call assert_equal("run", job_status(job))
call WaitFor('len(join(getline(1, "$"), "")) >= 10000', 3000)
call WaitFor('len(join(getline(1, "$"), "")) >= 10000')
try
let totlen = 0
for line in getline(1, '$')
Expand Down Expand Up @@ -1506,7 +1506,7 @@ func Test_exit_callback_interval()
let g:exit_cb_val = {'start': reltime(), 'end': 0, 'process': 0}
let job = job_start([s:python, '-c', 'import time;time.sleep(0.5)'], {'exit_cb': 'MyExitTimeCb'})
let g:exit_cb_val.process = job_info(job).process
call WaitFor('type(g:exit_cb_val.end) != v:t_number || g:exit_cb_val.end != 0', 2000)
call WaitFor('type(g:exit_cb_val.end) != v:t_number || g:exit_cb_val.end != 0')
let elapsed = reltimefloat(g:exit_cb_val.end)
call assert_true(elapsed > 0.5)
call assert_true(elapsed < 1.0)
Expand Down
2 changes: 1 addition & 1 deletion src/testdir/test_clientserver.vim
Expand Up @@ -32,7 +32,7 @@ func Test_client_server()

" Takes a short while for the server to be active.
" When using valgrind it takes much longer.
call WaitFor('serverlist() =~ "' . name . '"', 5000)
call WaitFor('serverlist() =~ "' . name . '"')
call assert_match(name, serverlist())

call remote_foreground(name)
Expand Down
8 changes: 4 additions & 4 deletions src/testdir/test_quotestar.vim
Expand Up @@ -74,20 +74,20 @@ func Do_test_quotestar_for_x11()
" by the server.
let @* = 'no'
call remote_foreground(name)
call WaitFor('remote_expr("' . name . '", "@*", "", 1) == "no"', 3000)
call WaitFor('remote_expr("' . name . '", "@*", "", 1) == "no"')

" Set the * register on the server.
call remote_send(name, ":let @* = 'yes'\<CR>")
call WaitFor('remote_expr("' . name . '", "@*", "", 1) == "yes"', 3000)
call WaitFor('remote_expr("' . name . '", "@*", "", 1) == "yes"')

" Check that the *-register of this vim instance is changed as expected.
call WaitFor('@* == "yes"', 3000)
call WaitFor('@* == "yes"')

" Handle the large selection over 262040 byte.
let length = 262044
let sample = 'a' . repeat('b', length - 2) . 'c'
let @* = sample
call WaitFor('remote_expr("' . name . '", "len(@*) >= ' . length . '", "", 1)', 3000)
call WaitFor('remote_expr("' . name . '", "len(@*) >= ' . length . '", "", 1)')
let res = remote_expr(name, "@*", "", 2)
call assert_equal(length, len(res))
" Check length to prevent a large amount of output at assertion failure.
Expand Down
2 changes: 1 addition & 1 deletion src/testdir/test_terminal.vim
Expand Up @@ -1061,7 +1061,7 @@ func Api_drop_common(options)
\ "set t_ts=",
\ ], 'Xscript')
let buf = RunVimInTerminal('-S Xscript', {})
call WaitFor({-> bufnr('Xtextfile') > 0}, 5000)
call WaitFor({-> bufnr('Xtextfile') > 0})
call assert_equal('Xtextfile', expand('%:t'))
call assert_true(winnr('$') >= 3)
return buf
Expand Down
2 changes: 2 additions & 0 deletions src/version.c
Expand Up @@ -762,6 +762,8 @@ static char *(features[]) =

static int included_patches[] =
{ /* Add new patch number below this line */
/**/
1697,
/**/
1696,
/**/
Expand Down

0 comments on commit 769e9d2

Please sign in to comment.