# HG changeset patch # User Christian Brabandt # Date 1512229504 -3600 # Node ID 6cf6138b6484df5fefbb81c5460982dcde2b4799 # Parent 9134a7186090c4a3354e5ebcfc3a873149dfe785 patch 8.0.1365: when one channel test fails others fail as well commit https://github.com/vim/vim/commit/24820691e6ba9dae41ef16a3d3e55589843b34f4 Author: Bram Moolenaar Date: Sat Dec 2 16:38:12 2017 +0100 patch 8.0.1365: when one channel test fails others fail as well 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. diff --git a/src/testdir/runtest.vim b/src/testdir/runtest.vim --- a/src/testdir/runtest.vim +++ b/src/testdir/runtest.vim @@ -251,6 +251,7 @@ let s:flaky = [ \ 'Test_exit_callback_interval()', \ 'Test_nb_basic()', \ 'Test_oneshot()', + \ 'Test_paused()', \ 'Test_pipe_through_sort_all()', \ 'Test_pipe_through_sort_some()', \ 'Test_quoteplus()', @@ -259,6 +260,7 @@ let s:flaky = [ \ 'Test_terminal_composing_unicode()', \ 'Test_terminal_noblock()', \ 'Test_terminal_redir_file()', + \ 'Test_terminal_tmap()', \ 'Test_with_partial_callback()', \ ] diff --git a/src/testdir/test_channel.vim b/src/testdir/test_channel.vim --- 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_l endif call assert_equal(a:out, g:out) finally + call job_stop(job) unlet g:out endtry endfunc diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -772,6 +772,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1365, +/**/ 1364, /**/ 1363,