diff options
author | zeertzjq <zeertzjq@outlook.com> | 2023-01-10 21:18:12 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-01-10 21:18:12 +0800 |
commit | 9b1112cf48238260b170b8763b18a02a58159c2a (patch) | |
tree | a4a1c50014b7e1f4d373aa5648054b4cfb879baa /test | |
parent | 870ca1de52b240926b88f01afa697cd9b119bdac (diff) | |
download | rneovim-9b1112cf48238260b170b8763b18a02a58159c2a.tar.gz rneovim-9b1112cf48238260b170b8763b18a02a58159c2a.tar.bz2 rneovim-9b1112cf48238260b170b8763b18a02a58159c2a.zip |
fix(statuscolumn): fix crashes and clang/PVS warnings (#21725)
Diffstat (limited to 'test')
-rw-r--r-- | test/functional/api/vim_spec.lua | 7 | ||||
-rw-r--r-- | test/functional/ui/statuscolumn_spec.lua | 25 |
2 files changed, 31 insertions, 1 deletions
diff --git a/test/functional/api/vim_spec.lua b/test/functional/api/vim_spec.lua index 98bfb83dbd..aa2f46bb59 100644 --- a/test/functional/api/vim_spec.lua +++ b/test/functional/api/vim_spec.lua @@ -3126,7 +3126,12 @@ describe('API', function() eq('E539: Illegal character <}>', pcall_err(meths.eval_statusline, '%{%}', {})) end) - it('supports %S item', function() + it('supports various items', function() + eq({ str = '0', width = 1 }, + meths.eval_statusline('%l', { maxwidth = 5 })) + command('set readonly') + eq({ str = '[RO]', width = 4 }, + meths.eval_statusline('%r', { maxwidth = 5 })) local screen = Screen.new(80, 24) screen:attach() command('set showcmd') diff --git a/test/functional/ui/statuscolumn_spec.lua b/test/functional/ui/statuscolumn_spec.lua index cdc2cb8746..912c139ae4 100644 --- a/test/functional/ui/statuscolumn_spec.lua +++ b/test/functional/ui/statuscolumn_spec.lua @@ -293,6 +293,31 @@ describe('statuscolumn', function() {2: }{1: │ }aaaaaa | | ]]) + -- Up to 9 signs in a line + command('set signcolumn=auto:9 foldcolumn=auto') + command('sign place 5 line=6 name=piet1 buffer=1') + command('sign place 6 line=6 name=piet2 buffer=1') + command('sign place 7 line=6 name=piet1 buffer=1') + command('sign place 8 line=6 name=piet2 buffer=1') + command('sign place 9 line=6 name=piet1 buffer=1') + command('sign place 10 line=6 name=piet2 buffer=1') + command('sign place 11 line=6 name=piet1 buffer=1') + screen:expect([[ + {2: }{1: 4│>> }aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa| + {2: }{1: │ }aaaaaaaaaaaaaaaaaaaa | + {2: }{1: 3│}{0:>!}{1: }aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa| + {2: }{1: │ }aaaaaaaaaaaaaaaaaaaa | + {2: }{1: 2│>>}{0:>!}{1:>>}{0:>!}{1:>>}{0:>!}{1:>>}{0:>!}{1:>> }aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa| + {2: }{1: │ }aaaaaaaaaaaaaaaaaaaa | + {2: }{1: 1│ }aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa| + {2: }{1: │ }aaaaaaaaaaaaaaaaaaaa | + {2:+}{1: 0│ }{3:^+-- 1 line: aaaaaaaaaaaaaaaaa}| + {2: }{1: 1│ }aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa| + {2: }{1: │ }aaaaaaaaaaaaaaaaaaaa | + {2: }{1: 2│ }aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa| + {2: }{1: │ }aaaaaaaaaaaaaaaaaaaa | + | + ]]) end) it('works with \'statuscolumn\' clicks', function() |