Before: call ale#assert#SetUpFixerTest('javascript', 'prettier_eslint') Save g:ale_command_wrapper let g:ale_command_wrapper = '' After: call ale#assert#TearDownFixerTest() Execute(The default command should be correct): AssertFixer \ { \ 'read_temporary_file': 1, \ 'command': \ ale#Escape('prettier-eslint') \ . ' %t' \ . ' --write' \ } Execute(Additional options should be used when set): let b:ale_javascript_prettier_eslint_options = '--foobar' AssertFixer \ { \ 'read_temporary_file': 1, \ 'command': \ ale#Escape('prettier-eslint') \ . ' %t' \ . ' --foobar --write' \ } Execute(--eslint-config-path should be set for 4.2.0 and up): call ale#test#SetFilename('eslint-test-files/react-app/foo/bar.js') GivenCommandOutput ['4.2.0'] AssertFixer \ { \ 'read_temporary_file': 1, \ 'command': \ ale#Escape('prettier-eslint') \ . ' %t' \ . ' --eslint-config-path ' . ale#Escape(ale#path#Simplify(g:dir . '/eslint-test-files/react-app/.eslintrc.js')) \ . ' --write' \ } Execute(--eslint-config-path shouldn't be used for older versions): call ale#test#SetFilename('eslint-test-files/react-app/foo/bar.js') AssertFixer \ { \ 'read_temporary_file': 1, \ 'command': \ ale#Escape('prettier-eslint') \ . ' %t' \ . ' --write' \ } Execute(The version check should be correct): AssertFixer [ \ ale#Escape('prettier-eslint') . ' --version', \ { \ 'read_temporary_file': 1, \ 'command': \ ale#Escape('prettier-eslint') \ . ' %t' \ . ' --write' \ } \] Execute(The new --stdin-filepath option should be used when the version is new enough): call ale#test#SetFilename('eslint-test-files/react-app/foo/bar.js') GivenCommandOutput ['4.4.0'] AssertFixer \ { \ 'command': ale#path#CdString(expand('%:p:h')) \ . ale#Escape('prettier-eslint') \ . ' --eslint-config-path ' . ale#Escape(ale#path#Simplify(g:dir . '/eslint-test-files/react-app/.eslintrc.js')) \ . ' --stdin-filepath %s --stdin', \ } Execute(The version number should be cached): GivenCommandOutput ['4.4.0'] AssertFixer \ { \ 'command': ale#path#CdString(expand('%:p:h')) \ . ale#Escape('prettier-eslint') \ . ' --stdin-filepath %s --stdin', \ } GivenCommandOutput [] AssertFixer \ { \ 'command': ale#path#CdString(expand('%:p:h')) \ . ale#Escape('prettier-eslint') \ . ' --stdin-filepath %s --stdin', \ }