diff options
author | Antoine Gagné <AntoineGagne@users.noreply.github.com> | 2019-05-19 16:16:17 -0400 |
---|---|---|
committer | w0rp <w0rp@users.noreply.github.com> | 2019-05-19 21:16:17 +0100 |
commit | 3b7c86e401eb488acd8713f7c9ee81344095080d (patch) | |
tree | 2eb2260f62c3529c2fb51998a4581fc9397878f6 /test | |
parent | 652d991077ac3261e51abfa51d979774a555b405 (diff) | |
download | ale-3b7c86e401eb488acd8713f7c9ee81344095080d.zip |
Add support for Erlang dialyzer (#2509)
* Add support for Erlang dialyzer
* Add an option to specify rebar3 profile
In doing so, the use of the `**` wildcard becomes unnecessary.
Diffstat (limited to 'test')
-rw-r--r-- | test/command_callback/test_erlang_dialyzer_command_callback.vader | 37 | ||||
-rw-r--r-- | test/handler/test_erlang_dialyzer_handler.vader | 27 |
2 files changed, 64 insertions, 0 deletions
diff --git a/test/command_callback/test_erlang_dialyzer_command_callback.vader b/test/command_callback/test_erlang_dialyzer_command_callback.vader new file mode 100644 index 00000000..5e21c053 --- /dev/null +++ b/test/command_callback/test_erlang_dialyzer_command_callback.vader @@ -0,0 +1,37 @@ +Before: + call ale#assert#SetUpLinterTest('erlang', 'dialyzer') + +After: + call ale#assert#TearDownLinterTest() + +Execute(The default command should be correct.): + AssertLinter 'dialyzer', + \ ale#Escape('dialyzer') + \ . ' -n --plt ' . ale#Escape(expand('$HOME/.dialyzer_plt')) + \ . ' -Wunmatched_returns' + \ . ' -Werror_handling' + \ . ' -Wrace_conditions' + \ . ' -Wunderspecs' + \ . ' %s' + +Execute(The command should accept configured executable.): + let b:ale_erlang_dialyzer_executable = '/usr/bin/dialyzer' + AssertLinter '/usr/bin/dialyzer', + \ ale#Escape('/usr/bin/dialyzer') + \ . ' -n --plt ' . ale#Escape(expand('$HOME/.dialyzer_plt')) + \ . ' -Wunmatched_returns' + \ . ' -Werror_handling' + \ . ' -Wrace_conditions' + \ . ' -Wunderspecs' + \ . ' %s' + +Execute(The command should accept configured PLT file.): + let b:ale_erlang_dialyzer_plt_file = 'custom-plt' + AssertLinter 'dialyzer', + \ ale#Escape('dialyzer') + \ . ' -n --plt ' . ale#Escape(expand('custom-plt')) + \ . ' -Wunmatched_returns' + \ . ' -Werror_handling' + \ . ' -Wrace_conditions' + \ . ' -Wunderspecs' + \ . ' %s' diff --git a/test/handler/test_erlang_dialyzer_handler.vader b/test/handler/test_erlang_dialyzer_handler.vader new file mode 100644 index 00000000..afd5c597 --- /dev/null +++ b/test/handler/test_erlang_dialyzer_handler.vader @@ -0,0 +1,27 @@ +Before: + runtime ale_linters/erlang/dialyzer.vim + +After: + call ale#linter#Reset() + +Execute(The dialyzer handler should handle error messages.): + AssertEqual + \[ + \ { + \ 'lnum': 3, + \ 'lcol': 0, + \ 'text': 'Callback info about the provider behaviour is not available', + \ 'type': 'W' + \ } + \], + \ ale_linters#erlang#dialyzer#Handle(bufnr(''), ['erl_tidy_prv_fmt.erl:3: Callback info about the provider behaviour is not available']) + +Execute(The dialyzer handler should handle empty file.): + AssertEqual + \[], + \ ale_linters#erlang#dialyzer#Handle(bufnr(''), []) + +Execute(The dialyzer handler should handle empty lines.): + AssertEqual + \[], + \ ale_linters#erlang#dialyzer#Handle(bufnr(''), ['']) |