aboutsummaryrefslogtreecommitdiff
path: root/test/functional/legacy/prompt_buffer_spec.lua
diff options
context:
space:
mode:
Diffstat (limited to 'test/functional/legacy/prompt_buffer_spec.lua')
-rw-r--r--test/functional/legacy/prompt_buffer_spec.lua165
1 files changed, 76 insertions, 89 deletions
diff --git a/test/functional/legacy/prompt_buffer_spec.lua b/test/functional/legacy/prompt_buffer_spec.lua
index 5c3f8a6f8c..e4810feedb 100644
--- a/test/functional/legacy/prompt_buffer_spec.lua
+++ b/test/functional/legacy/prompt_buffer_spec.lua
@@ -4,8 +4,9 @@ local feed = helpers.feed
local source = helpers.source
local clear = helpers.clear
local command = helpers.command
+local expect = helpers.expect
local poke_eventloop = helpers.poke_eventloop
-local meths = helpers.meths
+local api = helpers.api
local eq = helpers.eq
local neq = helpers.neq
@@ -57,14 +58,10 @@ describe('prompt buffer', function()
]])
screen:expect([[
cmd: ^ |
- ~ |
- ~ |
- ~ |
+ ~ |*3
[Prompt] [+] |
other buffer |
- ~ |
- ~ |
- ~ |
+ ~ |*3
-- INSERT -- |
]])
end
@@ -76,7 +73,7 @@ describe('prompt buffer', function()
-- oldtest: Test_prompt_basic()
it('works', function()
source_script()
- feed("hello\n")
+ feed('hello\n')
screen:expect([[
cmd: hello |
Command: "hello" |
@@ -84,22 +81,13 @@ describe('prompt buffer', function()
cmd: ^ |
[Prompt] |
other buffer |
- ~ |
- ~ |
- ~ |
+ ~ |*3
-- INSERT -- |
]])
- feed("exit\n")
+ feed('exit\n')
screen:expect([[
^other buffer |
- ~ |
- ~ |
- ~ |
- ~ |
- ~ |
- ~ |
- ~ |
- ~ |
+ ~ |*8
|
]])
end)
@@ -107,69 +95,46 @@ describe('prompt buffer', function()
-- oldtest: Test_prompt_editing()
it('editing', function()
source_script()
- feed("hello<BS><BS>")
+ feed('hello<BS><BS>')
screen:expect([[
cmd: hel^ |
- ~ |
- ~ |
- ~ |
+ ~ |*3
[Prompt] [+] |
other buffer |
- ~ |
- ~ |
- ~ |
+ ~ |*3
-- INSERT -- |
]])
- feed("<Left><Left><Left><BS>-")
+ feed('<Left><Left><Left><BS>-')
screen:expect([[
cmd: -^hel |
- ~ |
- ~ |
- ~ |
+ ~ |*3
[Prompt] [+] |
other buffer |
- ~ |
- ~ |
- ~ |
+ ~ |*3
-- INSERT -- |
]])
- feed("<C-O>lz")
+ feed('<C-O>lz')
screen:expect([[
cmd: -hz^el |
- ~ |
- ~ |
- ~ |
+ ~ |*3
[Prompt] [+] |
other buffer |
- ~ |
- ~ |
- ~ |
+ ~ |*3
-- INSERT -- |
]])
- feed("<End>x")
+ feed('<End>x')
screen:expect([[
cmd: -hzelx^ |
- ~ |
- ~ |
- ~ |
+ ~ |*3
[Prompt] [+] |
other buffer |
- ~ |
- ~ |
- ~ |
+ ~ |*3
-- INSERT -- |
]])
- feed("<C-U>exit\n")
+ feed('<C-U>exit\n')
screen:expect([[
^other buffer |
- ~ |
- ~ |
- ~ |
- ~ |
- ~ |
- ~ |
- ~ |
- ~ |
+ ~ |*8
|
]])
end)
@@ -177,43 +142,33 @@ describe('prompt buffer', function()
-- oldtest: Test_prompt_switch_windows()
it('switch windows', function()
source_script()
- feed("<C-O>:call SwitchWindows()<CR>")
- screen:expect{grid=[[
+ feed('<C-O>:call SwitchWindows()<CR>')
+ screen:expect {
+ grid = [[
cmd: |
- ~ |
- ~ |
- ~ |
+ ~ |*3
[Prompt] [+] |
^other buffer |
- ~ |
- ~ |
- ~ |
+ ~ |*3
|
- ]]}
- feed("<C-O>:call SwitchWindows()<CR>")
+ ]],
+ }
+ feed('<C-O>:call SwitchWindows()<CR>')
screen:expect([[
cmd: ^ |
- ~ |
- ~ |
- ~ |
+ ~ |*3
[Prompt] [+] |
other buffer |
- ~ |
- ~ |
- ~ |
+ ~ |*3
-- INSERT -- |
]])
- feed("<Esc>")
+ feed('<Esc>')
screen:expect([[
cmd:^ |
- ~ |
- ~ |
- ~ |
+ ~ |*3
[Prompt] [+] |
other buffer |
- ~ |
- ~ |
- ~ |
+ ~ |*3
|
]])
end)
@@ -226,12 +181,12 @@ describe('prompt buffer', function()
call timer_start(0, {-> nvim_buf_set_lines(s:buf, -1, -1, 0, ['walrus'])})
]]
poke_eventloop()
- eq({ mode = 'i', blocking = false }, meths.get_mode())
+ eq({ mode = 'i', blocking = false }, api.nvim_get_mode())
end)
-- oldtest: Test_prompt_appending_while_hidden()
it('accessing hidden prompt buffer does not start insert mode', function()
- local prev_win = meths.get_current_win()
+ local prev_win = api.nvim_get_current_win()
source([[
new prompt
set buftype=prompt
@@ -251,16 +206,48 @@ describe('prompt buffer', function()
endfunc
]])
feed('asomething<CR>')
- eq('something', meths.get_var('entered'))
- neq(prev_win, meths.get_current_win())
+ eq('something', api.nvim_get_var('entered'))
+ neq(prev_win, api.nvim_get_current_win())
feed('exit<CR>')
- eq(prev_win, meths.get_current_win())
- eq({ mode = 'n', blocking = false }, meths.get_mode())
+ eq(prev_win, api.nvim_get_current_win())
+ eq({ mode = 'n', blocking = false }, api.nvim_get_mode())
command('call DoAppend()')
- eq({ mode = 'n', blocking = false }, meths.get_mode())
+ eq({ mode = 'n', blocking = false }, api.nvim_get_mode())
feed('i')
- eq({ mode = 'i', blocking = false }, meths.get_mode())
+ eq({ mode = 'i', blocking = false }, api.nvim_get_mode())
command('call DoAppend()')
- eq({ mode = 'i', blocking = false }, meths.get_mode())
+ eq({ mode = 'i', blocking = false }, api.nvim_get_mode())
+ end)
+
+ -- oldtest: Test_prompt_leave_modify_hidden()
+ it('modifying hidden buffer does not prevent prompt buffer mode change', function()
+ source([[
+ file hidden
+ set bufhidden=hide
+ enew
+ new prompt
+ set buftype=prompt
+
+ inoremap <buffer> w <Cmd>wincmd w<CR>
+ inoremap <buffer> q <Cmd>bwipe!<CR>
+ autocmd BufLeave prompt call appendbufline('hidden', '$', 'Leave')
+ autocmd BufEnter prompt call appendbufline('hidden', '$', 'Enter')
+ autocmd BufWinLeave prompt call appendbufline('hidden', '$', 'Close')
+ ]])
+ feed('a')
+ eq({ mode = 'i', blocking = false }, api.nvim_get_mode())
+ feed('w')
+ eq({ mode = 'n', blocking = false }, api.nvim_get_mode())
+ feed('<C-W>w')
+ eq({ mode = 'i', blocking = false }, api.nvim_get_mode())
+ feed('q')
+ eq({ mode = 'n', blocking = false }, api.nvim_get_mode())
+ command('bwipe!')
+ expect([[
+
+ Leave
+ Enter
+ Leave
+ Close]])
end)
end)