| Tests for completefunc/omnifunc. vim: set ft=vim : |
| |
| STARTTEST |
| :"Test that nothing happens if the 'completefunc' opens |
| :"a new window (no completion, no crash) |
| :so small.vim |
| :function! DummyCompleteOne(findstart, base) |
| : if a:findstart |
| : return 0 |
| : else |
| : wincmd n |
| : return ['onedef', 'oneDEF'] |
| : endif |
| :endfunction |
| :setlocal completefunc=DummyCompleteOne |
| /^one |
| A:q! |
| :function! DummyCompleteTwo(findstart, base) |
| : if a:findstart |
| : wincmd n |
| : return 0 |
| : else |
| : return ['twodef', 'twoDEF'] |
| : endif |
| :endfunction |
| :setlocal completefunc=DummyCompleteTwo |
| /^two |
| A:q! |
| :"Test that 'completefunc' works when it's OK. |
| :function! DummyCompleteThree(findstart, base) |
| : if a:findstart |
| : return 0 |
| : else |
| : return ['threedef', 'threeDEF'] |
| : endif |
| :endfunction |
| :setlocal completefunc=DummyCompleteThree |
| /^three |
| A:/^+++/,/^three/w! test.out |
| :qa! |
| ENDTEST |
| |
| +++ |
| one |
| two |
| three |