#3325 - ale#path#BufferCdString now generates %s:h

This commit is contained in:
w0rp
2020-08-28 17:46:43 +01:00
parent 34e409ea21
commit 3d5a2690ce
24 changed files with 117 additions and 89 deletions

View File

@@ -1,39 +1,40 @@
Before:
call ale#assert#SetUpLinterTest('python', 'pydocstyle')
call ale#test#SetFilename('test.py')
After:
call ale#assert#TearDownLinterTest()
Execute(The pydocstyle command callback should return default string):
AssertLinter 'pydocstyle',
\ ale#path#BufferCdString(bufnr(''))
\ . ale#Escape('pydocstyle') . ' ' . ale#Escape('dummy.txt')
\ ale#path#CdString(expand('#' . bufnr('') . ':p:h'))
\ . ale#Escape('pydocstyle') . ' ' . ale#Escape('test.py')
Execute(The pydocstyle command callback should allow options):
let g:ale_python_pydocstyle_options = '--verbose'
AssertLinter 'pydocstyle',
\ ale#path#BufferCdString(bufnr(''))
\ . ale#Escape('pydocstyle') . ' --verbose ' . ale#Escape('dummy.txt')
\ ale#path#CdString(expand('#' . bufnr('') . ':p:h'))
\ . ale#Escape('pydocstyle') . ' --verbose ' . ale#Escape('test.py')
Execute(The pydocstyle executable should be configurable):
let g:ale_python_pydocstyle_executable = '~/.local/bin/pydocstyle'
AssertLinter '~/.local/bin/pydocstyle',
\ ale#path#BufferCdString(bufnr(''))
\ . ale#Escape('~/.local/bin/pydocstyle') . ' ' . ale#Escape('dummy.txt')
\ ale#path#CdString(expand('#' . bufnr('') . ':p:h'))
\ . ale#Escape('~/.local/bin/pydocstyle') . ' ' . ale#Escape('test.py')
Execute(Setting executable to 'pipenv' appends 'run pydocstyle'):
let g:ale_python_pydocstyle_executable = 'path/to/pipenv'
AssertLinter 'path/to/pipenv',
\ ale#path#BufferCdString(bufnr(''))
\ . ale#Escape('path/to/pipenv') . ' run pydocstyle ' . ale#Escape('dummy.txt')
\ ale#path#CdString(expand('#' . bufnr('') . ':p:h'))
\ . ale#Escape('path/to/pipenv') . ' run pydocstyle ' . ale#Escape('test.py')
Execute(Pipenv is detected when python_pydocstyle_auto_pipenv is set):
let g:ale_python_pydocstyle_auto_pipenv = 1
call ale#test#SetFilename('/testplugin/test/python_fixtures/pipenv/whatever.py')
call ale#test#SetFilename('../python_fixtures/pipenv/whatever.py')
AssertLinter 'pipenv',
\ ale#path#BufferCdString(bufnr(''))
\ ale#path#CdString(expand('#' . bufnr('') . ':p:h'))
\ . ale#Escape('pipenv') . ' run pydocstyle ' . ale#Escape('whatever.py')