mirror of
https://github.com/prabirshrestha/vim-lsp.git
synced 2025-12-14 20:35:59 +01:00
* Improve code action * Add LspCodeActionSync * Fix miss argument * Fix for the review * Add utils and tests * Remove unused function
66 lines
4.4 KiB
Plaintext
66 lines
4.4 KiB
Plaintext
Describe lsp#utils#position
|
|
|
|
Before each
|
|
% delete _
|
|
End
|
|
|
|
After all
|
|
% delete _
|
|
End
|
|
|
|
Describe lsp#utils#position#_lsp_to_vim
|
|
|
|
It should return the byte-index from the given character-index on a buffer
|
|
call setline(1, ['a β c', 'δ', ''])
|
|
Assert Equals(lsp#utils#position#_lsp_to_vim('%', { 'line': 0, 'character': 0 }), [1, 1])
|
|
Assert Equals(lsp#utils#position#_lsp_to_vim('%', { 'line': 0, 'character': 1 }), [1, 2])
|
|
Assert Equals(lsp#utils#position#_lsp_to_vim('%', { 'line': 0, 'character': 2 }), [1, 3])
|
|
Assert Equals(lsp#utils#position#_lsp_to_vim('%', { 'line': 0, 'character': 3 }), [1, 5])
|
|
Assert Equals(lsp#utils#position#_lsp_to_vim('%', { 'line': 0, 'character': 4 }), [1, 6])
|
|
Assert Equals(lsp#utils#position#_lsp_to_vim('%', { 'line': 1, 'character': 0 }), [2, 1])
|
|
Assert Equals(lsp#utils#position#_lsp_to_vim('%', { 'line': 1, 'character': 1 }), [2, 3])
|
|
Assert Equals(lsp#utils#position#_lsp_to_vim('%', { 'line': 2, 'character': 0 }), [3, 1])
|
|
End
|
|
|
|
It should return the byte-index from the given character-index in an unloaded file
|
|
Assert Equals(lsp#utils#position#_lsp_to_vim('./test/testfiles/multibyte.txt', { 'line': 0, 'character': 0 }), [1, 1])
|
|
Assert Equals(lsp#utils#position#_lsp_to_vim('./test/testfiles/multibyte.txt', { 'line': 0, 'character': 1 }), [1, 2])
|
|
Assert Equals(lsp#utils#position#_lsp_to_vim('./test/testfiles/multibyte.txt', { 'line': 0, 'character': 2 }), [1, 3])
|
|
Assert Equals(lsp#utils#position#_lsp_to_vim('./test/testfiles/multibyte.txt', { 'line': 0, 'character': 3 }), [1, 5])
|
|
Assert Equals(lsp#utils#position#_lsp_to_vim('./test/testfiles/multibyte.txt', { 'line': 0, 'character': 4 }), [1, 6])
|
|
Assert Equals(lsp#utils#position#_lsp_to_vim('./test/testfiles/multibyte.txt', { 'line': 1, 'character': 0 }), [2, 1])
|
|
Assert Equals(lsp#utils#position#_lsp_to_vim('./test/testfiles/multibyte.txt', { 'line': 1, 'character': 1 }), [2, 3])
|
|
Assert Equals(lsp#utils#position#_lsp_to_vim('./test/testfiles/multibyte.txt', { 'line': 2, 'character': 0 }), [3, 1])
|
|
End
|
|
|
|
End
|
|
|
|
Describe lsp#utils#position#_vim_to_lsp
|
|
|
|
It should return the character-index from the given byte-index on a buffer
|
|
call setline(1, ['a β c', 'δ', ''])
|
|
Assert Equals({ 'line': 0, 'character': 0 }, lsp#utils#position#_vim_to_lsp('%', [1, 1]))
|
|
Assert Equals({ 'line': 0, 'character': 1 }, lsp#utils#position#_vim_to_lsp('%', [1, 2]))
|
|
Assert Equals({ 'line': 0, 'character': 2 }, lsp#utils#position#_vim_to_lsp('%', [1, 3]))
|
|
Assert Equals({ 'line': 0, 'character': 3 }, lsp#utils#position#_vim_to_lsp('%', [1, 5]))
|
|
Assert Equals({ 'line': 0, 'character': 4 }, lsp#utils#position#_vim_to_lsp('%', [1, 6]))
|
|
Assert Equals({ 'line': 1, 'character': 0 }, lsp#utils#position#_vim_to_lsp('%', [2, 1]))
|
|
Assert Equals({ 'line': 1, 'character': 1 }, lsp#utils#position#_vim_to_lsp('%', [2, 3]))
|
|
Assert Equals({ 'line': 2, 'character': 0 }, lsp#utils#position#_vim_to_lsp('%', [3, 1]))
|
|
End
|
|
|
|
It should return the character-index from the given byte-index in an unloaded file
|
|
Assert Equals({ 'line': 0, 'character': 0 }, lsp#utils#position#_vim_to_lsp('./test/testfiles/multibyte.txt', [1, 1]))
|
|
Assert Equals({ 'line': 0, 'character': 1 }, lsp#utils#position#_vim_to_lsp('./test/testfiles/multibyte.txt', [1, 2]))
|
|
Assert Equals({ 'line': 0, 'character': 2 }, lsp#utils#position#_vim_to_lsp('./test/testfiles/multibyte.txt', [1, 3]))
|
|
Assert Equals({ 'line': 0, 'character': 3 }, lsp#utils#position#_vim_to_lsp('./test/testfiles/multibyte.txt', [1, 5]))
|
|
Assert Equals({ 'line': 0, 'character': 4 }, lsp#utils#position#_vim_to_lsp('./test/testfiles/multibyte.txt', [1, 6]))
|
|
Assert Equals({ 'line': 1, 'character': 0 }, lsp#utils#position#_vim_to_lsp('./test/testfiles/multibyte.txt', [2, 1]))
|
|
Assert Equals({ 'line': 1, 'character': 1 }, lsp#utils#position#_vim_to_lsp('./test/testfiles/multibyte.txt', [2, 3]))
|
|
Assert Equals({ 'line': 2, 'character': 0 }, lsp#utils#position#_vim_to_lsp('./test/testfiles/multibyte.txt', [3, 1]))
|
|
End
|
|
|
|
End
|
|
|
|
End
|