Massively reduce the amount of code needed for linter tests

This commit is contained in:
w0rp
2018-07-15 18:24:53 +01:00
parent 5155a35a80
commit a42999a639
138 changed files with 1447 additions and 3017 deletions

View File

@@ -1,34 +1,19 @@
Before:
Save g:ale_fuse_fusionlint_options
Save g:ale_fuse_fusionlint_executable
unlet! g:ale_fuse_fusionlint_options
unlet! g:ale_fuse_fusionlint_executable
runtime ale_linters/fuse/fusionlint.vim
call ale#assert#SetUpLinterTest('fuse', 'fusionlint')
After:
Restore
call ale#linter#Reset()
call ale#assert#TearDownLinterTest()
Execute(The fuse fusionlint command callback should return the correct default string):
AssertEqual ale#Escape('fusion-lint') . ' --filename %s -i',
\ join(split(ale_linters#fuse#fusionlint#GetCommand(1)))
AssertLinter 'fusion-lint', ale#Escape('fusion-lint') . ' --filename %s -i'
Execute(The fuse fusionlint command callback should let you set options):
let g:ale_fuse_fusionlint_options = '--example-option argument'
AssertEqual
\ ale#Escape('fusion-lint')
\ . ' --example-option argument --filename %s -i',
\ join(split(ale_linters#fuse#fusionlint#GetCommand(1)))
AssertLinter 'fusion-lint',
\ ale#Escape('fusion-lint') . ' --example-option argument --filename %s -i'
Execute(The fusionlint executable should be configurable):
let g:ale_fuse_fusionlint_executable = 'util/linter.fuse'
let g:ale_fuse_fusionlint_executable = 'foobar'
AssertEqual 'util/linter.fuse', ale_linters#fuse#fusionlint#GetExecutable(1)
AssertEqual
\ ale#Escape('util/linter.fuse')
\ . ' --filename %s -i',
\ join(split(ale_linters#fuse#fusionlint#GetCommand(1)))
AssertLinter 'foobar', ale#Escape('foobar') . ' --filename %s -i'