Mercurial > vim
diff src/testdir/test_ins_complete.vim @ 15416:5f8ddd2a7b92 v8.1.0716
patch 8.1.0716: get warning message when 'completefunc' returns nothing
commit https://github.com/vim/vim/commit/cee9bc2e3dc5c16a9d2a8d0e23aa0d5fdefa3a4a
Author: Bram Moolenaar <Bram@vim.org>
Date: Fri Jan 11 13:02:23 2019 +0100
patch 8.1.0716: get warning message when 'completefunc' returns nothing
Problem: Get warning message when 'completefunc' returns nothing.
Solution: Allow for returning v:none to suppress the warning message.
(Yasuhiro Matsumoto, closes #3789)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Fri, 11 Jan 2019 13:15:06 +0100 |
parents | 63b02fcf1361 |
children | 749a7c03de8d |
line wrap: on
line diff
--- a/src/testdir/test_ins_complete.vim +++ b/src/testdir/test_ins_complete.vim @@ -142,6 +142,14 @@ func Test_completefunc_args() delfunc CompleteFunc endfunc +func s:CompleteDone_CompleteFuncNone( findstart, base ) + if a:findstart + return 0 + endif + + return v:none +endfunc + func s:CompleteDone_CompleteFuncDict( findstart, base ) if a:findstart return 0 @@ -161,6 +169,10 @@ func s:CompleteDone_CompleteFuncDict( fi \ } endfunc +func s:CompleteDone_CheckCompletedItemNone() + let s:called_completedone = 1 +endfunc + func s:CompleteDone_CheckCompletedItemDict() call assert_equal( 'aword', v:completed_item[ 'word' ] ) call assert_equal( 'wrd', v:completed_item[ 'abbr' ] ) @@ -172,21 +184,34 @@ func s:CompleteDone_CheckCompletedItemDi let s:called_completedone = 1 endfunc -function Test_CompleteDoneDict() +func Test_CompleteDoneNone() + au CompleteDone * :call <SID>CompleteDone_CheckCompletedItemNone() + + set completefunc=<SID>CompleteDone_CompleteFuncNone + execute "normal a\<C-X>\<C-U>\<C-Y>" + set completefunc& + + call assert_true(s:called_completedone) + + let s:called_completedone = 0 + au! CompleteDone +endfunc + +func Test_CompleteDoneDict() au CompleteDone * :call <SID>CompleteDone_CheckCompletedItemDict() set completefunc=<SID>CompleteDone_CompleteFuncDict execute "normal a\<C-X>\<C-U>\<C-Y>" set completefunc& - call assert_equal( 'test', v:completed_item[ 'user_data' ] ) - call assert_true( s:called_completedone ) + call assert_equal('test', v:completed_item[ 'user_data' ]) + call assert_true(s:called_completedone) let s:called_completedone = 0 au! CompleteDone endfunc -func s:CompleteDone_CompleteFuncDictNoUserData( findstart, base ) +func s:CompleteDone_CompleteFuncDictNoUserData(findstart, base) if a:findstart return 0 endif @@ -215,21 +240,21 @@ func s:CompleteDone_CheckCompletedItemDi let s:called_completedone = 1 endfunc -function Test_CompleteDoneDictNoUserData() +func Test_CompleteDoneDictNoUserData() au CompleteDone * :call <SID>CompleteDone_CheckCompletedItemDictNoUserData() set completefunc=<SID>CompleteDone_CompleteFuncDictNoUserData execute "normal a\<C-X>\<C-U>\<C-Y>" set completefunc& - call assert_equal( '', v:completed_item[ 'user_data' ] ) - call assert_true( s:called_completedone ) + call assert_equal('', v:completed_item[ 'user_data' ]) + call assert_true(s:called_completedone) let s:called_completedone = 0 au! CompleteDone endfunc -func s:CompleteDone_CompleteFuncList( findstart, base ) +func s:CompleteDone_CompleteFuncList(findstart, base) if a:findstart return 0 endif @@ -248,15 +273,15 @@ func s:CompleteDone_CheckCompletedItemLi let s:called_completedone = 1 endfunc -function Test_CompleteDoneList() +func Test_CompleteDoneList() au CompleteDone * :call <SID>CompleteDone_CheckCompletedItemList() set completefunc=<SID>CompleteDone_CompleteFuncList execute "normal a\<C-X>\<C-U>\<C-Y>" set completefunc& - call assert_equal( '', v:completed_item[ 'user_data' ] ) - call assert_true( s:called_completedone ) + call assert_equal('', v:completed_item[ 'user_data' ]) + call assert_true(s:called_completedone) let s:called_completedone = 0 au! CompleteDone