patch 8.2.2708: test sometimes fails waiting for shell in terminal
Problem: Test sometimes fails waiting for shell in terminal.
Solution: Use WaitForAssert() so we can see the actual job status. Use
Run_shell_in_terminal().
diff --git a/src/testdir/term_util.vim b/src/testdir/term_util.vim
index 8541ef3..de87dd4 100644
--- a/src/testdir/term_util.vim
+++ b/src/testdir/term_util.vim
@@ -23,7 +23,7 @@
func StopShellInTerminal(buf)
call term_sendkeys(a:buf, "exit\r")
let job = term_getjob(a:buf)
- call WaitFor({-> job_status(job) == "dead"})
+ call WaitForAssert({-> assert_equal("dead", job_status(job))})
endfunc
" Wrapper around term_wait() to allow more time for re-runs of flaky tests
@@ -160,7 +160,7 @@
" number.
func Run_shell_in_terminal(options)
if has('win32')
- let buf = term_start([&shell,'/k'], a:options)
+ let buf = term_start([&shell, '/k'], a:options)
else
let buf = term_start(&shell, a:options)
endif
diff --git a/src/testdir/test_mksession.vim b/src/testdir/test_mksession.vim
index 29d4360..fca1227 100644
--- a/src/testdir/test_mksession.vim
+++ b/src/testdir/test_mksession.vim
@@ -392,7 +392,7 @@
func Test_mksession_terminal_no_restore_funcarg()
CheckFeature terminal
- call term_start(&shell, {'norestore': 1})
+ let buf = Run_shell_in_terminal({'norestore': 1})
mksession! Xtest_mks.out
let lines = readfile('Xtest_mks.out')
let term_cmd = ''
@@ -402,7 +402,7 @@
endif
endfor
- call StopShellInTerminal(bufnr('%'))
+ call StopShellInTerminal(buf)
call delete('Xtest_mks.out')
endfunc
diff --git a/src/version.c b/src/version.c
index 754e607..2b0955c 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 2708,
+/**/
2707,
/**/
2706,