diff options
author | Jon Parise <jon@indelible.org> | 2018-10-30 15:47:19 -0700 |
---|---|---|
committer | Jon Parise <jon@indelible.org> | 2018-10-31 08:42:42 -0700 |
commit | 2ac9e2a29e3c570e8aac5d8f5404921e8d816006 (patch) | |
tree | c43079605550c7821419a68d519e9c2faeebe009 /test/lsp | |
parent | b5a7593577e1ada3f81fdaa68862ad4e93dcb5a5 (diff) | |
download | ale-2ac9e2a29e3c570e8aac5d8f5404921e8d816006.zip |
Only send LSP config updates when the dict changes
Each LSP connection now stores its configuration dictionary. It is
initially empty (`{}`) and is updated each time the LSP connection is
started. When a change is detected, the workspace/didChangeConfiguration
message is sent to the LSP servers with the updated configuration.
Diffstat (limited to 'test/lsp')
-rw-r--r-- | test/lsp/test_other_initialize_message_handling.vader | 1 | ||||
-rw-r--r-- | test/lsp/test_update_config.vader | 17 |
2 files changed, 18 insertions, 0 deletions
diff --git a/test/lsp/test_other_initialize_message_handling.vader b/test/lsp/test_other_initialize_message_handling.vader index e29f3358..98509f82 100644 --- a/test/lsp/test_other_initialize_message_handling.vader +++ b/test/lsp/test_other_initialize_message_handling.vader @@ -7,6 +7,7 @@ Before: \ 'initialized': 0, \ 'init_request_id': 0, \ 'init_options': {}, + \ 'config': {}, \ 'callback_list': [], \ 'message_queue': [], \ 'capabilities_queue': [], diff --git a/test/lsp/test_update_config.vader b/test/lsp/test_update_config.vader new file mode 100644 index 00000000..07068bc8 --- /dev/null +++ b/test/lsp/test_update_config.vader @@ -0,0 +1,17 @@ +Before: + runtime autoload/ale/lsp.vim + + let g:conn_id = ale#lsp#Register('executable', '/foo/bar', {}) + +After: + Restore + + unlet! g:conn_id + + runtime autoload/ale/lsp.vim + +Execute(Only send updates when the configuration dictionary changes): + AssertEqual 0, ale#lsp#UpdateConfig(g:conn_id, bufnr(''), {}) + AssertEqual 1, ale#lsp#UpdateConfig(g:conn_id, bufnr(''), {'a': 1}) + AssertEqual 0, ale#lsp#UpdateConfig(g:conn_id, bufnr(''), {'a': 1}) + AssertEqual 1, ale#lsp#UpdateConfig(g:conn_id, bufnr(''), {}) |