diff options
author | Gregory Anders <greg@gpanders.com> | 2025-03-07 07:45:34 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-03-07 05:45:34 -0800 |
commit | b31132f1c1fa47a9db368d5d28ee6dda8dc96ecc (patch) | |
tree | 31d7dfe2d1a2480efd9077764abaf8810a9b7387 /test | |
parent | c8b64b7a43975d6f4efa30999c82ae8180f16a4b (diff) | |
download | rneovim-b31132f1c1fa47a9db368d5d28ee6dda8dc96ecc.tar.gz rneovim-b31132f1c1fa47a9db368d5d28ee6dda8dc96ecc.tar.bz2 rneovim-b31132f1c1fa47a9db368d5d28ee6dda8dc96ecc.zip |
feat(defaults): jump between :terminal shell prompts with ]]/[[ #32736
Diffstat (limited to 'test')
-rw-r--r-- | test/functional/api/extmark_spec.lua | 30 | ||||
-rw-r--r-- | test/functional/api/vim_spec.lua | 25 | ||||
-rw-r--r-- | test/functional/lua/inspector_spec.lua | 12 | ||||
-rw-r--r-- | test/functional/lua/ui_event_spec.lua | 4 | ||||
-rw-r--r-- | test/functional/ui/bufhl_spec.lua | 22 | ||||
-rw-r--r-- | test/functional/ui/decorations_spec.lua | 26 |
6 files changed, 70 insertions, 49 deletions
diff --git a/test/functional/api/extmark_spec.lua b/test/functional/api/extmark_spec.lua index 6f53076f1f..31bb9841dc 100644 --- a/test/functional/api/extmark_spec.lua +++ b/test/functional/api/extmark_spec.lua @@ -83,7 +83,7 @@ end describe('API/extmarks', function() local screen local marks, positions, init_text, row, col - local ns, ns2 + local ns, ns2 ---@type integer, integer before_each(function() -- Initialize some namespaces and insert 12345 into a buffer @@ -1425,14 +1425,12 @@ describe('API/extmarks', function() end) it('throws consistent error codes', function() - local ns_invalid = ns2 + 1 - eq( - "Invalid 'ns_id': 3", - pcall_err(set_extmark, ns_invalid, marks[1], positions[1][1], positions[1][2]) - ) - eq("Invalid 'ns_id': 3", pcall_err(api.nvim_buf_del_extmark, 0, ns_invalid, marks[1])) - eq("Invalid 'ns_id': 3", pcall_err(get_extmarks, ns_invalid, positions[1], positions[2])) - eq("Invalid 'ns_id': 3", pcall_err(get_extmark_by_id, ns_invalid, marks[1])) + local ns_invalid = ns2 + 1 ---@type integer + local err = string.format("Invalid 'ns_id': %d", ns_invalid) + eq(err, pcall_err(set_extmark, ns_invalid, marks[1], positions[1][1], positions[1][2])) + eq(err, pcall_err(api.nvim_buf_del_extmark, 0, ns_invalid, marks[1])) + eq(err, pcall_err(get_extmarks, ns_invalid, positions[1], positions[2])) + eq(err, pcall_err(get_extmark_by_id, ns_invalid, marks[1])) end) it('when col = line-length, set the mark on eol', function() @@ -1535,7 +1533,7 @@ describe('API/extmarks', function() 0, 0, { - ns_id = 1, + ns_id = ns, end_col = 0, end_row = 1, right_gravity = true, @@ -1595,7 +1593,7 @@ describe('API/extmarks', function() hl_group = 'String', hl_mode = 'blend', line_hl_group = 'Statement', - ns_id = 1, + ns_id = ns, number_hl_group = 'Statement', priority = 0, right_gravity = false, @@ -1626,7 +1624,7 @@ describe('API/extmarks', function() 0, 0, { - ns_id = 1, + ns_id = ns, right_gravity = true, priority = 0, virt_text = { { '', 'Macro' }, { '', { 'Type', 'Search' } }, { '' } }, @@ -1647,7 +1645,7 @@ describe('API/extmarks', function() 0, 0, { - ns_id = 1, + ns_id = ns, right_gravity = true, ui_watched = true, priority = 0, @@ -1663,7 +1661,7 @@ describe('API/extmarks', function() 0, 0, { - ns_id = 1, + ns_id = ns, cursorline_hl_group = 'Statement', priority = 4096, right_gravity = true, @@ -1683,7 +1681,7 @@ describe('API/extmarks', function() end_col = 1, end_right_gravity = false, end_row = 0, - ns_id = 1, + ns_id = ns, right_gravity = true, spell = true, }, @@ -1700,7 +1698,7 @@ describe('API/extmarks', function() end_col = 1, end_right_gravity = false, end_row = 0, - ns_id = 1, + ns_id = ns, right_gravity = true, spell = false, }, diff --git a/test/functional/api/vim_spec.lua b/test/functional/api/vim_spec.lua index b5fcd88f71..18e6dbd9b6 100644 --- a/test/functional/api/vim_spec.lua +++ b/test/functional/api/vim_spec.lua @@ -3167,14 +3167,23 @@ describe('API', function() describe('nvim_create_namespace', function() it('works', function() - eq({}, api.nvim_get_namespaces()) - eq(1, api.nvim_create_namespace('ns-1')) - eq(2, api.nvim_create_namespace('ns-2')) - eq(1, api.nvim_create_namespace('ns-1')) - eq({ ['ns-1'] = 1, ['ns-2'] = 2 }, api.nvim_get_namespaces()) - eq(3, api.nvim_create_namespace('')) - eq(4, api.nvim_create_namespace('')) - eq({ ['ns-1'] = 1, ['ns-2'] = 2 }, api.nvim_get_namespaces()) + local orig = api.nvim_get_namespaces() + local base = vim.iter(orig):fold(0, function(acc, _, v) + return math.max(acc, v) + end) + eq(base + 1, api.nvim_create_namespace('ns-1')) + eq(base + 2, api.nvim_create_namespace('ns-2')) + eq(base + 1, api.nvim_create_namespace('ns-1')) + + local expected = vim.tbl_extend('error', orig, { + ['ns-1'] = base + 1, + ['ns-2'] = base + 2, + }) + + eq(expected, api.nvim_get_namespaces()) + eq(base + 3, api.nvim_create_namespace('')) + eq(base + 4, api.nvim_create_namespace('')) + eq(expected, api.nvim_get_namespaces()) end) end) diff --git a/test/functional/lua/inspector_spec.lua b/test/functional/lua/inspector_spec.lua index 3a1263f6a3..89a103f51f 100644 --- a/test/functional/lua/inspector_spec.lua +++ b/test/functional/lua/inspector_spec.lua @@ -12,7 +12,7 @@ describe('vim.inspect_pos', function() end) it('it returns items', function() - local buf, items, other_buf_syntax = exec_lua(function() + local buf, ns1, ns2, items, other_buf_syntax = exec_lua(function() local buf = vim.api.nvim_create_buf(true, false) local buf1 = vim.api.nvim_create_buf(true, false) local ns1 = vim.api.nvim_create_namespace('ns1') @@ -25,7 +25,7 @@ describe('vim.inspect_pos', function() vim.api.nvim_buf_set_extmark(buf, ns1, 0, 10, { hl_group = 'Normal' }) vim.api.nvim_buf_set_extmark(buf, ns2, 0, 10, { hl_group = 'Normal' }) vim.cmd('syntax on') - return buf, vim.inspect_pos(0, 0, 10), vim.inspect_pos(buf1, 0, 10).syntax + return buf, ns1, ns2, vim.inspect_pos(0, 0, 10), vim.inspect_pos(buf1, 0, 10).syntax end) eq('', eval('v:errmsg')) @@ -40,12 +40,12 @@ describe('vim.inspect_pos', function() end_row = 0, id = 1, ns = 'ns1', - ns_id = 1, + ns_id = ns1, opts = { hl_eol = false, hl_group = 'Normal', hl_group_link = 'Normal', - ns_id = 1, + ns_id = ns1, priority = 4096, right_gravity = true, }, @@ -57,12 +57,12 @@ describe('vim.inspect_pos', function() end_row = 0, id = 1, ns = '', - ns_id = 2, + ns_id = ns2, opts = { hl_eol = false, hl_group = 'Normal', hl_group_link = 'Normal', - ns_id = 2, + ns_id = ns2, priority = 4096, right_gravity = true, }, diff --git a/test/functional/lua/ui_event_spec.lua b/test/functional/lua/ui_event_spec.lua index ddb10127e4..8159a4c91c 100644 --- a/test/functional/lua/ui_event_spec.lua +++ b/test/functional/lua/ui_event_spec.lua @@ -372,7 +372,7 @@ describe('vim.ui_attach', function() | {3: }| {9:Excessive errors in vim.ui_attach() call}| - {9:back from ns: 1.} | + {9:back from ns: 2.} | {100:Press ENTER or type command to continue}^ | ]]) feed('<cr>') @@ -419,7 +419,7 @@ describe('vim.ui_attach', function() | {3: }| {9:Excessive errors in vim.ui_attach() call}| - {9:back from ns: 2.} | + {9:back from ns: 3.} | {100:Press ENTER or type command to continue}^ | ]]) end) diff --git a/test/functional/ui/bufhl_spec.lua b/test/functional/ui/bufhl_spec.lua index b7cf8504ff..58fd50e724 100644 --- a/test/functional/ui/bufhl_spec.lua +++ b/test/functional/ui/bufhl_spec.lua @@ -577,7 +577,7 @@ describe('Buffer highlighting', function() end) describe('virtual text decorations', function() - local id1, id2 + local id1, id2 ---@type integer, integer before_each(function() insert([[ 1 + 2 @@ -709,7 +709,7 @@ describe('Buffer highlighting', function() 0, 0, { - ns_id = 1, + ns_id = id1, priority = 0, virt_text = s1, -- other details @@ -729,7 +729,7 @@ describe('Buffer highlighting', function() lastline, 0, { - ns_id = 1, + ns_id = id1, priority = 0, virt_text = s2, -- other details @@ -898,11 +898,15 @@ describe('Buffer highlighting', function() end) it('and virtual text use the same namespace counter', function() - eq(1, add_highlight(0, 0, 'String', 0, 0, -1)) - eq(2, set_virtual_text(0, 0, 0, { { '= text', 'Comment' } }, {})) - eq(3, api.nvim_create_namespace('my-ns')) - eq(4, add_highlight(0, 0, 'String', 0, 0, -1)) - eq(5, set_virtual_text(0, 0, 0, { { '= text', 'Comment' } }, {})) - eq(6, api.nvim_create_namespace('other-ns')) + local base = vim.iter(api.nvim_get_namespaces()):fold(0, function(acc, _, v) + return math.max(acc, v) + end) + + eq(base + 1, add_highlight(0, 0, 'String', 0, 0, -1)) + eq(base + 2, set_virtual_text(0, 0, 0, { { '= text', 'Comment' } }, {})) + eq(base + 3, api.nvim_create_namespace('my-ns')) + eq(base + 4, add_highlight(0, 0, 'String', 0, 0, -1)) + eq(base + 5, set_virtual_text(0, 0, 0, { { '= text', 'Comment' } }, {})) + eq(base + 6, api.nvim_create_namespace('other-ns')) end) end) diff --git a/test/functional/ui/decorations_spec.lua b/test/functional/ui/decorations_spec.lua index 872e8d1457..d680e8b96e 100644 --- a/test/functional/ui/decorations_spec.lua +++ b/test/functional/ui/decorations_spec.lua @@ -16,7 +16,7 @@ local assert_alive = n.assert_alive local pcall_err = t.pcall_err describe('decorations providers', function() - local screen + local screen ---@type test.functional.ui.screen before_each(function() clear() screen = Screen.new(40, 8) @@ -52,6 +52,7 @@ describe('decorations providers', function() posp = getmark(mark, false); restore_buffer(&save_buf); ]] + --- @return integer local function setup_provider(code) return exec_lua ([[ local api = vim.api @@ -848,7 +849,8 @@ for _,item in ipairs(items) do end]] describe('extmark decorations', function() - local screen, ns + local screen ---@type test.functional.ui.screen + local ns ---@type integer before_each( function() clear() screen = Screen.new(50, 15) @@ -2232,7 +2234,7 @@ describe('extmark decorations', function() eq({ { 1, 0, 8, { end_col = 13, end_right_gravity = false, end_row = 0, hl_eol = false, hl_group = "NonText", undo_restore = false, - ns_id = 1, priority = 4096, right_gravity = true } } }, + ns_id = ns, priority = 4096, right_gravity = true } } }, api.nvim_buf_get_extmarks(0, ns, {0,0}, {0, -1}, {details=true})) end) @@ -2933,7 +2935,8 @@ describe('extmark decorations', function() end) describe('decorations: inline virtual text', function() - local screen, ns + local screen ---@type test.functional.ui.screen + local ns ---@type integer before_each( function() clear() screen = Screen.new(50, 3) @@ -4675,7 +4678,9 @@ describe('decorations: inline virtual text', function() end) describe('decorations: virtual lines', function() - local screen, ns + local screen ---@type test.functional.ui.screen + local ns ---@type integer + before_each(function() clear() screen = Screen.new(50, 12) @@ -5732,7 +5737,9 @@ if (h->n_buckets < new_n_buckets) { // expand end) describe('decorations: signs', function() - local screen, ns + local screen ---@type test.functional.ui.screen + local ns ---@type integer + before_each(function() clear() screen = Screen.new(50, 10) @@ -6342,7 +6349,7 @@ l5 end) describe('decorations: virt_text', function() - local screen + local screen ---@type test.functional.ui.screen before_each(function() clear() @@ -6416,7 +6423,10 @@ describe('decorations: virt_text', function() end) describe('decorations: window scoped', function() - local screen, ns, win_other + local screen ---@type test.functional.ui.screen + local ns ---@type integer + local win_other ---@type integer + local url = 'https://example.com' before_each(function() clear() |