1
0
forked from aniani/vim

patch 8.2.3989: some insert completion code is not tested

Problem:    Some insert completion code is not tested.
Solution:   Add a few tests.  Refactor thesaurus completion. (Yegappan
            Lakshmanan, closes #9460)
This commit is contained in:
Yegappan Lakshmanan
2022-01-03 11:03:48 +00:00
committed by Bram Moolenaar
parent 475d9521ba
commit e982586f8e
4 changed files with 210 additions and 47 deletions

View File

@@ -733,8 +733,13 @@ func Test_edit_CTRL_N()
call feedkeys("Ii\<c-n>\<cr>\<esc>", "tnix")
call feedkeys("ILO\<c-n>\<cr>\<esc>", 'tnix')
call assert_equal(['INFER', 'loWER', 'infer', 'LOWER', '', ''], getline(1, '$'), e)
set noignorecase noinfercase complete&
set noignorecase noinfercase
%d
call setline(1, ['one word', 'two word'])
exe "normal! Goo\<C-P>\<C-X>\<C-P>"
call assert_equal('one word', getline(3))
%d
set complete&
bw!
endfor
endfunc
@@ -900,6 +905,23 @@ func Test_edit_CTRL_T()
bw!
endfunc
" Test thesaurus completion with different encodings
func Test_thesaurus_complete_with_encoding()
call writefile(['angry furious mad enraged'], 'Xthesaurus')
set thesaurus=Xthesaurus
for e in ['latin1', 'utf-8']
exe 'set encoding=' .. e
new
call setline(1, 'mad')
call cursor(1, 1)
call feedkeys("A\<c-x>\<c-t>\<cr>\<esc>", 'tnix')
call assert_equal(['mad', ''], getline(1, '$'))
bw!
endfor
set thesaurus=
call delete('Xthesaurus')
endfunc
" Test 'thesaurusfunc'
func MyThesaurus(findstart, base)
let mythesaurus = [