1
0
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:
Bram Moolenaar
2016-08-05 19:31:57 +02:00
parent c90f2aedd0
commit 46c4d4ac66
5 changed files with 23 additions and 22 deletions

View File

@@ -2086,6 +2086,7 @@ test_arglist \
test_history \
test_increment \
test_increment_dbcs \
test_job_fails \
test_join \
test_json \
test_jumps \

View File

@@ -176,6 +176,7 @@ NEW_TESTS = test_arglist.res \
test_history.res \
test_increment.res \
test_increment_dbcs.res \
test_job_fails.res \
test_json.res \
test_langmap.res \
test_man.res \

View 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

View File

@@ -1,27 +1,5 @@
" 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)
return a:arg1 . '/' . a:arg2 . '/' . a:arg3
endfunc

View File

@@ -763,6 +763,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
2157,
/**/
2156,
/**/