# HG changeset patch # User Bram Moolenaar # Date 1615411803 -3600 # Node ID 467c3022fba60e89e774fab78c0f8b199c2e594c # Parent c05b22a0905bad6d29e386bef12f0174db8a089c patch 8.2.2589: recover test hangs in the GUI Commit: https://github.com/vim/vim/commit/776b954622b45125dfdcb4a61243ca90956b0825 Author: Bram Moolenaar Date: Wed Mar 10 22:27:48 2021 +0100 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 --- a/src/testdir/runtest.vim +++ b/src/testdir/runtest.vim @@ -196,7 +196,12 @@ func RunTheTest(test) 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 --- a/src/testdir/test_recover.vim +++ b/src/testdir/test_recover.vim @@ -80,9 +80,15 @@ endfunc 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 --- a/src/version.c +++ b/src/version.c @@ -751,6 +751,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 2589, +/**/ 2588, /**/ 2587,