Skip to content

Commit

Permalink
patch 9.0.1675: test may run into timeout when using valgrind
Browse files Browse the repository at this point in the history
Problem:    Test may run into timeout when using valgrind.
Solution:   Use a longer timeout when using valgrind.
  • Loading branch information
brammool committed Jul 7, 2023
1 parent 416bd91 commit 7c2beb4
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 4 deletions.
20 changes: 16 additions & 4 deletions src/testdir/runtest.vim
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,9 @@ set shellslash
" Common with all tests on all systems.
source setup.vim

" Needed for RunningWithValgrind().
source shared.vim

" For consistency run all tests with 'nocompatible' set.
" This also enables use of line continuation.
set nocp viminfo+=nviminfo
Expand Down Expand Up @@ -219,12 +222,18 @@ unlet name
func TestTimeout(id)
split test.log
call append(line('$'), '')
call append(line('$'), 'Test timed out: ' .. g:testfunc)

let text = 'Test timed out: ' .. g:testfunc
if g:timeout_start > 0
let text ..= strftime(' after %s seconds', localtime() - g:timeout_start)
endif
call append(line('$'), text)
write
call add(v:errors, 'Test timed out: ' . g:testfunc)
call add(v:errors, text)

cquit! 42
endfunc
let g:timeout_start = 0

func RunTheTest(test)
let prefix = ''
Expand All @@ -237,7 +246,9 @@ func RunTheTest(test)
if has('timers')
" No test should take longer than 30 seconds. If it takes longer we
" assume we are stuck and need to break out.
let test_timeout_timer = timer_start(30000, 'TestTimeout')
let test_timeout_timer =
\ timer_start(RunningWithValgrind() ? 50000 : 30000, 'TestTimeout')
let g:timeout_start = localtime()
endif

" Avoid stopping at the "hit enter" prompt
Expand Down Expand Up @@ -307,6 +318,7 @@ func RunTheTest(test)

if has('timers')
call timer_stop(test_timeout_timer)
let g:timeout_start = 0
endif

" Clear any autocommands and put back the catch-all for SwapExists.
Expand Down Expand Up @@ -371,7 +383,7 @@ func RunTheTest(test)

" close any split windows
while winnr('$') > 1
bwipe!
noswapfile bwipe!
endwhile

" May be editing some buffer, wipe it out. Then we may end up in another
Expand Down
2 changes: 2 additions & 0 deletions src/version.c
Original file line number Diff line number Diff line change
Expand Up @@ -695,6 +695,8 @@ static char *(features[]) =

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

0 comments on commit 7c2beb4

Please sign in to comment.