Before: call ale#assert#SetUpLinterTest('typescript', 'xo') call ale#test#SetFilename('testfile.ts') unlet! b:executable After: call ale#assert#TearDownLinterTest() Execute(The XO executable should be called): AssertLinter 'xo', ale#Escape('xo') . ' --reporter unix --stdin --stdin-filename %s' Execute(The XO executable should be configurable): let b:ale_typescript_xo_executable = 'foobar' AssertLinter 'foobar', ale#Escape('foobar') . ' --reporter unix --stdin --stdin-filename %s' Execute(The XO options should be configurable): let b:ale_typescript_xo_options = '--wat' AssertLinter 'xo', ale#Escape('xo') . ' --wat --reporter unix --stdin --stdin-filename %s'