Permalink
Browse files

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.
  • Loading branch information...
1 parent c90f2ae commit 46c4d4ac66aa2b129f4dcec9debfda606f72d4b3 @brammool brammool committed Aug 5, 2016
Showing with 23 additions and 22 deletions.
  1. +1 −0 src/Makefile
  2. +1 −0 src/testdir/Make_all.mak
  3. +19 −0 src/testdir/test_job_fails.vim
  4. +0 −22 src/testdir/test_partial.vim
  5. +2 −0 src/version.c
View
@@ -2086,6 +2086,7 @@ test_arglist \
test_history \
test_increment \
test_increment_dbcs \
+ test_job_fails \
test_join \
test_json \
test_jumps \
@@ -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 \
@@ -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.
-" 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
@@ -764,6 +764,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 2157,
+/**/
2156,
/**/
2155,

0 comments on commit 46c4d4a

Please sign in to comment.