From 3e4a058b01db779e087eaf97826cee545de2a923 Mon Sep 17 00:00:00 2001 From: Jan Edmund Lazo Date: Tue, 26 Jun 2018 23:26:04 -0400 Subject: test: port kword_test to Lua for utf_char2bytes() Use LuaJIT FFI to create char pointer. Validate output with utf_ptr2char(), vim_iswordc() and vim_iswordp(). Use const for LuaJIT string-to-char conversion. --- test/unit/mbyte_spec.lua | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'test') diff --git a/test/unit/mbyte_spec.lua b/test/unit/mbyte_spec.lua index 6feef4e601..1e7e9fd6e6 100644 --- a/test/unit/mbyte_spec.lua +++ b/test/unit/mbyte_spec.lua @@ -5,6 +5,7 @@ local ffi = helpers.ffi local eq = helpers.eq local mbyte = helpers.cimport("./src/nvim/mbyte.h") +local charset = helpers.cimport('./src/nvim/charset.h') describe('mbyte', function() @@ -42,6 +43,15 @@ describe('mbyte', function() -- Sequences with more than four bytes end) + itp('utf_char2bytes', function() + local char_p = ffi.typeof('char[?]') + for c = 0, 0xFFFF do + local p = char_p(4, 0) + mbyte.utf_char2bytes(c, p) + eq(c, mbyte.utf_ptr2char(p)) + eq(charset.vim_iswordc(c), charset.vim_iswordp(p)) + end + end) describe('utfc_ptr2char_len', function() -- cgit