changeset 12979:6cf6138b6484 v8.0.1365

patch 8.0.1365: when one channel test fails others fail as well commit https://github.com/vim/vim/commit/24820691e6ba9dae41ef16a3d3e55589843b34f4 Author: Bram Moolenaar <Bram@vim.org> 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.
author Christian Brabandt <cb@256bit.org>
date Sat, 02 Dec 2017 16:45:04 +0100
parents 9134a7186090
children 55e499af0d75
files src/testdir/runtest.vim src/testdir/test_channel.vim src/version.c
diffstat 3 files changed, 20 insertions(+), 11 deletions(-) [+]
line wrap: on
line diff
--- 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()',
       \ ]
 
--- 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
--- 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,