diff options
Diffstat (limited to 'test/test_linting_sets_signs.vader')
-rw-r--r-- | test/test_linting_sets_signs.vader | 39 |
1 files changed, 39 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..e96e490b --- /dev/null +++ b/test/test_linting_sets_signs.vader @@ -0,0 +1,39 @@ +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_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 |