ale/test/test_filetype_linter_defaul...

138 lines
4.0 KiB
Plaintext

Before:
Save g:ale_linters
Save g:ale_linters_explicit
let g:ale_linters_explicit = 0
let g:ale_linters = {}
function! GetLinterNames(filetype) abort
return sort(map(ale#linter#Get(a:filetype), 'v:val.name'))
endfunction
After:
Restore
call ale#linter#Reset()
Execute(The defaults for the apkbuild filetype should be correct):
AssertEqual ['apkbuild_lint', 'secfixes_check'], GetLinterNames('apkbuild')
let g:ale_linters_explicit = 1
AssertEqual [], GetLinterNames('apkbuild')
Execute(The defaults for the csh filetype should be correct):
AssertEqual ['shell'], GetLinterNames('csh')
let g:ale_linters_explicit = 1
AssertEqual [], GetLinterNames('csh')
Execute(The defaults for the elixir filetype should be correct):
AssertEqual ['credo', 'dialyxir', 'dogma'], GetLinterNames('elixir')
let g:ale_linters_explicit = 1
AssertEqual [], GetLinterNames('elixir')
Execute(The defaults for the go filetype should be correct):
AssertEqual ['gofmt', 'golint', 'gopls', 'govet'], GetLinterNames('go')
let g:ale_linters_explicit = 1
AssertEqual [], GetLinterNames('go')
Execute(The defaults for the hack filetype should be correct):
AssertEqual ['hack'], GetLinterNames('hack')
let g:ale_linters_explicit = 1
AssertEqual [], GetLinterNames('hack')
Execute(The defaults for the help filetype should be correct):
AssertEqual [], GetLinterNames('help')
Execute(The defaults for the inko filetype should be correct):
AssertEqual ['inko'], GetLinterNames('inko')
let g:ale_linters_explicit = 1
AssertEqual [], GetLinterNames('inko')
Execute(The defaults for the json filetype should be correct):
AssertEqual ['jsonlint', 'spectral', 'vscodejson'], GetLinterNames('json')
let g:ale_linters_explicit = 1
AssertEqual [], GetLinterNames('json')
Execute(The defaults for the json5 filetype should be correct):
AssertEqual [], GetLinterNames('json5')
Execute(The defaults for the jsonc filetype should be correct):
AssertEqual [], GetLinterNames('jsonc')
Execute(The defaults for the perl filetype should be correct):
AssertEqual ['perlcritic'], GetLinterNames('perl')
let g:ale_linters_explicit = 1
AssertEqual [], GetLinterNames('perl')
Execute(The defaults for the perl6 filetype should be correct):
AssertEqual [], GetLinterNames('perl6')
Execute(The defaults for the python filetype should be correct):
AssertEqual ['flake8', 'mypy', 'pylint', 'pyright'], GetLinterNames('python')
let g:ale_linters_explicit = 1
AssertEqual [], GetLinterNames('python')
Execute(The defaults for the rust filetype should be correct):
AssertEqual ['cargo', 'rls'], GetLinterNames('rust')
let g:ale_linters_explicit = 1
AssertEqual [], GetLinterNames('rust')
Execute(The defaults for the spec filetype should be correct):
AssertEqual [], GetLinterNames('spec')
Execute(The defaults for the text filetype should be correct):
AssertEqual [], GetLinterNames('text')
Execute(The defaults for the vue filetype should be correct):
AssertEqual ['eslint', 'vls'], GetLinterNames('vue')
let g:ale_linters_explicit = 1
AssertEqual [], GetLinterNames('vue')
Execute(The defaults for the zsh filetype should be correct):
AssertEqual ['shell'], GetLinterNames('zsh')
let g:ale_linters_explicit = 1
AssertEqual [], GetLinterNames('zsh')
Execute(The defaults for the verilog filetype should be correct):
" This filetype isn't configured with default, so we can test loading all
" available linters with this.
AssertEqual ['hdl-checker', 'iverilog', 'verilator', 'vlog', 'xvlog', 'yosys'], GetLinterNames('verilog')
let g:ale_linters_explicit = 1
AssertEqual [], GetLinterNames('verilog')
Execute(The defaults for the vader filetype should be correct):
AssertEqual ['vimls'], GetLinterNames('vader')
let g:ale_linters_explicit = 1
AssertEqual [], GetLinterNames('vader')
Execute(Default aliases for React should be defined):
AssertEqual ['javascript', 'jsx'], ale#linter#ResolveFiletype('javascriptreact')
AssertEqual ['typescript', 'tsx'], ale#linter#ResolveFiletype('typescriptreact')