summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorKevin Tindall <kevinkjt2000@gmail.com>2018-02-10 13:04:43 -0600
committerKevin Tindall <kevinkjt2000@gmail.com>2018-02-10 13:17:53 -0600
commit716b46e10d2abe54daa09e876d4b7a6b56024ad0 (patch)
treeed72234ef8237e68c92e018b5df13891a7a0a0d3 /test
parenta3329ef3fc44a04a2617941eb46deef6c184f4af (diff)
downloadale-716b46e10d2abe54daa09e876d4b7a6b56024ad0.zip
functional pony linter
Diffstat (limited to 'test')
-rw-r--r--test/command_callback/test_pony_ponyc_command_callbacks.vader23
-rw-r--r--test/handler/test_pony_handler.vader21
2 files changed, 44 insertions, 0 deletions
diff --git a/test/command_callback/test_pony_ponyc_command_callbacks.vader b/test/command_callback/test_pony_ponyc_command_callbacks.vader
new file mode 100644
index 00000000..e48346e8
--- /dev/null
+++ b/test/command_callback/test_pony_ponyc_command_callbacks.vader
@@ -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(''))
diff --git a/test/handler/test_pony_handler.vader b/test/handler/test_pony_handler.vader
new file mode 100644
index 00000000..25a8254b
--- /dev/null
+++ b/test/handler/test_pony_handler.vader
@@ -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)',
+ \ ' ^',
+ \ ])