d38b92c957
Add handling for `Syntax error at end of input` which doesn't give a line or column. Fixes #2656
77 lines
2.5 KiB
Text
77 lines
2.5 KiB
Text
Before:
|
|
runtime ale_linters/puppet/puppet.vim
|
|
|
|
After:
|
|
call ale#linter#Reset()
|
|
|
|
Execute(The puppet handler should parse lines correctly when no column is supplied):
|
|
" Line Error
|
|
AssertEqual
|
|
\ [
|
|
\ {
|
|
\ 'lnum': 5,
|
|
\ 'col': 0,
|
|
\ 'text': "Syntax error at '='; expected '}'"
|
|
\ },
|
|
\ {
|
|
\ 'lnum': 3,
|
|
\ 'col': 0,
|
|
\ 'text': "Syntax error at '='; expected '}'"
|
|
\ },
|
|
\ ],
|
|
\ ale_linters#puppet#puppet#Handle(255, [
|
|
\ "Error: Could not parse for environment production: Syntax error at '='; expected '}' at /root/puppetcode/modules/pancakes/manifests/init.pp:5",
|
|
\ "Error: Could not parse for environment production: Syntax error at '='; expected '}' at C:/puppet/modules/pancakes/manifests/init.pp:3",
|
|
\ ])
|
|
|
|
Execute(The puppet handler should parse lines and column correctly):
|
|
" Line Error
|
|
AssertEqual
|
|
\ [
|
|
\ {
|
|
\ 'lnum': 43,
|
|
\ 'col': 12,
|
|
\ 'text': "Syntax error at ':'"
|
|
\ },
|
|
\ {
|
|
\ 'lnum': 54,
|
|
\ 'col': 9,
|
|
\ 'text': "Syntax error at ':'"
|
|
\ },
|
|
\ {
|
|
\ 'lnum': 45,
|
|
\ 'col': 12,
|
|
\ 'text': "Syntax error at 'parameter1'"
|
|
\ },
|
|
\ ],
|
|
\ ale_linters#puppet#puppet#Handle(255, [
|
|
\ "Error: Could not parse for environment production: Syntax error at ':' at /root/puppetcode/modules/nginx/manifests/init.pp:43:12",
|
|
\ "Error: Could not parse for environment production: Syntax error at ':' at C:/puppet/modules/nginx/manifests/init.pp:54:9",
|
|
\ "Error: Could not parse for environment production: Syntax error at 'parameter1' (file: /tmp/modules/mariadb/manifests/slave.pp, line: 45, column: 12)",
|
|
\ ])
|
|
|
|
Execute(The puppet handler should correctly parse errors that are reported before even trying to parse for an environment):
|
|
" Line Error
|
|
AssertEqual
|
|
\ [
|
|
\ {
|
|
\ 'lnum': 5,
|
|
\ 'col': 11,
|
|
\ 'text': "Illegal attempt to assign to 'a Name'. Not an assignable reference"
|
|
\ },
|
|
\ ],
|
|
\ ale_linters#puppet#puppet#Handle(255, [
|
|
\ "Error: Illegal attempt to assign to 'a Name'. Not an assignable reference (file: /tmp/modules/waffles/manifests/syrup.pp, line: 5, column: 11)",
|
|
\ ])
|
|
Execute(The puppet handler should parse lines when end of input is the location):
|
|
AssertEqual
|
|
\ [
|
|
\ {
|
|
\ 'lnum': 0,
|
|
\ 'col': 0,
|
|
\ 'text': "Syntax error at end of input"
|
|
\ },
|
|
\ ],
|
|
\ ale_linters#puppet#puppet#Handle(255, [
|
|
\ "Error: Could not parse for environment production: Syntax error at end of input (file: /tmp//modules/test/manifests/init.pp)",
|
|
\ ])
|