0
0
mirror of https://github.com/vim/vim.git synced 2025-09-29 04:34:16 -04:00

patch 8.1.0456: running test hangs when the input file is being edited

Problem:    Running test hangs when the input file is being edited.
Solution:   Use a SwapExists autocommand to ignore editing the test script.
This commit is contained in:
Bram Moolenaar
2018-10-07 15:42:07 +02:00
parent 019dfe6855
commit d8f27b30d6
3 changed files with 20 additions and 2 deletions

View File

@@ -9,8 +9,10 @@ XXDPROG = ../xxd/xxd
SCRIPTSOURCE = ../../runtime SCRIPTSOURCE = ../../runtime
# Change this to empty to see the verbose output of tests. # Comment out this line to see the verbose output of tests.
REDIR_TEST_TO_NULL = > /dev/null #
# Catches SwapExists to avoid hanging at the ATTENTION prompt.
REDIR_TEST_TO_NULL = --cmd 'au SwapExists * let v:swapchoice = "e"' > /dev/null
# Uncomment this line to use valgrind for memory leaks and extra warnings. # Uncomment this line to use valgrind for memory leaks and extra warnings.
# The output goes into a file "valgrind.testN" # The output goes into a file "valgrind.testN"

View File

@@ -57,6 +57,19 @@ else
set encoding=latin1 set encoding=latin1
endif endif
" REDIR_TEST_TO_NULL has a very permissive SwapExists autocommand which is for
" the test_name.vim file itself. Replace it here with a more restrictive one,
" so we still catch mistakes.
let s:test_script_fname = expand('%')
au! SwapExists * call HandleSwapExists()
func HandleSwapExists()
" Only ignore finding a swap file for the test script (the user might be
" editing it and do ":make test_name") and the output file.
if expand('<afile>') == 'messages' || expand('<afile>') =~ s:test_script_fname
let v:swapchoice = 'e'
endif
endfunc
" Avoid stopping at the "hit enter" prompt " Avoid stopping at the "hit enter" prompt
set nomore set nomore
@@ -146,6 +159,7 @@ func RunTheTest(test)
" Clear any autocommands " Clear any autocommands
au! au!
au SwapExists * call HandleSwapExists()
" Close any extra tab pages and windows and make the current one not modified. " Close any extra tab pages and windows and make the current one not modified.
while tabpagenr('$') > 1 while tabpagenr('$') > 1

View File

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