summaryrefslogtreecommitdiff
path: root/test/command_callback/test_haskell_hls_callbacks.vader
diff options
context:
space:
mode:
authoryen3 <yen3rc@gmail.com>2020-11-30 09:05:33 +0100
committeryen3 <yen3rc@gmail.com>2021-01-31 11:43:45 +0100
commite5e851fadc41c55727f801ce8feacd2bd53e2aac (patch)
tree0905840199f9257b50bfee8dae7b363d0f79bd10 /test/command_callback/test_haskell_hls_callbacks.vader
parent2d07fa0cc2e5989f32e13dfee0cabfef9f765fdc (diff)
downloadale-e5e851fadc41c55727f801ce8feacd2bd53e2aac.zip
Add linter for haskell-language-server
The patch adds a new linter for haskell-language-server (hls). hls is the integration point of haskell-ide-engine (hie) and ghcide.
Diffstat (limited to 'test/command_callback/test_haskell_hls_callbacks.vader')
-rw-r--r--test/command_callback/test_haskell_hls_callbacks.vader27
1 files changed, 27 insertions, 0 deletions
diff --git a/test/command_callback/test_haskell_hls_callbacks.vader b/test/command_callback/test_haskell_hls_callbacks.vader
new file mode 100644
index 00000000..e64aab6f
--- /dev/null
+++ b/test/command_callback/test_haskell_hls_callbacks.vader
@@ -0,0 +1,27 @@
+Before:
+ call ale#assert#SetUpLinterTest('haskell', 'hls')
+
+ Save &filetype
+ let &filetype = 'haskell'
+
+After:
+ call ale#assert#TearDownLinterTest()
+
+Execute(The language string should be correct):
+ AssertLSPLanguage 'haskell'
+
+Execute(The default executable should be correct):
+ AssertLinter 'haskell-language-server-wrapper',
+ \ ale#Escape('haskell-language-server-wrapper') . ' --lsp'
+
+Execute(The project root should be detected correctly):
+ AssertLSPProject g:dir
+
+ call ale#test#SetFilename('hls_paths/file.hs')
+
+ AssertLSPProject ale#path#Simplify(g:dir . '/hls_paths')
+
+Execute(The executable should be configurable):
+ let g:ale_haskell_hls_executable = 'foobar'
+
+ AssertLinter 'foobar', ale#Escape('foobar') . ' --lsp'