Before: call ale#assert#SetUpLinterTest('php', 'phpactor') After: call ale#assert#TearDownLinterTest() Execute(The default executable path should be correct): AssertLinter 'phpactor', \ ale#Escape('phpactor') . ' language-server' Execute(Overriding the executable should work): let b:ale_php_phpactor_executable = 'my_phpactor' AssertLinter 'my_phpactor', ale#Escape('my_phpactor') . ' language-server' unlet b:ale_php_phpactor_executable Execute(The project path should be correct for .git directories): call ale#test#SetFilename('../test-files/php/with-git/test.php') silent! call mkdir('../test-files/php/with-git/.git') AssertLSPProject ale#path#Simplify(g:dir . '/../test-files/php/with-git') Execute(The project path should be correct for composer.json file): call ale#test#SetFilename('../test-files/php/with-composer/test.php') AssertLSPProject ale#path#Simplify(g:dir . '/../test-files/php/with-composer') Execute(The LSP values should be set correctly): AssertLSPLanguage 'php' AssertLSPOptions {} AssertLSPConfig {} Execute(Should accept initialization options): let b:ale_php_phpactor_init_options = { \ 'language_server_phpstan.enabled': v:false, \ } AssertLSPOptions { \ 'language_server_phpstan.enabled': v:false, \ }