2023-02-04 18:37:12 -07:00
|
|
|
local helpers = require('test.functional.helpers')(after_each)
|
|
|
|
local Screen = require('test.functional.ui.screen')
|
|
|
|
local clear = helpers.clear
|
|
|
|
local feed = helpers.feed
|
2024-01-12 10:59:57 -07:00
|
|
|
local fn = helpers.fn
|
2023-02-04 18:37:12 -07:00
|
|
|
|
|
|
|
before_each(clear)
|
|
|
|
|
|
|
|
describe(':move', function()
|
|
|
|
-- oldtest: Test_move_undo()
|
|
|
|
it('redraws correctly when undone', function()
|
|
|
|
local screen = Screen.new(60, 10)
|
|
|
|
screen:set_default_attr_ids({
|
2024-01-02 18:09:18 -07:00
|
|
|
[0] = { bold = true, foreground = Screen.colors.Blue }, -- NonText
|
2023-02-04 18:37:12 -07:00
|
|
|
})
|
|
|
|
screen:attach()
|
|
|
|
|
2024-01-12 10:59:57 -07:00
|
|
|
fn.setline(1, { 'First', 'Second', 'Third', 'Fourth' })
|
2023-02-04 18:37:12 -07:00
|
|
|
feed('gg:move +1<CR>')
|
|
|
|
screen:expect([[
|
|
|
|
Second |
|
|
|
|
^First |
|
|
|
|
Third |
|
|
|
|
Fourth |
|
2023-12-09 05:42:00 -07:00
|
|
|
{0:~ }|*5
|
2023-02-04 18:37:12 -07:00
|
|
|
:move +1 |
|
|
|
|
]])
|
|
|
|
|
|
|
|
-- here the display would show the last few lines scrolled down
|
|
|
|
feed('u')
|
|
|
|
feed(':<Esc>')
|
|
|
|
screen:expect([[
|
|
|
|
^First |
|
|
|
|
Second |
|
|
|
|
Third |
|
|
|
|
Fourth |
|
2023-12-09 05:42:00 -07:00
|
|
|
{0:~ }|*5
|
2023-02-04 18:37:12 -07:00
|
|
|
|
|
|
|
|
]])
|
|
|
|
end)
|
|
|
|
end)
|