summaryrefslogtreecommitdiff
path: root/test/test_linting_sets_signs.vader
diff options
context:
space:
mode:
Diffstat (limited to 'test/test_linting_sets_signs.vader')
-rw-r--r--test/test_linting_sets_signs.vader40
1 files changed, 40 insertions, 0 deletions
diff --git a/test/test_linting_sets_signs.vader b/test/test_linting_sets_signs.vader
new file mode 100644
index 00000000..1f323fe8
--- /dev/null
+++ b/test/test_linting_sets_signs.vader
@@ -0,0 +1,40 @@
+Given javascript (Some JavaScript with problems):
+ var y = 3+3;
+ var y = 3
+
+Before:
+ sign unplace *
+ let g:actual_sign_list = []
+ let g:expected_sign_list = [
+ \ ['1', 'ALEWarningSign'],
+ \ ['2', 'ALEErrorSign'],
+ \]
+
+ function! g:CollectSigns()
+ redir => l:output
+ silent exec 'sign place'
+ redir END
+
+ for l:line in split(l:output, "\n")
+ let l:match = matchlist(l:line, 'line=\(\d\+\).*name=\(ALE[a-zA-Z]\+\)')
+
+ if len(l:match) > 0
+ call add(g:actual_sign_list, [l:match[1], l:match[2]])
+ endif
+ endfor
+ endfunction
+
+After:
+ sign unplace *
+ let g:ale_buffer_loclist_map = {}
+ let g:ale_buffer_info = {}
+ delfunction g:CollectSigns
+ unlet g:actual_sign_list
+ unlet g:expected_sign_list
+
+Execute(The signs should be updated after linting is done):
+ call ale#Lint()
+ call ale#engine#WaitForJobs(2000)
+ call g:CollectSigns()
+
+ AssertEqual g:expected_sign_list, g:actual_sign_list