functional pony linter

This commit is contained in:
Kevin Tindall 2018-02-10 13:04:43 -06:00
parent a3329ef3fc
commit 716b46e10d
No known key found for this signature in database
GPG key ID: 311063395E17044C
7 changed files with 128 additions and 0 deletions

View file

@ -0,0 +1,23 @@
Before:
Save g:ale_pony_ponyc_options
unlet! g:ale_pony_ponyc_options
unlet! b:ale_pony_ponyc_options
runtime ale_linters/pony/ponyc.vim
After:
Restore
unlet! b:ale_pony_ponyc_options
call ale#linter#Reset()
Execute(The options should be used in the command):
AssertEqual
\ 'ponyc --pass paint',
\ ale_linters#pony#ponyc#GetCommand(bufnr(''))
let b:ale_pony_ponyc_options = 'foobar'
AssertEqual
\ 'ponyc foobar',
\ ale_linters#pony#ponyc#GetCommand(bufnr(''))

View file

@ -0,0 +1,21 @@
Execute(The pony handler should handle ponyc output):
call ale#test#SetFilename('foo.pony')
AssertEqual
\ [
\ {
\ 'filename': '/home/projects/Wombat.pony',
\ 'lnum': 22,
\ 'type': 'E',
\ 'col': 30,
\ 'text': 'can''t lookup private fields from outside the type',
\ },
\ ],
\ ale#handlers#pony#HandlePonycFormat(bufnr(''), [
\ 'Building builtin -> /usr/lib/pony/0.21.3/packages/builtin',
\ 'Building . -> /home/projects',
\ 'Error:',
\ '/home/projects/Wombat.pony:22:30: can''t lookup private fields from outside the type',
\ ' env.out.print(defaultWombat._hunger_level)',
\ ' ^',
\ ])