aboutsummaryrefslogtreecommitdiff
path: root/test/functional/lua/text_spec.lua
diff options
context:
space:
mode:
authorGregory Anders <greg@gpanders.com>2024-11-26 13:56:01 -0600
committerGitHub <noreply@github.com>2024-11-26 13:56:01 -0600
commit99b5ffd688247f25295f3dd06e57c0d9ad85b072 (patch)
treee68bff0b460dcbf7ff0187b64665dbf92ae13046 /test/functional/lua/text_spec.lua
parente8450ef2368bd2d80149bf98a34571bc92fb2aba (diff)
downloadrneovim-99b5ffd688247f25295f3dd06e57c0d9ad85b072.tar.gz
rneovim-99b5ffd688247f25295f3dd06e57c0d9ad85b072.tar.bz2
rneovim-99b5ffd688247f25295f3dd06e57c0d9ad85b072.zip
perf(vim.text): use lookup table implementation for hex encoding (#30080)
Co-authored-by: glepnir <glephunter@gmail.com>
Diffstat (limited to 'test/functional/lua/text_spec.lua')
-rw-r--r--test/functional/lua/text_spec.lua16
1 files changed, 16 insertions, 0 deletions
diff --git a/test/functional/lua/text_spec.lua b/test/functional/lua/text_spec.lua
index be471bfd62..dd08a6ec04 100644
--- a/test/functional/lua/text_spec.lua
+++ b/test/functional/lua/text_spec.lua
@@ -26,5 +26,21 @@ describe('vim.text', function()
eq(output, vim.text.hexencode(input))
eq(input, vim.text.hexdecode(output))
end)
+
+ it('errors on invalid input', function()
+ -- Odd number of hex characters
+ do
+ local res, err = vim.text.hexdecode('ABC')
+ eq(nil, res)
+ eq('string must have an even number of hex characters', err)
+ end
+
+ -- Non-hexadecimal input
+ do
+ local res, err = vim.text.hexdecode('nothex')
+ eq(nil, res)
+ eq('string must contain only hex characters', err)
+ end
+ end)
end)
end)