diff options
author | Bram Moolenaar <Bram@vim.org> | 2017-12-02 16:38:12 +0100 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2017-12-02 16:38:12 +0100 |
commit | 24820691e6ba9dae41ef16a3d3e55589843b34f4 (patch) | |
tree | a313908795b56c5069af29f32ba0272afc2869d5 /src/testdir/test_channel.vim | |
parent | 22044dc31788d9f1c2da7725269884d9923b4795 (diff) | |
download | vim-git-24820691e6ba9dae41ef16a3d3e55589843b34f4.tar.gz |
patch 8.0.1365: when one channel test fails others fail as wellv8.0.1365
Problem: When one channel test fails others fail as well.
Solution: Stop the job after a failure. Also add a couple of tests to the
list of flaky tests.
Diffstat (limited to 'src/testdir/test_channel.vim')
-rw-r--r-- | src/testdir/test_channel.vim | 27 |
1 files changed, 16 insertions, 11 deletions
diff --git a/src/testdir/test_channel.vim b/src/testdir/test_channel.vim index 459ee13fa..034bd3977 100644 --- a/src/testdir/test_channel.vim +++ b/src/testdir/test_channel.vim @@ -1694,19 +1694,23 @@ func Test_cwd() let g:envstr = '' if has('win32') let expect = $TEMP - call job_start(['cmd', '/c', 'echo %CD%'], {'callback': {ch,msg->execute(":let g:envstr .= msg")}, 'cwd': expect}) + let job = job_start(['cmd', '/c', 'echo %CD%'], {'callback': {ch,msg->execute(":let g:envstr .= msg")}, 'cwd': expect}) else let expect = $HOME - call job_start(['pwd'], {'callback': {ch,msg->execute(":let g:envstr .= msg")}, 'cwd': expect}) + let job = job_start(['pwd'], {'callback': {ch,msg->execute(":let g:envstr .= msg")}, 'cwd': expect}) endif - call WaitFor('"" != g:envstr') - let expect = substitute(expect, '[/\\]$', '', '') - let g:envstr = substitute(g:envstr, '[/\\]$', '', '') - if $CI != '' && stridx(g:envstr, '/private/') == 0 - let g:envstr = g:envstr[8:] - endif - call assert_equal(expect, g:envstr) - unlet g:envstr + try + call WaitFor('"" != g:envstr') + let expect = substitute(expect, '[/\\]$', '', '') + let g:envstr = substitute(g:envstr, '[/\\]$', '', '') + if $CI != '' && stridx(g:envstr, '/private/') == 0 + let g:envstr = g:envstr[8:] + endif + call assert_equal(expect, g:envstr) + finally + call job_stop(job) + unlet g:envstr + endtry endfunc function Ch_test_close_lambda(port) @@ -1731,7 +1735,7 @@ endfunc func s:test_list_args(cmd, out, remove_lf) try let g:out = '' - call job_start([s:python, '-c', a:cmd], {'callback': {ch, msg -> execute('let g:out .= msg')}, 'out_mode': 'raw'}) + let job = job_start([s:python, '-c', a:cmd], {'callback': {ch, msg -> execute('let g:out .= msg')}, 'out_mode': 'raw'}) call WaitFor('"" != g:out') if has('win32') let g:out = substitute(g:out, '\r', '', 'g') @@ -1741,6 +1745,7 @@ func s:test_list_args(cmd, out, remove_lf) endif call assert_equal(a:out, g:out) finally + call job_stop(job) unlet g:out endtry endfunc |