ale/test/completion/test_public_completion_api....

48 lines
1.7 KiB
Plaintext

Before:
call ale#linter#Reset()
unlet! b:ale_linters
unlet! b:ale_completion_info
unlet! b:ale_completion_result
After:
call ale#linter#Reset()
unlet! b:ale_linters
unlet! b:ale_completion_info
unlet! b:ale_completion_result
Execute(ale#completion#GetCompletionResult() should return v:null when there are no results):
AssertEqual v:null, ale#completion#GetCompletionResult()
Execute(ale#completion#GetCompletionResult() should return a result computed previously):
let b:ale_completion_result = [1]
AssertEqual [1], ale#completion#GetCompletionResult()
Execute(ale#completion#GetCompletionPosition() should return 0 when there is no completion information):
AssertEqual 0, ale#completion#GetCompletionPosition()
Given python(Some Python file):
foo bar
Execute(ale#completion#GetCompletionPosition() should return the position in the file when information is available):
let b:ale_completion_info = {'line': 1, 'column': 6}
" This is the first character of 'bar'
AssertEqual 4, ale#completion#GetCompletionPosition()
Execute(ale#completion#GetCompletionPositionForDeoplete() should return the position on the given input string):
" This is the first character of 'bar'
AssertEqual 4, ale#completion#GetCompletionPositionForDeoplete('foo bar')
Execute(ale#completion#CanProvideCompletions should return 0 when no completion sources are available):
let b:ale_linters = ['flake8']
AssertEqual 0, ale#completion#CanProvideCompletions()
Execute(ale#completion#CanProvideCompletions should return 1 when at least one completion source is available):
runtime ale_linters/python/pyls.vim
let b:ale_linters = ['pyls']
AssertEqual 1, ale#completion#CanProvideCompletions()