%d
set complete=F
call assert_fails('exe "normal a\<C-N>"', 'E565:')
- close!
+ bw!
set completefunc& complete&
delfunc CompleteFunc
delfunc CompleteFunc2
delfunc CompleteFunc3
- close!
+ bw!
endfunc
" Test for returning non-string values from 'completefunc'
setlocal complete=w
call feedkeys("itw\<C-N>\<C-X>\<C-N>\<C-X>\<C-N>\<C-X>\<C-N>", 'xt')
call assert_equal('two three four', getline(1))
- close!
+ bw!
" complete words from the current buffer
setlocal complete=.
%d
call cursor(2, 1)
call feedkeys("ion\<C-N>\<C-X>\<C-N>\<C-X>\<C-N>\<C-X>\<C-N>", 'xt')
call assert_equal('one two one two', getline(2))
- close!
+ bw!
endfunc
" Test for completing special characters
call setline(1, 'int .*[-\^$ func float')
call feedkeys("oin\<C-X>\<C-P>\<C-X>\<C-P>\<C-X>\<C-P>", 'xt')
call assert_equal('int .*[-\^$ func float', getline(2))
- close!
+ bw!
endfunc
" Test for completion when text is wrapped across lines.
setlocal textwidth=20
exe "normal 2G$a re\<C-X>\<C-P>\<C-X>\<C-P>\<C-X>\<C-P>\<C-X>\<C-P>"
call assert_equal(['one two three red', 'green blue one'], getline(2, '$'))
- close!
+ bw!
endfunc
" Test for completing words with a '.' at the end of a word.
exe "normal aWOR\<C-P>\<bs>\<bs>\<bs>\<bs>\<bs>\<bs>\<C-L>\<C-L>\<C-L>"
call assert_equal('workh', getline(3))
set ignorecase& backspace&
- close!
+ bw!
endfunc
" Test for using CTRL-X CTRL-L to complete whole lines lines
setlocal cinkeys+==while
exe "normal Giwh\<C-P> "
call assert_equal("\twhile ", getline('$'))
- close!
+ bw!
endfunc
" Test for <CTRL-X> <CTRL-V> completion. Complete commands and functions
call delete('TestCommand2Test')
delcom TestCommand1
delcom TestCommand2
- close!
+ bw!
endfunc
" Test for <CTRL-X> <CTRL-Z> stopping completion without changing the match
iunmap <F2>
delfunc Save_mode1
delfunc Save_mode2
- close!
+ bw!
endfunc
" Test for typing CTRL-R in insert completion mode to insert a register
call writefile(['def'], "Xfile2", 'D')
edit Xfile1
edit Xfile2
- new | close
+ new | bw
enew
bunload Xfile1 Xfile2
set complete=u
call writefile(['def'], "Xfile2", 'D')
edit Xfile1
edit Xfile2
- new | close
+ new | bw
bdel Xfile1 Xfile2
set complete=U
" complete from an unlisted buffer