diff options
author | w0rp <devw0rp@gmail.com> | 2017-11-21 23:51:18 +0000 |
---|---|---|
committer | w0rp <devw0rp@gmail.com> | 2017-11-21 23:51:18 +0000 |
commit | 52f3ad7c75273af3b32d1085a248d14ccc1886df (patch) | |
tree | 9f5db22db0fff38d320b79951748e0c11de66a02 /test/command_callback/test_pyls_command_callback.vader | |
parent | e6fb32b7920fbe3d58c055eb7151d1316b2a40ac (diff) | |
download | ale-52f3ad7c75273af3b32d1085a248d14ccc1886df.zip |
Escape the pyls executable in the command, and support running virtualenv pyls executables
Diffstat (limited to 'test/command_callback/test_pyls_command_callback.vader')
-rw-r--r-- | test/command_callback/test_pyls_command_callback.vader | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/test/command_callback/test_pyls_command_callback.vader b/test/command_callback/test_pyls_command_callback.vader new file mode 100644 index 00000000..9f9703d7 --- /dev/null +++ b/test/command_callback/test_pyls_command_callback.vader @@ -0,0 +1,49 @@ +Before: + Save g:ale_python_pyls_executable + Save g:ale_python_pyls_use_global + + unlet! g:ale_python_pyls_executable + unlet! g:ale_python_pyls_use_global + + let b:bin_dir = has('win32') ? 'Scripts' : 'bin' + + call ale#test#SetDirectory('/testplugin/test/command_callback') + + runtime ale_linters/python/pyls.vim + +After: + Restore + + unlet! b:bin_dir + unlet! b:executable + + call ale#test#RestoreDirectory() + call ale#linter#Reset() + +Execute(The pyls command callback should return default string): + AssertEqual ale#Escape('pyls'), + \ ale_linters#python#pyls#GetCommand(bufnr('')) + +Execute(The pyls executable should be configurable): + let g:ale_python_pyls_executable = '~/.local/bin/pyls' + + AssertEqual ale#Escape('~/.local/bin/pyls'), + \ ale_linters#python#pyls#GetCommand(bufnr('')) + +Execute(The pyls executable should be run from the virtualenv path): + call ale#test#SetFilename('python_paths/with_virtualenv/subdir/foo/bar.py') + + let b:executable = ale#path#Winify( + \ g:dir . '/python_paths/with_virtualenv/env/' . b:bin_dir . '/pyls' + \) + + AssertEqual ale#Escape(b:executable), + \ ale_linters#python#pyls#GetCommand(bufnr('')) + +Execute(You should be able to override the pyls virtualenv lookup): + call ale#test#SetFilename('python_paths/with_virtualenv/subdir/foo/bar.py') + + let g:ale_python_pyls_use_global = 1 + + AssertEqual ale#Escape('pyls'), + \ ale_linters#python#pyls#GetCommand(bufnr('')) |