Fix counting of warnings and style warnings

This commit is contained in:
w0rp 2017-05-21 18:58:26 +01:00
parent d511b02ebe
commit 57ad32f986
2 changed files with 27 additions and 13 deletions

View File

@ -28,9 +28,9 @@ function! ale#statusline#Update(buffer, loclist) abort
for l:entry in a:loclist
if l:entry.type ==# 'W'
if get(l:entry, 'sub_type', '') ==# 'style'
let l:count.warning += 1
else
let l:count.style_warning += 1
else
let l:count.warning += 1
endif
elseif l:entry.type ==# 'I'
let l:count.info += 1

View File

@ -46,20 +46,34 @@ Execute (Count should be match the loclist):
let g:ale_buffer_info = {
\ bufnr('%'): {
\ 'loclist': [
\ {
\ 'lnum': 1,
\ 'bufnr': 1,
\ 'vcol': 0,
\ 'linter_name': 'testlinter',
\ 'nr': -1,
\ 'type': 'E',
\ 'col': 1,
\ 'text': 'Test Error',
\ },
\ {'type': 'E'},
\ {'type': 'E', 'sub_type': 'style'},
\ {'type': 'E', 'sub_type': 'style'},
\ {'type': 'W'},
\ {'type': 'W'},
\ {'type': 'W'},
\ {'type': 'W', 'sub_type': 'style'},
\ {'type': 'W', 'sub_type': 'style'},
\ {'type': 'W', 'sub_type': 'style'},
\ {'type': 'W', 'sub_type': 'style'},
\ {'type': 'I'},
\ {'type': 'I'},
\ {'type': 'I'},
\ {'type': 'I'},
\ {'type': 'I'},
\ ],
\ },
\}
AssertEqual Counts({'error': 1}), ale#statusline#Count(bufnr('%'))
AssertEqual {
\ 'error': 1,
\ 'style_error': 2,
\ 'warning': 3,
\ 'style_warning': 4,
\ 'info': 5,
\ '0': 3,
\ '1': 12,
\ 'total': 15,
\}, ale#statusline#Count(bufnr('%'))
Execute (Output should be empty for non-existant buffer):
AssertEqual Counts({}), ale#statusline#Count(9001)