From d8d09c2048a72a6205bcf1c5069f7016a3a6261e Mon Sep 17 00:00:00 2001 From: w0rp Date: Thu, 26 Apr 2018 21:54:11 +0100 Subject: Close #1428 Implement LSP hover-like functionality for tsserver too --- test/test_hover.vader | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) (limited to 'test/test_hover.vader') diff --git a/test/test_hover.vader b/test/test_hover.vader index 3018249d..18dcebaf 100644 --- a/test/test_hover.vader +++ b/test/test_hover.vader @@ -70,6 +70,50 @@ Given python(Some Python file): somelongerline bazxyzxyzxyz +Execute(Other messages for the tsserver handler should be ignored): + call ale#hover#HandleTSServerResponse(1, {'command': 'foo'}) + +Execute(Failed hover responses should be handled correctly): + call ale#hover#SetMap({3: {}}) + call ale#hover#HandleTSServerResponse( + \ 1, + \ {'command': 'quickinfo', 'request_seq': 3} + \) + AssertEqual {}, ale#hover#GetMap() + +Given typescript(Some typescript file): + foo + somelongerline + bazxyzxyzxyz + +Execute(tsserver quickinfo responses will null missing bodies should be handled): + call ale#hover#SetMap({3: {}}) + call ale#hover#HandleTSServerResponse( + \ 1, + \ { + \ 'command': 'quickinfo', + \ 'request_seq': 3, + \ 'success': v:true, + \ } + \) + + AssertEqual {}, ale#hover#GetMap() + +Execute(tsserver quickinfo displayString values should be displayed): + call ale#hover#SetMap({3: {}}) + call ale#hover#HandleTSServerResponse( + \ 1, + \ { + \ 'command': 'quickinfo', + \ 'request_seq': 3, + \ 'success': v:true, + \ 'body': {'displayString': 'foo bar'}, + \ } + \) + + AssertEqual ['foo bar'], g:echo_list + AssertEqual {}, ale#hover#GetMap() + Execute(LSP hover responses with just a string should be handled): call HandleValidLSPResult({'contents': 'foobar'}) -- cgit v1.2.3