patch 8.2.2589: recover test hangs in the GUI
Problem: Recover test hangs in the GUI.
Solution: Add g:skipped_reason to skip a _nocatch_ test.
diff --git a/src/testdir/runtest.vim b/src/testdir/runtest.vim
index 369d931..4602051 100644
--- a/src/testdir/runtest.vim
+++ b/src/testdir/runtest.vim
@@ -196,7 +196,12 @@
if a:test =~ 'Test_nocatch_'
" Function handles errors itself. This avoids skipping commands after the
" error.
+ let g:skipped_reason = ''
exe 'call ' . a:test
+ if g:skipped_reason != ''
+ call add(s:messages, ' Skipped')
+ call add(s:skipped, 'SKIPPED ' . a:test . ': ' . g:skipped_reason)
+ endif
else
try
au VimLeavePre * call EarlyExit(g:testfunc)
diff --git a/src/testdir/test_recover.vim b/src/testdir/test_recover.vim
index 2867663..a1ff7d9 100644
--- a/src/testdir/test_recover.vim
+++ b/src/testdir/test_recover.vim
@@ -80,9 +80,15 @@
func Test_nocatch_process_still_running()
" sysinfo.uptime probably only works on Linux
- CheckLinux
+ if !has('linux')
+ let g:skipped_reason = 'only works on Linux'
+ return
+ endif
" the GUI dialog can't be handled
- CheckNotGui
+ if has('gui_running')
+ let g:skipped_reason = 'only works in the terminal'
+ return
+ endif
" don't intercept existing swap file here
au! SwapExists
diff --git a/src/version.c b/src/version.c
index 4d693c4..87ac80f 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 2589,
+/**/
2588,
/**/
2587,