Make it possible to inject flags of protoc invocation.

Typically proto files depend on and make use of proto definitions in
other files. When invoking protoc user can supply paths to inspect for
dependencies.

This patch makes it possible to configure flags passed to protoc. This
makes it e.g., possible to change include paths of the linter's protoc
invocation.
This commit is contained in:
Benjamin Bannier 2018-01-06 20:56:28 +01:00
parent eecbacb742
commit b5a5cdf920
3 changed files with 29 additions and 3 deletions

View file

@ -4,9 +4,18 @@ Before:
After:
Restore
unlet! b:ale_proto_protoc_gen_lint_options
call ale#linter#Reset()
Execute(The default command should be correct):
AssertEqual
\ 'protoc' . ' -I ' . ale#Escape(getcwd()) . ' --lint_out=. ' . '%s',
\ ale_linters#proto#protoc_gen_lint#GetCommand(bufnr(''))
Execute(The callback should include any additional options):
let b:ale_proto_protoc_gen_lint_options = '--some-option'
AssertEqual
\ 'protoc' . ' -I ' . ale#Escape(getcwd()) . ' --some-option --lint_out=. ' . '%s',
\ ale_linters#proto#protoc_gen_lint#GetCommand(bufnr(''))