forked from aniani/vim
patch 7.4.2157
Problem: Test_job_start_fails() is expected to report memory leaks, making it hard to see other leaks in test_partial. Solution: Move Test_job_start_fails() to a separate test file.
This commit is contained in:
@@ -2086,6 +2086,7 @@ test_arglist \
|
|||||||
test_history \
|
test_history \
|
||||||
test_increment \
|
test_increment \
|
||||||
test_increment_dbcs \
|
test_increment_dbcs \
|
||||||
|
test_job_fails \
|
||||||
test_join \
|
test_join \
|
||||||
test_json \
|
test_json \
|
||||||
test_jumps \
|
test_jumps \
|
||||||
|
@@ -176,6 +176,7 @@ NEW_TESTS = test_arglist.res \
|
|||||||
test_history.res \
|
test_history.res \
|
||||||
test_increment.res \
|
test_increment.res \
|
||||||
test_increment_dbcs.res \
|
test_increment_dbcs.res \
|
||||||
|
test_job_fails.res \
|
||||||
test_json.res \
|
test_json.res \
|
||||||
test_langmap.res \
|
test_langmap.res \
|
||||||
test_man.res \
|
test_man.res \
|
||||||
|
19
src/testdir/test_job_fails.vim
Normal file
19
src/testdir/test_job_fails.vim
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
" This test is in a separate file, because it usually causes reports for memory
|
||||||
|
" leaks under valgrind. That is because when fork/exec fails memory is not
|
||||||
|
" freed. Since the process exists right away it's not a real leak.
|
||||||
|
|
||||||
|
source shared.vim
|
||||||
|
|
||||||
|
func Test_job_start_fails()
|
||||||
|
if has('job')
|
||||||
|
let g:job = job_start('axdfxsdf')
|
||||||
|
if has('unix')
|
||||||
|
call WaitFor('job_status(g:job) == "dead"')
|
||||||
|
call assert_equal('dead', job_status(g:job))
|
||||||
|
else
|
||||||
|
call WaitFor('job_status(g:job) == "fail"')
|
||||||
|
call assert_equal('fail', job_status(g:job))
|
||||||
|
endif
|
||||||
|
unlet g:job
|
||||||
|
endif
|
||||||
|
endfunc
|
@@ -1,27 +1,5 @@
|
|||||||
" Test binding arguments to a Funcref.
|
" Test binding arguments to a Funcref.
|
||||||
|
|
||||||
" NOTE: This function may cause memory leaks to be reported.
|
|
||||||
" That is because when fork/exec fails memory is not freed. Since the process
|
|
||||||
" exists right away it's not a real leak.
|
|
||||||
func Test_job_start_fails()
|
|
||||||
if has('job')
|
|
||||||
let job = job_start('axdfxsdf')
|
|
||||||
for i in range(100)
|
|
||||||
let status = job_status(job)
|
|
||||||
if status == 'dead' || status == 'fail'
|
|
||||||
break
|
|
||||||
endif
|
|
||||||
sleep 10m
|
|
||||||
endfor
|
|
||||||
if has('unix')
|
|
||||||
call assert_equal('dead', job_status(job))
|
|
||||||
else
|
|
||||||
call assert_equal('fail', job_status(job))
|
|
||||||
endif
|
|
||||||
unlet job
|
|
||||||
endif
|
|
||||||
endfunc
|
|
||||||
|
|
||||||
func MyFunc(arg1, arg2, arg3)
|
func MyFunc(arg1, arg2, arg3)
|
||||||
return a:arg1 . '/' . a:arg2 . '/' . a:arg3
|
return a:arg1 . '/' . a:arg2 . '/' . a:arg3
|
||||||
endfunc
|
endfunc
|
||||||
|
@@ -763,6 +763,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
2157,
|
||||||
/**/
|
/**/
|
||||||
2156,
|
2156,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user