All patches and comments are welcome. Please squash your changes to logical
commits before using git-format-patch and git-send-email to
patches@git.madduck.net.
If you'd read over the Git project's submission guidelines and adhered to them,
I'd be especially grateful.
3 let g:linter_name = 'some_linter'
4 let g:format = '%severity%:%linter%: %s'
5 " Get the default value to restore it
6 let g:default_severity = g:ale_lsp_show_message_severity
7 let g:ale_lsp_show_message_severity = 'information'
9 function! ale#util#ShowMessage(expr) abort
10 call add(g:expr_list, a:expr)
17 let g:ale_lsp_show_message_severity = g:default_severity
18 unlet! g:default_severity
20 Execute(ale#lsp_window#HandleShowMessage() should only show errors when severity is set to "error"):
21 let g:ale_lsp_show_message_severity = 'error'
22 " We should escape the quotes from this message.
23 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':1,'message':'an ''error'''})
24 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':2,'message':'a warning'})
25 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':3,'message':'an info'})
26 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':4,'message':'a log'})
27 AssertEqual ['Error:some_linter: an ''error'''], g:expr_list
29 Execute(ale#lsp_window#HandleShowMessage() should only show errors and warnings when severity is set to "warning"):
30 let g:ale_lsp_show_message_severity = 'warning'
31 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':1,'message':'an error'})
32 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':2,'message':'a warning'})
33 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':3,'message':'an info'})
34 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':4,'message':'a log'})
35 AssertEqual ['Error:some_linter: an error', 'Warning:some_linter: a warning'], g:expr_list
37 Execute(ale#lsp_window#HandleShowMessage() should only show errors, warnings and infos when severity is set to "information"):
38 let g:ale_lsp_show_message_severity = 'information'
39 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':1,'message':'an error'})
40 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':2,'message':'a warning'})
41 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':3,'message':'an info'})
42 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':4,'message':'a log'})
44 \ 'Error:some_linter: an error',
45 \ 'Warning:some_linter: a warning',
46 \ 'Info:some_linter: an info'],
49 Execute(ale#lsp_window#HandleShowMessage() should only show errors, warnings and infos when severity is set to "info"):
50 let g:ale_lsp_show_message_severity = 'info'
51 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':1,'message':'an error'})
52 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':2,'message':'a warning'})
53 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':3,'message':'an info'})
54 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':4,'message':'a log'})
56 \ 'Error:some_linter: an error',
57 \ 'Warning:some_linter: a warning',
58 \ 'Info:some_linter: an info'],
61 Execute(ale#lsp_window#HandleShowMessage() should show all messages is severity is set to "log"):
62 let g:ale_lsp_show_message_severity = 'log'
63 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':1,'message':'an error'})
64 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':2,'message':'a warning'})
65 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':3,'message':'an info'})
66 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':4,'message':'a log'})
68 \ 'Error:some_linter: an error',
69 \ 'Warning:some_linter: a warning',
70 \ 'Info:some_linter: an info',
71 \ 'Log:some_linter: a log'],
74 Execute(ale#lsp_window#HandleShowMessage() should not show anything if severity is configured as disabled):
75 let g:ale_lsp_show_message_severity = 'disabled'
76 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':1,'message':'an error'})
77 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':2,'message':'a warning'})
78 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':3,'message':'an info'})
79 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':4,'message':'a log'})
80 AssertEqual [], g:expr_list
82 Execute(ale#lsp_window#HandleShowMessage() should use "warning" when severity is set to an invalid value):
83 let g:ale_lsp_show_message_severity = 'foo'
84 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':1,'message':'an error'})
85 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':2,'message':'a warning'})
86 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':3,'message':'an info'})
87 call ale#lsp_window#HandleShowMessage(g:linter_name, g:format, {'type':4,'message':'a log'})
89 \ 'Error:some_linter: an error',
90 \ 'Warning:some_linter: a warning'],