Add ALEGoToImplementation (#4160)

* Add go to implementation

* Add test cases for GoToImplementation

* Add documentation for GoToImplementation
This commit is contained in:
godbless
2022-04-30 08:58:26 +05:30
committed by GitHub
parent 57e16957e0
commit d484347fb5
10 changed files with 229 additions and 8 deletions

View File

@@ -175,6 +175,20 @@ Execute(ale#lsp#message#TypeDefinition() should return correct messages):
\ ],
\ ale#lsp#message#TypeDefinition(bufnr(''), 12, 34)
Execute(ale#lsp#message#Implementation() should return correct messages):
AssertEqual
\ [
\ 0,
\ 'textDocument/implementation',
\ {
\ 'textDocument': {
\ 'uri': ale#path#ToFileURI(g:dir . '/foo/bar.ts'),
\ },
\ 'position': {'line': 11, 'character': 33},
\ }
\ ],
\ ale#lsp#message#Implementation(bufnr(''), 12, 34)
Execute(ale#lsp#message#References() should return correct messages):
AssertEqual
\ [
@@ -335,6 +349,19 @@ Execute(ale#lsp#tsserver_message#TypeDefinition() should return correct messages
\ ],
\ ale#lsp#tsserver_message#TypeDefinition(bufnr(''), 347, 12)
Execute(ale#lsp#tsserver_message#Implementation() should return correct messages):
AssertEqual
\ [
\ 0,
\ 'ts@implementation',
\ {
\ 'file': ale#path#Simplify(g:dir . '/foo/bar.ts'),
\ 'line': 347,
\ 'offset': 12,
\ }
\ ],
\ ale#lsp#tsserver_message#Implementation(bufnr(''), 347, 12)
Execute(ale#lsp#tsserver_message#References() should return correct messages):
AssertEqual
\ [

View File

@@ -189,6 +189,10 @@ Before:
\ 'typeDefinition': {
\ 'dynamicRegistration': v:false,
\ },
\ 'implementation': {
\ 'dynamicRegistration': v:false,
\ 'linkSupport': v:false,
\ },
\ 'publishDiagnostics': {
\ 'relatedInformation': v:true,
\ },

View File

@@ -182,6 +182,7 @@ Execute(Capabilities should be enabled when send as Dictionaries):
\ },
\ 'definitionProvider': {},
\ 'typeDefinitionProvider': {},
\ 'implementationProvider': {},
\ 'experimental': {},
\ 'documentHighlightProvider': v:true,
\ 'workspaceSymbolProvider': {}
@@ -198,6 +199,7 @@ Execute(Capabilities should be enabled when send as Dictionaries):
\ 'hover': 1,
\ 'definition': 1,
\ 'typeDefinition': 1,
\ 'implementation': 1,
\ 'symbol_search': 1,
\ 'rename': 1,
\ 'code_actions': 1,