aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/functional/legacy/scroll_opt_spec.lua34
-rw-r--r--test/old/testdir/test_scroll_opt.vim21
2 files changed, 49 insertions, 6 deletions
diff --git a/test/functional/legacy/scroll_opt_spec.lua b/test/functional/legacy/scroll_opt_spec.lua
index be7d324908..a5660ae4d2 100644
--- a/test/functional/legacy/scroll_opt_spec.lua
+++ b/test/functional/legacy/scroll_opt_spec.lua
@@ -428,14 +428,36 @@ describe('smoothscroll', function()
|
]])
-- 'scrolloff' set to 2, scrolling down, cursor moves screen line up
- feed('<C-E>gjgj<C-Y>')
+ feed('<C-E>gj<C-Y>')
+ screen:expect_unchanged()
+ end)
+
+ -- oldtest: Test_smoothscroll_one_long_line()
+ it("scrolls correctly when moving the cursor", function()
+ screen:try_resize(40, 6)
+ exec([[
+ call setline(1, 'with lots of text '->repeat(7))
+ set smoothscroll scrolloff=0
+ ]])
+ local s1 = [[
+ ^with lots of text with lots of text with|
+ lots of text with lots of text with lot|
+ s of text with lots of text with lots of|
+ text |
+ ~ |
+ |
+ ]]
+ screen:expect(s1)
+ feed('<C-E>')
screen:expect([[
- <<<of text with lots of text with lots o|
- f text with lots of text with lots of te|
- xt with l^ots of text with lots of text w|
- ith lots of text with lots of text with |
- lots of text with lots of text with lots|
+ <<<ts of text with lots of text with lot|
+ ^s of text with lots of text with lots of|
+ text |
+ ~ |
+ ~ |
|
]])
+ feed('0')
+ screen:expect(s1)
end)
end)
diff --git a/test/old/testdir/test_scroll_opt.vim b/test/old/testdir/test_scroll_opt.vim
index 3317ec9209..a8e0a1109a 100644
--- a/test/old/testdir/test_scroll_opt.vim
+++ b/test/old/testdir/test_scroll_opt.vim
@@ -265,5 +265,26 @@ func Test_smoothscroll_wrap_long_line()
call StopVimInTerminal(buf)
endfunc
+func Test_smoothscroll_one_long_line()
+ CheckScreendump
+
+ let lines =<< trim END
+ vim9script
+ setline(1, 'with lots of text '->repeat(7))
+ set smoothscroll scrolloff=0
+ END
+ call writefile(lines, 'XSmoothOneLong', 'D')
+ let buf = RunVimInTerminal('-S XSmoothOneLong', #{rows: 6, cols: 40})
+ call VerifyScreenDump(buf, 'Test_smooth_one_long_1', {})
+
+ call term_sendkeys(buf, "\<C-E>")
+ call VerifyScreenDump(buf, 'Test_smooth_one_long_2', {})
+
+ call term_sendkeys(buf, "0")
+ call VerifyScreenDump(buf, 'Test_smooth_one_long_1', {})
+
+ call StopVimInTerminal(buf)
+endfunc
+
" vim: shiftwidth=2 sts=2 expandtab