diff options
Diffstat (limited to 'test/functional')
-rw-r--r-- | test/functional/terminal/tui_spec.lua | 15 | ||||
-rw-r--r-- | test/functional/ui/fold_spec.lua | 16 | ||||
-rw-r--r-- | test/functional/ui/sign_spec.lua | 24 |
3 files changed, 55 insertions, 0 deletions
diff --git a/test/functional/terminal/tui_spec.lua b/test/functional/terminal/tui_spec.lua index a8a49cd378..0522d59c9a 100644 --- a/test/functional/terminal/tui_spec.lua +++ b/test/functional/terminal/tui_spec.lua @@ -182,6 +182,21 @@ describe('TUI', function() ]]) end) + it('handles pasting a specific amount of text', function() + -- Need extra time for this test, specially in ASAN. + screen.timeout = 60000 + feed_data('i\027[200~'..string.rep('z', 64)..'\027[201~') + screen:expect([[ + zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz| + zzzzzzzzzzzzzz{1: } | + {4:~ }| + {4:~ }| + {5:[No Name] [+] }| + {3:-- INSERT --} | + {3:-- TERMINAL --} | + ]]) + end) + it('can handle arbitrarily long bursts of input', function() -- Need extra time for this test, specially in ASAN. screen.timeout = 60000 diff --git a/test/functional/ui/fold_spec.lua b/test/functional/ui/fold_spec.lua index 5fa299bed9..c5ef718883 100644 --- a/test/functional/ui/fold_spec.lua +++ b/test/functional/ui/fold_spec.lua @@ -28,6 +28,22 @@ describe("folded lines", function() screen:detach() end) + it("work with more than one signcolumn", function() + command("set signcolumn=yes:9") + feed("i<cr><esc>") + feed("vkzf") + screen:expect([[ + {5: ^+-- 2 lines: ·············}| + {1:~ }| + {1:~ }| + {1:~ }| + {1:~ }| + {1:~ }| + {1:~ }| + | + ]]) + end) + it("highlighting with relative line numbers", function() command("set relativenumber foldmethod=marker") feed_command("set foldcolumn=2") diff --git a/test/functional/ui/sign_spec.lua b/test/functional/ui/sign_spec.lua index 2b38a2a58d..68e675b8e5 100644 --- a/test/functional/ui/sign_spec.lua +++ b/test/functional/ui/sign_spec.lua @@ -31,6 +31,30 @@ describe('Signs', function() end) describe(':sign place', function() + it('allows signs with combining characters', function() + feed('ia<cr>b<cr><esc>') + command('sign define piet1 text=𐌢̀́̂̃̅̄𐌢̀́̂̃̅̄ texthl=Search') + command('sign define piet2 text=𠜎̀́̂̃̄̅ texthl=Search') + command('sign place 1 line=1 name=piet1 buffer=1') + command('sign place 2 line=2 name=piet2 buffer=1') + screen:expect([[ + {1:𐌢̀́̂̃̅̄𐌢̀́̂̃̅̄}a | + {1:𠜎̀́̂̃̄̅}b | + {2: }^ | + {0:~ }| + {0:~ }| + {0:~ }| + {0:~ }| + {0:~ }| + {0:~ }| + {0:~ }| + {0:~ }| + {0:~ }| + {0:~ }| + | + ]]) + end) + it('shadows previously placed signs', function() feed('ia<cr>b<cr>c<cr><esc>') command('sign define piet text=>> texthl=Search') |