diff options
author | bfredl <bjorn.linse@gmail.com> | 2023-03-23 12:44:05 +0100 |
---|---|---|
committer | bfredl <bjorn.linse@gmail.com> | 2023-03-23 13:42:00 +0100 |
commit | 6d267ad30cf539f520b46e3c92939f7031ce116f (patch) | |
tree | d45804b5fb69af91ea4ae156935931f6b4acd70b /test | |
parent | c0fe6c040e19ef9102a8507ffcbd88b83186326a (diff) | |
download | rneovim-6d267ad30cf539f520b46e3c92939f7031ce116f.tar.gz rneovim-6d267ad30cf539f520b46e3c92939f7031ce116f.tar.bz2 rneovim-6d267ad30cf539f520b46e3c92939f7031ce116f.zip |
fix(api): make nvim_get_hl return 'cterm' attrs properly
Diffstat (limited to 'test')
-rw-r--r-- | test/functional/api/highlight_spec.lua | 64 | ||||
-rw-r--r-- | test/unit/eval/typval_spec.lua | 16 |
2 files changed, 27 insertions, 53 deletions
diff --git a/test/functional/api/highlight_spec.lua b/test/functional/api/highlight_spec.lua index de3eb4e798..65b13bebf7 100644 --- a/test/functional/api/highlight_spec.lua +++ b/test/functional/api/highlight_spec.lua @@ -380,14 +380,14 @@ describe('API: get highlight', function() local highlight1 = { bg = highlight_color.bg, fg = highlight_color.fg, - bold = true, - italic = true, + bold = true, italic = true, + cterm = {bold = true, italic = true}, } local highlight2 = { ctermbg = highlight_color.ctermbg, ctermfg = highlight_color.ctermfg, - underline = true, - reverse = true, + underline = true, reverse = true, + cterm = {underline = true, reverse = true}, } local highlight3_config = { bg = highlight_color.bg, @@ -413,13 +413,8 @@ describe('API: get highlight', function() fg = highlight_color.fg, ctermbg = highlight_color.ctermbg, ctermfg = highlight_color.ctermfg, - bold = true, - italic = true, - nocombine = true, - reverse = true, - underdashed = true, - strikethrough = true, - altfont = true, + bold = true, italic = true, reverse = true, underdashed = true, strikethrough = true, altfont = true, + cterm = {italic = true, nocombine = true, reverse = true, strikethrough = true, altfont = true} } local function get_ns() @@ -500,7 +495,8 @@ describe('API: get highlight', function() undercurl = true, }, }) - eq({ undercurl = true, underdotted = true }, meths.get_hl(ns, { name = 'Test_hl' })) + eq({ underdotted = true, cterm = { undercurl = true} }, + meths.get_hl(ns, { name = 'Test_hl' })) end) it('can get a highlight in the global namespace', function() @@ -524,43 +520,15 @@ describe('API: get highlight', function() }, meths.get_hl(0, { name = 'Test_hl3' })) end) - local expected_rgb = { - altfont = true, - bg = 16776960, - bold = true, - ctermbg = 10, - fg = 16711680, - italic = true, - nocombine = true, - reverse = true, - sp = 255, - strikethrough = true, - underline = true, - } - local expected = { - bg = 16776960, - bold = true, - ctermbg = 10, - fg = 16711680, - sp = 255, - underline = true, - } - local expected_undercurl = { - bg = 16776960, - ctermbg = 10, - fg = 16711680, - sp = 255, - undercurl = true, - underline = true, - } - it('nvim_get_hl by id', function() local hl_id = meths.get_hl_id_by_name('NewHighlight') command( 'hi NewHighlight cterm=underline ctermbg=green guifg=red guibg=yellow guisp=blue gui=bold' ) - eq(expected, meths.get_hl(0, { id = hl_id })) + eq({ fg = 16711680, bg = 16776960, sp = 255, bold = true, + ctermbg = 10, cterm = { underline = true }, + }, meths.get_hl(0, { id = hl_id })) -- Test 0 argument eq('Highlight id out of bounds', pcall_err(meths.get_hl, 0, { id = 0 })) @@ -572,11 +540,17 @@ describe('API: get highlight', function() -- Test all highlight properties. command('hi NewHighlight gui=underline,bold,italic,reverse,strikethrough,altfont,nocombine') - eq(expected_rgb, meths.get_hl(0, { id = hl_id })) + eq({ fg = 16711680, bg = 16776960, sp = 255, + altfont = true, bold = true, italic = true, nocombine = true, reverse = true, strikethrough = true, underline = true, + ctermbg = 10, cterm = {underline = true}, + }, meths.get_hl(0, { id = hl_id })) -- Test undercurl command('hi NewHighlight gui=undercurl') - eq(expected_undercurl, meths.get_hl(0, { id = hl_id })) + eq({ fg = 16711680, bg = 16776960, sp = 255, undercurl = true, + ctermbg = 10, + cterm = {underline = true}, + }, meths.get_hl(0, { id = hl_id })) end) it('can correctly detect links', function() diff --git a/test/unit/eval/typval_spec.lua b/test/unit/eval/typval_spec.lua index 825377813d..ecee773ba8 100644 --- a/test/unit/eval/typval_spec.lua +++ b/test/unit/eval/typval_spec.lua @@ -1653,7 +1653,7 @@ describe('typval.c', function() eq(OK, lib.tv_dict_add(d, di)) alloc_log:check({}) eq(FAIL, check_emsg(function() return lib.tv_dict_add(d, di) end, - 'E685: Internal error: hash_add()')) + 'E685: Internal error: hash_add(): duplicate key ""')) alloc_log:clear() lib.tv_dict_item_remove(d, di) alloc_log:check({ @@ -1947,7 +1947,7 @@ describe('typval.c', function() alloc_log:check({}) eq({test=10, ['t-est']=int(42)}, dct2tbl(d)) eq(FAIL, check_emsg(function() return lib.tv_dict_add(d, di) end, - 'E685: Internal error: hash_add()')) + 'E685: Internal error: hash_add(): duplicate key "t-est"')) end) end) describe('list()', function() @@ -1964,7 +1964,7 @@ describe('typval.c', function() eq({test=10, tes={1, 2, 3}}, dct2tbl(d)) eq(2, l.lv_refcount) eq(FAIL, check_emsg(function() return lib.tv_dict_add_list(d, 'testt', 3, l) end, - 'E685: Internal error: hash_add()')) + 'E685: Internal error: hash_add(): duplicate key "tes"')) eq(2, l.lv_refcount) alloc_log:clear() lib.emsg_skip = lib.emsg_skip + 1 @@ -1990,7 +1990,7 @@ describe('typval.c', function() eq({test=10, tes={foo=42}}, dct2tbl(d)) eq(2, d2.dv_refcount) eq(FAIL, check_emsg(function() return lib.tv_dict_add_dict(d, 'testt', 3, d2) end, - 'E685: Internal error: hash_add()')) + 'E685: Internal error: hash_add(): duplicate key "tes"')) eq(2, d2.dv_refcount) alloc_log:clear() lib.emsg_skip = lib.emsg_skip + 1 @@ -2012,7 +2012,7 @@ describe('typval.c', function() alloc_log:check({a.di(dis.tes, 'tes')}) eq({test=10, tes=int(2)}, dct2tbl(d)) eq(FAIL, check_emsg(function() return lib.tv_dict_add_nr(d, 'testt', 3, 2) end, - 'E685: Internal error: hash_add()')) + 'E685: Internal error: hash_add(): duplicate key "tes"')) alloc_log:clear() lib.emsg_skip = lib.emsg_skip + 1 eq(FAIL, check_emsg(function() return lib.tv_dict_add_nr(d, 'testt', 3, 2) end, @@ -2032,7 +2032,7 @@ describe('typval.c', function() alloc_log:check({a.di(dis.tes, 'tes')}) eq({test=10, tes=1.5}, dct2tbl(d)) eq(FAIL, check_emsg(function() return lib.tv_dict_add_float(d, 'testt', 3, 1.5) end, - 'E685: Internal error: hash_add()')) + 'E685: Internal error: hash_add(): duplicate key "tes"')) alloc_log:clear() lib.emsg_skip = lib.emsg_skip + 1 eq(FAIL, check_emsg(function() return lib.tv_dict_add_float(d, 'testt', 3, 1.5) end, @@ -2055,7 +2055,7 @@ describe('typval.c', function() }) eq({test=10, tes='TEST'}, dct2tbl(d)) eq(FAIL, check_emsg(function() return lib.tv_dict_add_str(d, 'testt', 3, 'TEST') end, - 'E685: Internal error: hash_add()')) + 'E685: Internal error: hash_add(): duplicate key "tes"')) alloc_log:clear() lib.emsg_skip = lib.emsg_skip + 1 eq(FAIL, check_emsg(function() return lib.tv_dict_add_str(d, 'testt', 3, 'TEST') end, @@ -2085,7 +2085,7 @@ describe('typval.c', function() }) eq({test=10, tes='TEST'}, dct2tbl(d)) eq(FAIL, check_emsg(function() return lib.tv_dict_add_allocated_str(d, 'testt', 3, s2) end, - 'E685: Internal error: hash_add()')) + 'E685: Internal error: hash_add(): duplicate key "tes"')) alloc_log:clear() lib.emsg_skip = lib.emsg_skip + 1 eq(FAIL, check_emsg(function() return lib.tv_dict_add_allocated_str(d, 'testt', 3, s3) end, |