summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/command_callback/test_c_clangd_command_callbacks.vader12
-rw-r--r--test/fixers/test_html_beautify_fixer_callback.vader2
-rw-r--r--test/fixers/test_styler_fixer_callback.vader2
-rw-r--r--test/handler/test_crystal_handler.vader10
-rw-r--r--test/handler/test_nim_handler.vader35
5 files changed, 51 insertions, 10 deletions
diff --git a/test/command_callback/test_c_clangd_command_callbacks.vader b/test/command_callback/test_c_clangd_command_callbacks.vader
index 555122f6..753dc9a8 100644
--- a/test/command_callback/test_c_clangd_command_callbacks.vader
+++ b/test/command_callback/test_c_clangd_command_callbacks.vader
@@ -9,18 +9,14 @@ Before:
Save b:ale_c_build_dir_names
Save b:ale_c_parse_compile_commands
- let b:command_tail = ' -x c'
-
After:
- unlet! b:command_tail
-
call ale#assert#TearDownLinterTest()
Execute(The language string should be correct):
AssertLSPLanguage 'c'
Execute(The default executable should be correct):
- AssertLinter 'clangd', ale#Escape('clangd') . b:command_tail
+ AssertLinter 'clangd', ale#Escape('clangd')
Execute(The project root should be detected correctly):
call ale#test#SetFilename(tempname() . '/dummy.c')
@@ -34,12 +30,12 @@ Execute(The project root should be detected correctly):
Execute(The executable should be configurable):
let g:ale_c_clangd_executable = 'foobar'
- AssertLinter 'foobar', ale#Escape('foobar') . b:command_tail
+ AssertLinter 'foobar', ale#Escape('foobar')
Execute(The options should be configurable):
let b:ale_c_clangd_options = '-compile-commands-dir=foo'
- AssertLinter 'clangd', ale#Escape('clangd') . b:command_tail . ' ' . b:ale_c_clangd_options
+ AssertLinter 'clangd', ale#Escape('clangd') . ' ' . b:ale_c_clangd_options
Execute(The compile command database should be detected correctly):
call ale#test#SetFilename('clangd_paths/with_build_dir/dummy_src/dummy.c')
@@ -49,7 +45,7 @@ Execute(The compile command database should be detected correctly):
let b:ale_c_build_dir_names = ['unusual_build_dir_name']
let b:ale_c_parse_compile_commands = 1
- AssertLinter 'clangd', ale#Escape('clangd') . b:command_tail
+ AssertLinter 'clangd', ale#Escape('clangd')
\ . ' -compile-commands-dir='
\ . ale#Escape(ale#path#Simplify(g:dir . '/clangd_paths/with_build_dir/unusual_build_dir_name'))
diff --git a/test/fixers/test_html_beautify_fixer_callback.vader b/test/fixers/test_html_beautify_fixer_callback.vader
index 05e10a36..372572e4 100644
--- a/test/fixers/test_html_beautify_fixer_callback.vader
+++ b/test/fixers/test_html_beautify_fixer_callback.vader
@@ -12,5 +12,5 @@ After:
Execute(The html-beautify callback should return the correct default command):
AssertEqual
- \ {'command': '''html-beautify'' -'},
+ \ {'command': ale#Escape('html-beautify') . ' -'},
\ ale#fixers#html_beautify#Fix(bufnr(''))
diff --git a/test/fixers/test_styler_fixer_callback.vader b/test/fixers/test_styler_fixer_callback.vader
index 85e45c1d..79f71ba9 100644
--- a/test/fixers/test_styler_fixer_callback.vader
+++ b/test/fixers/test_styler_fixer_callback.vader
@@ -13,7 +13,7 @@ Execute(The styler callback should include custom styler options):
\ {
\ 'command': 'Rscript --vanilla -e '
\ . '"suppressPackageStartupMessages(library(styler));'
- \ . 'style_file(commandArgs(TRUE), style = '
+ \ . 'style_file(commandArgs(TRUE), transformers = '
\ . 'a_custom_option)"'
\ . ' %t',
\ 'read_temporary_file': 1,
diff --git a/test/handler/test_crystal_handler.vader b/test/handler/test_crystal_handler.vader
index a7b7f3ab..209632e9 100644
--- a/test/handler/test_crystal_handler.vader
+++ b/test/handler/test_crystal_handler.vader
@@ -16,3 +16,13 @@ Execute(The crystal handler should parse lines correctly and add the column if i
\ ale_linters#crystal#crystal#Handle(255, [
\ '[{"file":"/tmp/test.cr","line":2,"column":1,"size":null,"message":"unexpected token: EOF"}]'
\ ])
+
+Execute(The crystal handler should not fail when a missing file is required):
+ AssertEqual
+ \ [ { 'lnum':1, 'col': 1, 'text': 'while requiring "./nonexistent.cr"' } ],
+ \ ale_linters#crystal#crystal#Handle(255,
+ \ json_encode([
+ \ { "file":"/tmp/file.cr","line":1,"column":1,"size":0,"message":"while requiring \"./nonexistent.cr\"" },
+ \ { "message": "can't find file './nonexistent.cr' relative to '/tmp'" },
+ \ ])
+ \ )
diff --git a/test/handler/test_nim_handler.vader b/test/handler/test_nim_handler.vader
index e484000e..b6784d84 100644
--- a/test/handler/test_nim_handler.vader
+++ b/test/handler/test_nim_handler.vader
@@ -21,6 +21,7 @@ Execute(Parsing nim errors should work):
\ 'col': 2,
\ 'text': 'identifier expected, but found ''a.barfoo''',
\ 'type': 'E',
+ \ 'end_col': 9,
\ },
\ {
\ 'lnum': 2,
@@ -28,6 +29,7 @@ Execute(Parsing nim errors should work):
\ 'text': '''NotUsed'' is declared but not used',
\ 'code': 'XDeclaredButNotUsed',
\ 'type': 'W',
+ \ 'end_col': 11,
\ },
\ {
\ 'lnum': 12,
@@ -35,6 +37,35 @@ Execute(Parsing nim errors should work):
\ 'text': 'with : character',
\ 'type': 'E',
\ },
+ \ {
+ \ 'lnum': 1,
+ \ 'col': 8,
+ \ 'text': 'imported and not used: ''strutils''',
+ \ 'code': 'UnusedImport',
+ \ 'type': 'W',
+ \ 'end_col': 15,
+ \ },
+ \ {
+ \ 'lnum': 12,
+ \ 'col': 9,
+ \ 'text': 'undeclared identifier: ''total''',
+ \ 'type': 'E',
+ \ 'end_col': 13,
+ \ },
+ \ {
+ \ 'lnum': 14,
+ \ 'col': 1,
+ \ 'text': '''sum'' cannot be assigned to',
+ \ 'type': 'E',
+ \ 'end_col': 3,
+ \ },
+ \ {
+ \ 'lnum': 15,
+ \ 'col': 1,
+ \ 'text': 'redefinition of ''getName''; previous declaration here: /nested/folder/foobar.nim(14, 6)',
+ \ 'type': 'E',
+ \ 'end_col': 7,
+ \ },
\ ],
\ ale_linters#nim#nimcheck#Handle(bufnr(''), [
\ 'Line with wrong( format)',
@@ -42,4 +73,8 @@ Execute(Parsing nim errors should work):
\ 'foobar.nim(12, 2) Error: identifier expected, but found ''a.barfoo''',
\ '/nested/folder/foobar.nim(2, 5) Hint: ''NotUsed'' is declared but not used [XDeclaredButNotUsed]',
\ 'foobar.nim(12, 2) Error: with : character',
+ \ 'foobar.nim(1, 8) Warning: imported and not used: ''strutils'' [UnusedImport]',
+ \ 'foobar.nim(12, 9) Error: undeclared identifier: ''total''',
+ \ 'foobar.nim(14, 1) Error: ''sum'' cannot be assigned to',
+ \ 'foobar.nim(15, 1) Error: redefinition of ''getName''; previous declaration here: /nested/folder/foobar.nim(14, 6)',
\ ])