summaryrefslogtreecommitdiff
path: root/test/test_filetype_linter_defaults.vader
blob: 563a093fc71f0588f16ad37fe053319293e44e5b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
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 map(ale#linter#Get(a:filetype), 'v:val.name')
  endfunction

After:
  Restore

  call ale#linter#Reset()

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 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 help filetype should be correct):
  AssertEqual [], GetLinterNames('help')

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 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(Default aliases for React should be defined):
  AssertEqual ['javascript', 'jsx'], ale#linter#ResolveFiletype('javascriptreact')
  AssertEqual ['typescript', 'tsx'], ale#linter#ResolveFiletype('typescriptreact')

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')