From f61c6d4c0ed9827aa0b798dc39233817b0813380 Mon Sep 17 00:00:00 2001 From: w0rp Date: Wed, 7 Jun 2017 17:05:28 +0100 Subject: Add support for generating essential tsserver messages --- test/lsp/test_lsp_client_messages.vader | 70 +++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) (limited to 'test/lsp/test_lsp_client_messages.vader') diff --git a/test/lsp/test_lsp_client_messages.vader b/test/lsp/test_lsp_client_messages.vader index de18a4b8..a967e4ec 100644 --- a/test/lsp/test_lsp_client_messages.vader +++ b/test/lsp/test_lsp_client_messages.vader @@ -1,3 +1,11 @@ +Before: + silent! cd /testplugin/test/lsp + let b:dir = getcwd() + +After: + silent execute 'cd ' . fnameescape(b:dir) + unlet! b:dir + Execute(ale#lsp#message#Initialize() should return correct messages): AssertEqual \ [ @@ -76,3 +84,65 @@ Execute(ale#lsp#message#DidClose() should return correct messages): \ } \ ], \ ale#lsp#message#DidClose('/foo/bar') + +Execute(ale#lsp#tsserver_message#Open() should return correct messages): + silent! noautocmd file foo.ts + + AssertEqual + \ [ + \ 1, + \ 'ts@open', + \ { + \ 'file': b:dir . '/foo.ts', + \ } + \ ], + \ ale#lsp#tsserver_message#Open(bufnr('')) + +Execute(ale#lsp#tsserver_message#Close() should return correct messages): + silent! noautocmd file foo.ts + + AssertEqual + \ [ + \ 1, + \ 'ts@close', + \ { + \ 'file': b:dir . '/foo.ts', + \ } + \ ], + \ ale#lsp#tsserver_message#Close(bufnr('')) + +Given typescript(A TypeScript file with 3 lines): + foo() + bar() + baz() + +Execute(ale#lsp#tsserver_message#Change() should return correct messages): + silent! noautocmd file foo.ts + + AssertEqual + \ [ + \ 1, + \ 'ts@change', + \ { + \ 'file': b:dir . '/foo.ts', + \ 'line': 1, + \ 'offset': 1, + \ 'endLine': 3, + \ 'endOffset': 5, + \ 'insertString': "foo()\nbar()\nbaz()", + \ } + \ ], + \ ale#lsp#tsserver_message#Change(bufnr('')) + +Execute(ale#lsp#tsserver_message#Geterr() should return correct messages): + silent! noautocmd file foo.ts + + AssertEqual + \ [ + \ 1, + \ 'ts@geterr', + \ { + \ 'files': [b:dir . '/foo.ts'], + \ } + \ ], + \ ale#lsp#tsserver_message#Geterr(bufnr('')) -- cgit v1.2.3