summaryrefslogtreecommitdiff
path: root/test/completion/test_complete_events.vader
diff options
context:
space:
mode:
Diffstat (limited to 'test/completion/test_complete_events.vader')
-rw-r--r--test/completion/test_complete_events.vader35
1 files changed, 35 insertions, 0 deletions
diff --git a/test/completion/test_complete_events.vader b/test/completion/test_complete_events.vader
new file mode 100644
index 00000000..cee15985
--- /dev/null
+++ b/test/completion/test_complete_events.vader
@@ -0,0 +1,35 @@
+Before:
+ let g:complete_post_triggered = 0
+
+ augroup VaderTest
+ autocmd!
+ autocmd User ALECompletePost let g:complete_post_triggered = 1
+ augroup END
+
+After:
+ unlet! b:ale_completion_info
+ unlet! g:complete_post_triggered
+
+ augroup VaderTest
+ autocmd!
+ augroup END
+
+ augroup! VaderTest
+
+Execute(ALECompletePost should not be triggered when completion is cancelled):
+ call ale#completion#HandleUserData({})
+
+ Assert !g:complete_post_triggered
+
+Execute(ALECompletePost should not be triggered when tools other than ALE insert completions):
+ call ale#completion#HandleUserData({'user_data': ''})
+ call ale#completion#HandleUserData({'user_data': '{}'})
+
+ Assert !g:complete_post_triggered
+
+Execute(ALECompletePost should be triggered when ALE inserts completions):
+ call ale#completion#HandleUserData({
+ \ 'user_data': json_encode({'_ale_completion_item': 1}),
+ \})
+
+ Assert g:complete_post_triggered