mirror of https://github.com/dense-analysis/ale
Fix #1384 - Handle warnings and suggestions for tsserver
This commit is contained in:
parent
acbe527e15
commit
2c2c7ceb1d
|
@ -59,6 +59,14 @@ function! ale#lsp#response#ReadTSServerDiagnostics(response) abort
|
||||||
let l:loclist_item.nr = l:diagnostic.code
|
let l:loclist_item.nr = l:diagnostic.code
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
if get(l:diagnostic, 'category') is# 'warning'
|
||||||
|
let l:loclist_item.type = 'W'
|
||||||
|
endif
|
||||||
|
|
||||||
|
if get(l:diagnostic, 'category') is# 'suggestion'
|
||||||
|
let l:loclist_item.type = 'I'
|
||||||
|
endif
|
||||||
|
|
||||||
call add(l:loclist, l:loclist_item)
|
call add(l:loclist, l:loclist_item)
|
||||||
endfor
|
endfor
|
||||||
|
|
||||||
|
|
|
@ -121,7 +121,8 @@ Execute(ale#lsp#response#ReadDiagnostics() should handle multiple messages):
|
||||||
\ ]}})
|
\ ]}})
|
||||||
|
|
||||||
Execute(ale#lsp#response#ReadTSServerDiagnostics() should handle tsserver responses):
|
Execute(ale#lsp#response#ReadTSServerDiagnostics() should handle tsserver responses):
|
||||||
AssertEqual [
|
AssertEqual
|
||||||
|
\ [
|
||||||
\ {
|
\ {
|
||||||
\ 'type': 'E',
|
\ 'type': 'E',
|
||||||
\ 'nr': 2365,
|
\ 'nr': 2365,
|
||||||
|
@ -131,5 +132,35 @@ Execute(ale#lsp#response#ReadTSServerDiagnostics() should handle tsserver respon
|
||||||
\ 'end_lnum': 1,
|
\ 'end_lnum': 1,
|
||||||
\ 'end_col': 17,
|
\ 'end_col': 17,
|
||||||
\ },
|
\ },
|
||||||
\],
|
\ ],
|
||||||
\ ale#lsp#response#ReadTSServerDiagnostics({"seq":0,"type":"event","event":"semanticDiag","body":{"file":"/bar/foo.ts","diagnostics":[{"start":{"line":1,"offset":11},"end":{"line":1,"offset":17},"text":"Operator ''+'' cannot be applied to types ''3'' and ''{}''.","code":2365}]}})
|
\ ale#lsp#response#ReadTSServerDiagnostics({"seq":0,"type":"event","event":"semanticDiag","body":{"file":"/bar/foo.ts","diagnostics":[{"start":{"line":1,"offset":11},"end":{"line":1,"offset":17},"text":"Operator ''+'' cannot be applied to types ''3'' and ''{}''.","code":2365}]}})
|
||||||
|
|
||||||
|
Execute(ale#lsp#response#ReadTSServerDiagnostics() should handle warnings from tsserver):
|
||||||
|
AssertEqual
|
||||||
|
\ [
|
||||||
|
\ {
|
||||||
|
\ 'lnum': 27,
|
||||||
|
\ 'col': 3,
|
||||||
|
\ 'nr': 2515,
|
||||||
|
\ 'end_lnum': 27,
|
||||||
|
\ 'type': 'W',
|
||||||
|
\ 'end_col': 14,
|
||||||
|
\ 'text': 'Calls to ''console.log'' are not allowed. (no-console)',
|
||||||
|
\ }
|
||||||
|
\ ],
|
||||||
|
\ ale#lsp#response#ReadTSServerDiagnostics({"seq":0,"type":"event","event":"semanticDiag","body":{"file":"<removed>","diagnostics":[{"start":{"line":27,"offset":3},"end":{"line":27,"offset":14},"text":"Calls to 'console.log' are not allowed. (no-console)","code":2515,"category":"warning","source":"tslint"}]}})
|
||||||
|
|
||||||
|
Execute(ale#lsp#response#ReadTSServerDiagnostics() should handle suggestions from tsserver):
|
||||||
|
AssertEqual
|
||||||
|
\ [
|
||||||
|
\ {
|
||||||
|
\ 'lnum': 27,
|
||||||
|
\ 'col': 3,
|
||||||
|
\ 'nr': 2515,
|
||||||
|
\ 'end_lnum': 27,
|
||||||
|
\ 'type': 'I',
|
||||||
|
\ 'end_col': 14,
|
||||||
|
\ 'text': 'Some info',
|
||||||
|
\ }
|
||||||
|
\ ],
|
||||||
|
\ ale#lsp#response#ReadTSServerDiagnostics({"seq":0,"type":"event","event":"semanticDiag","body":{"file":"<removed>","diagnostics":[{"start":{"line":27,"offset":3},"end":{"line":27,"offset":14},"text":"Some info","code":2515,"category":"suggestion","source":"tslint"}]}})
|
||||||
|
|
Loading…
Reference in New Issue