Before:
Save g:ale_php_phpcs_executable
Save g:ale_php_phpcs_use_global
let g:ale_php_phpcs_executable = 'phpcs_test'
let g:ale_php_phpcs_use_global = 0
call ale#test#SetDirectory('/testplugin/test')
runtime ale_linters/php/phpcs.vim
After:
Restore
call ale#test#RestoreDirectory()
call ale#linter#Reset()
Execute(project with phpcs should use local by default):
call ale#test#SetFilename('phpcs-test-files/project-with-phpcs/foo/test.php')
AssertEqual
\ g:dir . '/phpcs-test-files/project-with-phpcs/vendor/bin/phpcs',
\ ale_linters#php#phpcs#GetExecutable(bufnr(''))
Execute(use-global should override local detection):
let g:ale_php_phpcs_use_global = 1
\ 'phpcs_test',
Execute(project without phpcs should use global):
call ale#test#SetFilename('phpcs-test-files/project-without-phpcs/foo/test.php')