summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorK.Takata <kentkt@csc.jp>2022-09-20 11:04:47 +0100
committerBram Moolenaar <Bram@vim.org>2022-09-20 11:04:47 +0100
commitcd9fa256b587b2805faeaaa4b7a8c7d483a8ac54 (patch)
treec188d56c9dc9cfe0e6c3a0edb26a5f5c2986ee61
parentbcd6924245c0e73d8be256282656c06aaf91f17c (diff)
downloadvim-git-cd9fa256b587b2805faeaaa4b7a8c7d483a8ac54.tar.gz
patch 9.0.0508: when the channel test fails there is no clue whyv9.0.0508
Problem: When the channel test fails there is no clue why. Solution: Add info about the job status. (Ken Takata, closes #11175)
-rw-r--r--src/testdir/test_channel.vim20
-rw-r--r--src/version.c2
2 files changed, 18 insertions, 4 deletions
diff --git a/src/testdir/test_channel.vim b/src/testdir/test_channel.vim
index 930868f51..5e1127e5e 100644
--- a/src/testdir/test_channel.vim
+++ b/src/testdir/test_channel.vim
@@ -1633,7 +1633,12 @@ func Test_exit_callback_interval()
let g:exit_cb_val = {'start': reltime(), 'end': 0, 'process': 0}
let job = [s:python, '-c', 'import time;time.sleep(0.5)']->job_start({'exit_cb': 'MyExitTimeCb'})
let g:exit_cb_val.process = job_info(job).process
- call WaitFor('type(g:exit_cb_val.end) != v:t_number || g:exit_cb_val.end != 0')
+ try
+ call WaitFor('type(g:exit_cb_val.end) != v:t_number || g:exit_cb_val.end != 0')
+ catch
+ call add(v:errors, "Job status: " .. string(job->job_info()))
+ throw v:exception
+ endtry
let elapsed = reltimefloat(g:exit_cb_val.end)
call assert_inrange(0.5, 1.0, elapsed)
@@ -1964,8 +1969,10 @@ func Test_env()
let cmd = [&shell, &shellcmdflag, 'echo $FOO']
endif
call assert_fails('call job_start(cmd, {"env": 1})', 'E475:')
- call job_start(cmd, {'callback': {ch,msg -> execute(":let g:envstr .= msg")}, 'env': {'FOO': 'bar'}})
- call WaitForAssert({-> assert_equal("bar", g:envstr)})
+ let job = job_start(cmd, {'callback': {ch,msg -> execute(":let g:envstr .= msg")}, 'env': {'FOO': 'bar'}})
+ if WaitForAssert({-> assert_equal("bar", g:envstr)}, 500) != 0
+ call add(v:errors, "Job status: " .. string(job->job_info()))
+ endif
unlet g:envstr
endfunc
@@ -2027,7 +2034,12 @@ func s:test_list_args(cmd, out, remove_lf)
try
let g:out = ''
let job = job_start([s:python, '-c', a:cmd], {'callback': {ch, msg -> execute('let g:out .= msg')}, 'out_mode': 'raw'})
- call WaitFor('"" != g:out')
+ try
+ call WaitFor('"" != g:out')
+ catch
+ call add(v:errors, "Job status: " .. string(job->job_info()))
+ throw v:exception
+ endtry
if has('win32')
let g:out = substitute(g:out, '\r', '', 'g')
endif
diff --git a/src/version.c b/src/version.c
index 554f8f1e9..2f545d019 100644
--- a/src/version.c
+++ b/src/version.c
@@ -700,6 +700,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 508,
+/**/
507,
/**/
506,