diff options
Diffstat (limited to 'test')
8 files changed, 45 insertions, 7 deletions
diff --git a/test/command_callback/elixir_paths/umbrella_project/apps/app1/lib/app.ex b/test/command_callback/elixir_paths/umbrella_project/apps/app1/lib/app.ex new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/test/command_callback/elixir_paths/umbrella_project/apps/app1/lib/app.ex diff --git a/test/command_callback/elixir_paths/umbrella_project/apps/app1/mix.exs b/test/command_callback/elixir_paths/umbrella_project/apps/app1/mix.exs new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/test/command_callback/elixir_paths/umbrella_project/apps/app1/mix.exs diff --git a/test/command_callback/elixir_paths/umbrella_project/apps/app2/lib/app.ex b/test/command_callback/elixir_paths/umbrella_project/apps/app2/lib/app.ex new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/test/command_callback/elixir_paths/umbrella_project/apps/app2/lib/app.ex diff --git a/test/command_callback/elixir_paths/umbrella_project/apps/app2/mix.exs b/test/command_callback/elixir_paths/umbrella_project/apps/app2/mix.exs new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/test/command_callback/elixir_paths/umbrella_project/apps/app2/mix.exs diff --git a/test/command_callback/elixir_paths/umbrella_project/mix.exs b/test/command_callback/elixir_paths/umbrella_project/mix.exs new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/test/command_callback/elixir_paths/umbrella_project/mix.exs diff --git a/test/command_callback/test_elixir_ls_command_callbacks.vader b/test/command_callback/test_elixir_ls_command_callbacks.vader index 5a8d8496..ca785054 100644 --- a/test/command_callback/test_elixir_ls_command_callbacks.vader +++ b/test/command_callback/test_elixir_ls_command_callbacks.vader @@ -22,12 +22,12 @@ Execute(should configure elixir-ls release location): AssertLinter 'boo/language_server.sh', 'boo/language_server.sh' Execute(should set correct LSP values): - call ale#test#SetFilename('mix_paths/wrapped_project/lib/app.ex') + call ale#test#SetFilename('elixir_paths/umbrella_project/apps/app1/lib/app.ex') AssertLSPLanguage 'elixir' AssertLSPOptions {} AssertLSPConfig {} - AssertLSPProject ale#path#Simplify(g:dir . '/mix_paths/wrapped_project') + AssertLSPProject ale#path#Simplify(g:dir . '/elixir_paths/umbrella_project') Execute(should accept configuration settings): AssertLSPConfig {} diff --git a/test/command_callback/test_elixir_mix_command_callbacks.vader b/test/command_callback/test_elixir_mix_command_callbacks.vader index 9315a850..ec7b9911 100644 --- a/test/command_callback/test_elixir_mix_command_callbacks.vader +++ b/test/command_callback/test_elixir_mix_command_callbacks.vader @@ -18,9 +18,16 @@ Execute(The default mix command should be correct): \ . 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') +Execute(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'), + AssertEqual + \ ale#path#Simplify(g:dir . '/elixir_paths/mix_project'), \ ale#handlers#elixir#FindMixProjectRoot(bufnr('')) + +Execute(FindMixUmbrellaRoot should detect the umbrella root directory via mix.exs): + silent execute 'file ' . fnameescape(g:dir . '/elixir_paths/umbrella_project/apps/app1/lib/app.ex') + + AssertEqual + \ ale#path#Simplify(g:dir . '/elixir_paths/umbrella_project'), + \ ale#handlers#elixir#FindMixUmbrellaRoot(bufnr('')) diff --git a/test/fix/test_ale_fix.vader b/test/fix/test_ale_fix.vader index 539972a4..90407681 100644 --- a/test/fix/test_ale_fix.vader +++ b/test/fix/test_ale_fix.vader @@ -180,6 +180,7 @@ After: unlet! g:ale_emulate_job_failure unlet! b:ale_fixers unlet! b:ale_fix_on_save + unlet! b:ale_quitting delfunction AddCarets delfunction AddDollars delfunction DoNothing @@ -431,7 +432,7 @@ Given testft (A file with three lines): b c -Execute(ALEFix should save files on the save event): +Execute(ALEFix should fix files on the save event): let g:ale_fix_on_save = 1 let g:ale_lint_on_save = 1 let g:ale_enabled = 1 @@ -471,6 +472,36 @@ Expect(The buffer should be modified): $b $c +Execute(ALEFix should not fix files on :wq): + let g:ale_fix_on_save = 1 + let g:ale_lint_on_save = 1 + let g:ale_enabled = 1 + + noautocmd silent file fix_test_file + call writefile(getline(1, '$'), 'fix_test_file') + + let g:ale_fixers.testft = ['AddDollars'] + + " We have to set the buftype to empty so the file will be written. + setlocal buftype= + + call ale#events#QuitEvent(bufnr('')) + + call SetUpLinters() + call ale#events#SaveEvent(bufnr('')) + + " We should save the file. + AssertEqual ['a', 'b', 'c'], readfile('fix_test_file') + Assert &modified, 'The was not marked as ''modified''' + + " We should not run the linter. + AssertEqual [], ale#test#GetLoclistWithoutModule() + +Expect(The buffer should not be modified): + a + b + c + Given testft (A file with three lines): a b |