diff options
author | w0rp <devw0rp@gmail.com> | 2017-07-07 23:47:41 +0100 |
---|---|---|
committer | w0rp <devw0rp@gmail.com> | 2017-07-07 23:47:41 +0100 |
commit | 8eb4f95766350b7a1f80eae691f390faee045e6d (patch) | |
tree | 8d3973d0226c83d129fa8c2292befb5adf601759 /test/test_errors_removed_after_filetype_changed.vader | |
parent | 46225f3bb13a242bf3b218d395f3911f013d5f14 (diff) | |
download | ale-8eb4f95766350b7a1f80eae691f390faee045e6d.zip |
#697 - Clear all highlights every time items are set again, and refactor most things. Clear errors when linters are removed
Diffstat (limited to 'test/test_errors_removed_after_filetype_changed.vader')
-rw-r--r-- | test/test_errors_removed_after_filetype_changed.vader | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/test/test_errors_removed_after_filetype_changed.vader b/test/test_errors_removed_after_filetype_changed.vader new file mode 100644 index 00000000..0498a501 --- /dev/null +++ b/test/test_errors_removed_after_filetype_changed.vader @@ -0,0 +1,58 @@ +Before: + Save g:ale_run_synchronously + + let b:old_filetype = &filetype + let g:ale_run_synchronously = 1 + + noautocmd let &filetype = 'foobar' + + function! TestCallback(buffer, output) + return [{'text': 'x', 'lnum': 1}] + endfunction + + call ale#linter#Define('foobar', { + \ 'name': 'buffer_linter', + \ 'callback': 'TestCallback', + \ 'executable': 'true', + \ 'command': 'true', + \ 'read_buffer': 0, + \}) + + call ale#linter#Define('foobar2', { + \ 'name': 'buffer_linter', + \ 'callback': 'TestCallback', + \ 'executable': 'true', + \ 'command': 'true', + \ 'read_buffer': 0, + \}) + +After: + Restore + + noautocmd let &filetype = b:old_filetype + unlet b:old_filetype + delfunction TestCallback + + if has_key(g:ale_buffer_info, bufnr('')) + call remove(g:ale_buffer_info, bufnr('')) + endif + + call ale#Queue(0) + +Execute(Error should be removed when the filetype changes to something else we cannot check): + call ale#Queue(0) + + AssertEqual 1, len(getloclist(0)) + + noautocmd let &filetype = 'foobar2' + + call ale#Queue(0) + + " We should get some items from the second filetype. + AssertEqual 1, len(getloclist(0)) + + noautocmd let &filetype = 'xxx' + + call ale#Queue(0) + + AssertEqual 0, len(getloclist(0)) |