diff options
author | w0rp <devw0rp@gmail.com> | 2017-05-26 16:20:17 +0100 |
---|---|---|
committer | w0rp <devw0rp@gmail.com> | 2017-05-26 16:20:17 +0100 |
commit | 9460e58c3b254d6716d607799fa9333f3d20d40f (patch) | |
tree | 035570b598fac583f5f14782a1f6ad191349ab83 /test/test_disabling_ale.vader | |
parent | c77cf0e518e18b2e6f1f259c0f92e717d28c8998 (diff) | |
download | ale-9460e58c3b254d6716d607799fa9333f3d20d40f.zip |
Fix #371 Allow ALE to be disabled in different buffers
Diffstat (limited to 'test/test_disabling_ale.vader')
-rw-r--r-- | test/test_disabling_ale.vader | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/test/test_disabling_ale.vader b/test/test_disabling_ale.vader new file mode 100644 index 00000000..b08c5b1d --- /dev/null +++ b/test/test_disabling_ale.vader @@ -0,0 +1,92 @@ +Before: + Save g:ale_buffer_info, g:ale_enabled, b:ale_enabled + + function! TestCallback(buffer, output) + return [] + endfunction + + call ale#linter#Define('foobar', { + \ 'name': 'testlinter', + \ 'callback': 'TestCallback', + \ 'executable': 'echo', + \ 'command': 'true', + \}) + + function GetLastMessage() + redir => l:output + silent mess + redir END + + let l:lines = split(l:output, "\n") + + return empty(l:lines) ? '' : l:lines[-1] + endfunction + + echomsg '' + +After: + Restore + call ale#linter#Reset() + delfunction TestCallback + delfunction GetLastMessage + +Given foobar (Some imaginary filetype): + foo + bar + baz + +Execute(Linting shouldn't happen when ALE is disabled globally): + let g:ale_enabled = 0 + let g:ale_buffer_info = {} + + call ale#Queue(0) + + AssertEqual {}, g:ale_buffer_info + +Execute(Linting shouldn't happen when ALE is disabled locally): + let b:ale_enabled = 0 + let g:ale_buffer_info = {} + + call ale#Queue(0) + + AssertEqual {}, g:ale_buffer_info + +Execute(Cursor warnings shouldn't be echoed when ALE is disabled globally): + let g:ale_enabled = 0 + let g:ale_buffer_info = { + \ bufnr('%'): { + \ 'loclist': [ + \ { + \ 'lnum': 2, + \ 'col': 10, + \ 'linter_name': 'testlinter', + \ 'type': 'W', + \ 'text': 'X' + \ }, + \ ], + \ }, + \} + + call cursor(2, 16) + call ale#cursor#EchoCursorWarning() + AssertEqual '', GetLastMessage() + +Execute(Cursor warnings shouldn't be echoed when ALE is disabled locally): + let b:ale_enabled = 0 + let g:ale_buffer_info = { + \ bufnr('%'): { + \ 'loclist': [ + \ { + \ 'lnum': 2, + \ 'col': 10, + \ 'linter_name': 'testlinter', + \ 'type': 'W', + \ 'text': 'X' + \ }, + \ ], + \ }, + \} + + call cursor(2, 16) + call ale#cursor#EchoCursorWarning() + AssertEqual '', GetLastMessage() |