diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/functional/legacy/normal_spec.lua | 41 | ||||
-rw-r--r-- | test/old/testdir/test_normal.vim | 18 |
2 files changed, 59 insertions, 0 deletions
diff --git a/test/functional/legacy/normal_spec.lua b/test/functional/legacy/normal_spec.lua new file mode 100644 index 0000000000..ba875460f5 --- /dev/null +++ b/test/functional/legacy/normal_spec.lua @@ -0,0 +1,41 @@ +local helpers = require('test.functional.helpers')(after_each) +local Screen = require('test.functional.ui.screen') +local clear = helpers.clear +local exec = helpers.exec + +before_each(clear) + +describe('normal', function() + -- oldtest: Test_normal_j_below_botline() + it([["j" does not skip lines when scrolling below botline and 'foldmethod' is not "manual"]], function() + local screen = Screen.new(40, 19) + screen:attach() + screen:set_default_attr_ids({{foreground = Screen.colors.Brown}}) + exec([[ + set number foldmethod=diff scrolloff=0 + call setline(1, map(range(1, 9), 'repeat(v:val, 200)')) + norm Lj + ]]) + screen:expect([[ + {1: 2 }222222222222222222222222222222222222| + {1: }222222222222222222222222222222222222| + {1: }222222222222222222222222222222222222| + {1: }222222222222222222222222222222222222| + {1: }222222222222222222222222222222222222| + {1: }22222222222222222222 | + {1: 3 }333333333333333333333333333333333333| + {1: }333333333333333333333333333333333333| + {1: }333333333333333333333333333333333333| + {1: }333333333333333333333333333333333333| + {1: }333333333333333333333333333333333333| + {1: }33333333333333333333 | + {1: 4 }^444444444444444444444444444444444444| + {1: }444444444444444444444444444444444444| + {1: }444444444444444444444444444444444444| + {1: }444444444444444444444444444444444444| + {1: }444444444444444444444444444444444444| + {1: }44444444444444444444 | + | + ]]) + end) +end) diff --git a/test/old/testdir/test_normal.vim b/test/old/testdir/test_normal.vim index a854c9538f..23baebb78c 100644 --- a/test/old/testdir/test_normal.vim +++ b/test/old/testdir/test_normal.vim @@ -3993,4 +3993,22 @@ func Test_mouse_shape_after_cancelling_gr() call delete('Xmouseshapes') endfunc +" Test that "j" does not skip lines when scrolling below botline and +" 'foldmethod' is not "manual". +func Test_normal_j_below_botline() + CheckScreendump + + let lines =<< trim END + set number foldmethod=diff scrolloff=0 + call setline(1, map(range(1, 9), 'repeat(v:val, 200)')) + norm Lj + END + call writefile(lines, 'XNormalJBelowBotline', 'D') + let buf = RunVimInTerminal('-S XNormalJBelowBotline', #{rows: 19, cols: 40}) + + call VerifyScreenDump(buf, 'Test_normal_j_below_botline', {}) + + call StopVimInTerminal(buf) +endfunc + " vim: shiftwidth=2 sts=2 expandtab |