bf1ac8e822
* FIX: use mix from the project root directory * Move find root project function to autoloaded handlers * add tests for #ale#handlers#elixr#FindMixProjectRoot
26 lines
1,017 B
Text
26 lines
1,017 B
Text
Before:
|
|
call ale#assert#SetUpLinterTest('elixir', 'mix')
|
|
|
|
let g:env_prefix = has('win32')
|
|
\ ? 'set MIX_BUILD_PATH=' . ale#Escape('TEMP_DIR') . ' && '
|
|
\ : 'MIX_BUILD_PATH=' . ale#Escape('TEMP_DIR') . ' '
|
|
|
|
After:
|
|
unlet! g:env_prefix
|
|
|
|
call ale#assert#TearDownLinterTest()
|
|
|
|
Execute(The default mix command should be correct):
|
|
call ale#test#SetFilename('mix_paths/wrapped_project/lib/app.ex')
|
|
|
|
AssertLinter 'mix',
|
|
\ ale#path#CdString(ale#path#Simplify(g:dir . '/mix_paths/wrapped_project'))
|
|
\ . g:env_prefix
|
|
\ . 'mix compile %s'
|
|
|
|
Execute(The FindMixProjectRoot should detect the project root directory via mix.exs):
|
|
silent execute 'file ' . fnameescape(g:dir . '/elixir_paths/mix_project/lib/app.ex')
|
|
|
|
AssertEqual
|
|
\ ale#path#Simplify(g:dir . '/elixir_paths/mix_project'),
|
|
\ ale#handlers#elixir#FindMixProjectRoot(bufnr(''))
|