Mercurial > vim
changeset 9577:e3b6a4a87684 v7.4.2066
commit https://github.com/vim/vim/commit/c1fb763184c8ae82300357867fa2070aa94366e9
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Jul 17 23:34:21 2016 +0200
patch 7.4.2066
Problem: getcompletion() not well tested.
Solution: Add more testing.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sun, 17 Jul 2016 23:45:05 +0200 |
parents | 3ed2642b1328 |
children | 536613ac2cef |
files | src/testdir/test_cmdline.vim src/version.c |
diffstat | 2 files changed, 76 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/testdir/test_cmdline.vim +++ b/src/testdir/test_cmdline.vim @@ -45,5 +45,79 @@ func Test_getcompletion() call assert_true(matchcount > 0) endif + let l = getcompletion('v:n', 'var') + call assert_true(index(l, 'v:null') >= 0) + + let l = getcompletion('', 'augroup') + call assert_true(index(l, 'END') >= 0) + + let l = getcompletion('', 'behave') + call assert_true(index(l, 'mswin') >= 0) + + let l = getcompletion('', 'color') + call assert_true(index(l, 'default') >= 0) + + let l = getcompletion('', 'command') + call assert_true(index(l, 'sleep') >= 0) + + let l = getcompletion('', 'dir') + call assert_true(index(l, 'samples') >= 0) + + let l = getcompletion('exe', 'expression') + call assert_true(index(l, 'executable(') >= 0) + + let l = getcompletion('tag', 'function') + call assert_true(index(l, 'taglist(') >= 0) + + let l = getcompletion('run', 'file') + call assert_true(index(l, 'runtest.vim') >= 0) + + let l = getcompletion('ha', 'filetype') + call assert_true(index(l, 'hamster') >= 0) + + let l = getcompletion('z', 'syntax') + call assert_true(index(l, 'zimbu') >= 0) + + let l = getcompletion('jikes', 'compiler') + call assert_true(index(l, 'jikes') >= 0) + + let l = getcompletion('last', 'help') + call assert_true(index(l, ':tablast') >= 0) + + let l = getcompletion('time', 'option') + call assert_true(index(l, 'timeoutlen') >= 0) + + let l = getcompletion('er', 'highlight') + call assert_true(index(l, 'ErrorMsg') >= 0) + + " For others test if the name is recognized. + let names = ['buffer', 'environment', 'file_in_path', + \ 'mapping', 'shellcmd', 'tag', 'tag_listfiles', 'user'] + if has('cscope') + call add(names, 'cscope') + endif + if has('cmdline_hist') + call add(names, 'history') + endif + if has('gettext') + call add(names, 'locale') + endif + if has('profile') + call add(names, 'syntime') + endif + if has('signs') + call add(names, 'sign') + endif + + set tags=Xtags + call writefile(["!_TAG_FILE_ENCODING\tutf-8\t//", "word\tfile\tcmd"], 'Xtags') + + for name in names + let matchcount = len(getcompletion('', name)) + call assert_true(matchcount >= 0, 'No matches for ' . name) + endfor + + call delete('Xtags') + call assert_fails('call getcompletion("", "burp")', 'E475:') endfunc