mirror of
https://github.com/neovim/neovim.git
synced 2026-04-27 09:44:07 +00:00
tests/ui: add test for popupmenu redrawing in various situations
Many of these are handled by the compositor. Check that it causes no glitches.
This commit is contained in:
@@ -5,6 +5,7 @@ local source = helpers.source
|
||||
local insert = helpers.insert
|
||||
local meths = helpers.meths
|
||||
local command = helpers.command
|
||||
local funcs = helpers.funcs
|
||||
|
||||
describe('ui/ext_popupmenu', function()
|
||||
local screen
|
||||
@@ -368,7 +369,7 @@ describe('ui/ext_popupmenu', function()
|
||||
end)
|
||||
|
||||
|
||||
describe('popup placement', function()
|
||||
describe('builtin popupmenu', function()
|
||||
local screen
|
||||
before_each(function()
|
||||
clear()
|
||||
@@ -385,7 +386,8 @@ describe('popup placement', function()
|
||||
[2] = {bold = true},
|
||||
[3] = {reverse = true},
|
||||
[4] = {bold = true, reverse = true},
|
||||
[5] = {bold = true, foreground = Screen.colors.SeaGreen}
|
||||
[5] = {bold = true, foreground = Screen.colors.SeaGreen},
|
||||
[6] = {foreground = Screen.colors.Grey100, background = Screen.colors.Red},
|
||||
})
|
||||
end)
|
||||
|
||||
@@ -607,4 +609,574 @@ describe('popup placement', function()
|
||||
{2:-- }{5:match 1 of 3} |
|
||||
]])
|
||||
end)
|
||||
|
||||
it('works with split and scroll', function()
|
||||
screen:try_resize(60,14)
|
||||
command("split")
|
||||
command("set completeopt+=noinsert")
|
||||
command("set mouse=a")
|
||||
insert([[
|
||||
Lorem ipsum dolor sit amet, consectetur
|
||||
adipisicing elit, sed do eiusmod tempor
|
||||
incididunt ut labore et dolore magna aliqua.
|
||||
Ut enim ad minim veniam, quis nostrud
|
||||
exercitation ullamco laboris nisi ut aliquip ex
|
||||
ea commodo consequat. Duis aute irure dolor in
|
||||
reprehenderit in voluptate velit esse cillum
|
||||
dolore eu fugiat nulla pariatur. Excepteur sint
|
||||
occaecat cupidatat non proident, sunt in culpa
|
||||
qui officia deserunt mollit anim id est
|
||||
laborum.
|
||||
]])
|
||||
|
||||
screen:expect([[
|
||||
reprehenderit in voluptate velit esse cillum |
|
||||
dolore eu fugiat nulla pariatur. Excepteur sint |
|
||||
occaecat cupidatat non proident, sunt in culpa |
|
||||
qui officia deserunt mollit anim id est |
|
||||
laborum. |
|
||||
^ |
|
||||
{4:[No Name] [+] }|
|
||||
Lorem ipsum dolor sit amet, consectetur |
|
||||
adipisicing elit, sed do eiusmod tempor |
|
||||
incididunt ut labore et dolore magna aliqua. |
|
||||
Ut enim ad minim veniam, quis nostrud |
|
||||
exercitation ullamco laboris nisi ut aliquip ex |
|
||||
{3:[No Name] [+] }|
|
||||
|
|
||||
]])
|
||||
|
||||
feed('ggOEst <c-x><c-p>')
|
||||
screen:expect([[
|
||||
Est ^ |
|
||||
L{n: sunt }{s: }sit amet, consectetur |
|
||||
a{n: in }{s: }sed do eiusmod tempor |
|
||||
i{n: culpa }{s: }re et dolore magna aliqua. |
|
||||
U{n: qui }{s: }eniam, quis nostrud |
|
||||
e{n: officia }{s: }co laboris nisi ut aliquip ex |
|
||||
{4:[No}{n: deserunt }{s: }{4: }|
|
||||
L{n: mollit }{s: }sit amet, consectetur |
|
||||
a{n: anim }{s: }sed do eiusmod tempor |
|
||||
i{n: id }{s: }re et dolore magna aliqua. |
|
||||
U{n: est }{s: }eniam, quis nostrud |
|
||||
e{n: laborum }{c: }co laboris nisi ut aliquip ex |
|
||||
{3:[No}{s: Est }{c: }{3: }|
|
||||
{2:-- Keyword Local completion (^N^P) }{5:match 1 of 65} |
|
||||
]])
|
||||
|
||||
meths.input_mouse('wheel', 'down', '', 0, 9, 40)
|
||||
screen:expect([[
|
||||
Est ^ |
|
||||
L{n: sunt }{s: }sit amet, consectetur |
|
||||
a{n: in }{s: }sed do eiusmod tempor |
|
||||
i{n: culpa }{s: }re et dolore magna aliqua. |
|
||||
U{n: qui }{s: }eniam, quis nostrud |
|
||||
e{n: officia }{s: }co laboris nisi ut aliquip ex |
|
||||
{4:[No}{n: deserunt }{s: }{4: }|
|
||||
U{n: mollit }{s: }eniam, quis nostrud |
|
||||
e{n: anim }{s: }co laboris nisi ut aliquip ex |
|
||||
e{n: id }{s: }at. Duis aute irure dolor in |
|
||||
r{n: est }{s: }oluptate velit esse cillum |
|
||||
d{n: laborum }{c: }ulla pariatur. Excepteur sint |
|
||||
{3:[No}{s: Est }{c: }{3: }|
|
||||
{2:-- Keyword Local completion (^N^P) }{5:match 1 of 65} |
|
||||
]])
|
||||
|
||||
feed('e')
|
||||
screen:expect([[
|
||||
Est e^ |
|
||||
L{n: elit } sit amet, consectetur |
|
||||
a{n: eiusmod } sed do eiusmod tempor |
|
||||
i{n: et }ore et dolore magna aliqua. |
|
||||
U{n: enim }veniam, quis nostrud |
|
||||
e{n: exercitation }mco laboris nisi ut aliquip ex |
|
||||
{4:[No}{n: ex }{4: }|
|
||||
U{n: ea }veniam, quis nostrud |
|
||||
e{n: esse }mco laboris nisi ut aliquip ex |
|
||||
e{n: eu }uat. Duis aute irure dolor in |
|
||||
r{s: est }voluptate velit esse cillum |
|
||||
dolore eu fugiat nulla pariatur. Excepteur sint |
|
||||
{3:[No Name] [+] }|
|
||||
{2:-- Keyword Local completion (^N^P) }{5:match 1 of 65} |
|
||||
]])
|
||||
|
||||
meths.input_mouse('wheel', 'up', '', 0, 9, 40)
|
||||
screen:expect([[
|
||||
Est e^ |
|
||||
L{n: elit } sit amet, consectetur |
|
||||
a{n: eiusmod } sed do eiusmod tempor |
|
||||
i{n: et }ore et dolore magna aliqua. |
|
||||
U{n: enim }veniam, quis nostrud |
|
||||
e{n: exercitation }mco laboris nisi ut aliquip ex |
|
||||
{4:[No}{n: ex }{4: }|
|
||||
L{n: ea } sit amet, consectetur |
|
||||
a{n: esse } sed do eiusmod tempor |
|
||||
i{n: eu }ore et dolore magna aliqua. |
|
||||
U{s: est }veniam, quis nostrud |
|
||||
exercitation ullamco laboris nisi ut aliquip ex |
|
||||
{3:[No Name] [+] }|
|
||||
{2:-- Keyword Local completion (^N^P) }{5:match 1 of 65} |
|
||||
]])
|
||||
|
||||
feed('s')
|
||||
screen:expect([[
|
||||
Est es^ |
|
||||
L{n: esse } sit amet, consectetur |
|
||||
a{s: est } sed do eiusmod tempor |
|
||||
incididunt ut labore et dolore magna aliqua. |
|
||||
Ut enim ad minim veniam, quis nostrud |
|
||||
exercitation ullamco laboris nisi ut aliquip ex |
|
||||
{4:[No Name] [+] }|
|
||||
Lorem ipsum dolor sit amet, consectetur |
|
||||
adipisicing elit, sed do eiusmod tempor |
|
||||
incididunt ut labore et dolore magna aliqua. |
|
||||
Ut enim ad minim veniam, quis nostrud |
|
||||
exercitation ullamco laboris nisi ut aliquip ex |
|
||||
{3:[No Name] [+] }|
|
||||
{2:-- Keyword Local completion (^N^P) }{5:match 1 of 65} |
|
||||
]])
|
||||
|
||||
meths.input_mouse('wheel', 'down', '', 0, 9, 40)
|
||||
screen:expect([[
|
||||
Est es^ |
|
||||
L{n: esse } sit amet, consectetur |
|
||||
a{s: est } sed do eiusmod tempor |
|
||||
incididunt ut labore et dolore magna aliqua. |
|
||||
Ut enim ad minim veniam, quis nostrud |
|
||||
exercitation ullamco laboris nisi ut aliquip ex |
|
||||
{4:[No Name] [+] }|
|
||||
Ut enim ad minim veniam, quis nostrud |
|
||||
exercitation ullamco laboris nisi ut aliquip ex |
|
||||
ea commodo consequat. Duis aute irure dolor in |
|
||||
reprehenderit in voluptate velit esse cillum |
|
||||
dolore eu fugiat nulla pariatur. Excepteur sint |
|
||||
{3:[No Name] [+] }|
|
||||
{2:-- Keyword Local completion (^N^P) }{5:match 1 of 65} |
|
||||
]])
|
||||
|
||||
feed('<bs>')
|
||||
screen:expect([[
|
||||
Est e^ |
|
||||
L{n: elit } sit amet, consectetur |
|
||||
a{n: eiusmod } sed do eiusmod tempor |
|
||||
i{n: et }ore et dolore magna aliqua. |
|
||||
U{n: enim }veniam, quis nostrud |
|
||||
e{n: exercitation }mco laboris nisi ut aliquip ex |
|
||||
{4:[No}{n: ex }{4: }|
|
||||
U{n: ea }veniam, quis nostrud |
|
||||
e{n: esse }mco laboris nisi ut aliquip ex |
|
||||
e{n: eu }uat. Duis aute irure dolor in |
|
||||
r{s: est }voluptate velit esse cillum |
|
||||
dolore eu fugiat nulla pariatur. Excepteur sint |
|
||||
{3:[No Name] [+] }|
|
||||
{2:-- Keyword Local completion (^N^P) }{5:match 1 of 65} |
|
||||
]])
|
||||
|
||||
feed('<c-p>')
|
||||
screen:expect([[
|
||||
Est eu^ |
|
||||
L{n: elit } sit amet, consectetur |
|
||||
a{n: eiusmod } sed do eiusmod tempor |
|
||||
i{n: et }ore et dolore magna aliqua. |
|
||||
U{n: enim }veniam, quis nostrud |
|
||||
e{n: exercitation }mco laboris nisi ut aliquip ex |
|
||||
{4:[No}{n: ex }{4: }|
|
||||
U{n: ea }veniam, quis nostrud |
|
||||
e{n: esse }mco laboris nisi ut aliquip ex |
|
||||
e{s: eu }uat. Duis aute irure dolor in |
|
||||
r{n: est }voluptate velit esse cillum |
|
||||
dolore eu fugiat nulla pariatur. Excepteur sint |
|
||||
{3:[No Name] [+] }|
|
||||
{2:-- Keyword Local completion (^N^P) }{5:match 22 of 65} |
|
||||
]])
|
||||
|
||||
meths.input_mouse('wheel', 'down', '', 0, 9, 40)
|
||||
screen:expect([[
|
||||
Est eu^ |
|
||||
L{n: elit } sit amet, consectetur |
|
||||
a{n: eiusmod } sed do eiusmod tempor |
|
||||
i{n: et }ore et dolore magna aliqua. |
|
||||
U{n: enim }veniam, quis nostrud |
|
||||
e{n: exercitation }mco laboris nisi ut aliquip ex |
|
||||
{4:[No}{n: ex }{4: }|
|
||||
r{n: ea }voluptate velit esse cillum |
|
||||
d{n: esse }nulla pariatur. Excepteur sint |
|
||||
o{s: eu }t non proident, sunt in culpa |
|
||||
q{n: est }unt mollit anim id est |
|
||||
laborum. |
|
||||
{3:[No Name] [+] }|
|
||||
{2:-- Keyword Local completion (^N^P) }{5:match 22 of 65} |
|
||||
]])
|
||||
|
||||
|
||||
funcs.complete(4, {'ea', 'eeeeeeeeeeeeeeeeee', 'ei', 'eo', 'eu', 'ey', 'eå', 'eä', 'eö'})
|
||||
screen:expect([[
|
||||
Est eu^ |
|
||||
{s: ea }t amet, consectetur |
|
||||
{n: eeeeeeeeeeeeeeeeee }d do eiusmod tempor |
|
||||
{n: ei } et dolore magna aliqua. |
|
||||
{n: eo }iam, quis nostrud |
|
||||
{n: eu } laboris nisi ut aliquip ex |
|
||||
{4:[N}{n: ey }{4: }|
|
||||
{n: eå }uptate velit esse cillum |
|
||||
{n: eä }la pariatur. Excepteur sint |
|
||||
{n: eö }on proident, sunt in culpa |
|
||||
qui officia deserunt mollit anim id est |
|
||||
laborum. |
|
||||
{3:[No Name] [+] }|
|
||||
{2:-- Keyword Local completion (^N^P) }{5:match 1 of 9} |
|
||||
]])
|
||||
|
||||
funcs.complete(4, {'ea', 'eee', 'ei', 'eo', 'eu', 'ey', 'eå', 'eä', 'eö'})
|
||||
screen:expect([[
|
||||
Est eu^ |
|
||||
{s: ea }r sit amet, consectetur |
|
||||
{n: eee }, sed do eiusmod tempor |
|
||||
{n: ei }bore et dolore magna aliqua. |
|
||||
{n: eo } veniam, quis nostrud |
|
||||
{n: eu }amco laboris nisi ut aliquip ex |
|
||||
{4:[N}{n: ey }{4: }|
|
||||
{n: eå } voluptate velit esse cillum |
|
||||
{n: eä } nulla pariatur. Excepteur sint |
|
||||
{n: eö }at non proident, sunt in culpa |
|
||||
qui officia deserunt mollit anim id est |
|
||||
laborum. |
|
||||
{3:[No Name] [+] }|
|
||||
{2:-- INSERT --} |
|
||||
]])
|
||||
|
||||
feed('<c-n>')
|
||||
screen:expect([[
|
||||
Esteee^ |
|
||||
{n: ea }r sit amet, consectetur |
|
||||
{s: eee }, sed do eiusmod tempor |
|
||||
{n: ei }bore et dolore magna aliqua. |
|
||||
{n: eo } veniam, quis nostrud |
|
||||
{n: eu }amco laboris nisi ut aliquip ex |
|
||||
{4:[N}{n: ey }{4: }|
|
||||
{n: eå } voluptate velit esse cillum |
|
||||
{n: eä } nulla pariatur. Excepteur sint |
|
||||
{n: eö }at non proident, sunt in culpa |
|
||||
qui officia deserunt mollit anim id est |
|
||||
laborum. |
|
||||
{3:[No Name] [+] }|
|
||||
{2:-- INSERT --} |
|
||||
]])
|
||||
|
||||
funcs.complete(6, {'foo', 'bar'})
|
||||
screen:expect([[
|
||||
Esteee^ |
|
||||
Lo{s: foo }sit amet, consectetur |
|
||||
ad{n: bar }sed do eiusmod tempor |
|
||||
incididunt ut labore et dolore magna aliqua. |
|
||||
Ut enim ad minim veniam, quis nostrud |
|
||||
exercitation ullamco laboris nisi ut aliquip ex |
|
||||
{4:[No Name] [+] }|
|
||||
reprehenderit in voluptate velit esse cillum |
|
||||
dolore eu fugiat nulla pariatur. Excepteur sint |
|
||||
occaecat cupidatat non proident, sunt in culpa |
|
||||
qui officia deserunt mollit anim id est |
|
||||
laborum. |
|
||||
{3:[No Name] [+] }|
|
||||
{2:-- INSERT --} |
|
||||
]])
|
||||
|
||||
feed('<c-y>')
|
||||
screen:expect([[
|
||||
Esteefoo^ |
|
||||
Lorem ipsum dolor sit amet, consectetur |
|
||||
adipisicing elit, sed do eiusmod tempor |
|
||||
incididunt ut labore et dolore magna aliqua. |
|
||||
Ut enim ad minim veniam, quis nostrud |
|
||||
exercitation ullamco laboris nisi ut aliquip ex |
|
||||
{4:[No Name] [+] }|
|
||||
reprehenderit in voluptate velit esse cillum |
|
||||
dolore eu fugiat nulla pariatur. Excepteur sint |
|
||||
occaecat cupidatat non proident, sunt in culpa |
|
||||
qui officia deserunt mollit anim id est |
|
||||
laborum. |
|
||||
{3:[No Name] [+] }|
|
||||
{2:-- INSERT --} |
|
||||
]])
|
||||
end)
|
||||
|
||||
it('can be moved due to wrap or resize', function()
|
||||
feed('isome long prefix before the ')
|
||||
command("set completeopt+=noinsert,noselect")
|
||||
command("set linebreak")
|
||||
funcs.complete(29, {'word', 'choice', 'text', 'thing'})
|
||||
screen:expect([[
|
||||
some long prefix before the ^ |
|
||||
{1:~ }{n: word }|
|
||||
{1:~ }{n: choice}|
|
||||
{1:~ }{n: text }|
|
||||
{1:~ }{n: thing }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{2:-- INSERT --} |
|
||||
]])
|
||||
|
||||
feed('<c-p>')
|
||||
screen:expect([[
|
||||
some long prefix before the |
|
||||
thing^ |
|
||||
{n:word }{1: }|
|
||||
{n:choice }{1: }|
|
||||
{n:text }{1: }|
|
||||
{s:thing }{1: }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{2:-- INSERT --} |
|
||||
]])
|
||||
|
||||
feed('<c-p>')
|
||||
screen:expect([[
|
||||
some long prefix before the text|
|
||||
{1:^~ }{n: word }|
|
||||
{1:~ }{n: choice}|
|
||||
{1:~ }{s: text }|
|
||||
{1:~ }{n: thing }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{2:-- INSERT --} |
|
||||
]])
|
||||
|
||||
screen:try_resize(30,8)
|
||||
screen:expect([[
|
||||
some long prefix before the |
|
||||
text^ |
|
||||
{n:word }{1: }|
|
||||
{n:choice }{1: }|
|
||||
{s:text }{1: }|
|
||||
{n:thing }{1: }|
|
||||
{1:~ }|
|
||||
{2:-- INSERT --} |
|
||||
]])
|
||||
|
||||
screen:try_resize(50,8)
|
||||
screen:expect([[
|
||||
some long prefix before the text^ |
|
||||
{1:~ }{n: word }{1: }|
|
||||
{1:~ }{n: choice }{1: }|
|
||||
{1:~ }{s: text }{1: }|
|
||||
{1:~ }{n: thing }{1: }|
|
||||
{1:~ }|
|
||||
{1:~ }|
|
||||
{2:-- INSERT --} |
|
||||
]])
|
||||
end)
|
||||
|
||||
it('can be moved due to wrap or resize', function()
|
||||
command("set rl")
|
||||
feed('isome rightleft ')
|
||||
screen:expect([[
|
||||
^ tfelthgir emos|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{2:-- INSERT --} |
|
||||
]])
|
||||
|
||||
command("set completeopt+=noinsert,noselect")
|
||||
funcs.complete(16, {'word', 'choice', 'text', 'thing'})
|
||||
screen:expect([[
|
||||
^ tfelthgir emos|
|
||||
{1: }{n: drow}{1: ~}|
|
||||
{1: }{n: eciohc}{1: ~}|
|
||||
{1: }{n: txet}{1: ~}|
|
||||
{1: }{n: gniht}{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{2:-- INSERT --} |
|
||||
]])
|
||||
|
||||
feed('<c-n>')
|
||||
screen:expect([[
|
||||
^ drow tfelthgir emos|
|
||||
{1: }{s: drow}{1: ~}|
|
||||
{1: }{n: eciohc}{1: ~}|
|
||||
{1: }{n: txet}{1: ~}|
|
||||
{1: }{n: gniht}{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{2:-- INSERT --} |
|
||||
]])
|
||||
|
||||
feed('<c-y>')
|
||||
screen:expect([[
|
||||
^ drow tfelthgir emos|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{1: ~}|
|
||||
{2:-- INSERT --} |
|
||||
]])
|
||||
end)
|
||||
|
||||
it('works with multiline messages', function()
|
||||
screen:try_resize(40,8)
|
||||
feed('ixx<cr>')
|
||||
command('imap <f2> <cmd>echoerr "very"\\|echoerr "much"\\|echoerr "error"<cr>')
|
||||
funcs.complete(1, {'word', 'choice', 'text', 'thing'})
|
||||
screen:expect([[
|
||||
xx |
|
||||
word^ |
|
||||
{s:word }{1: }|
|
||||
{n:choice }{1: }|
|
||||
{n:text }{1: }|
|
||||
{n:thing }{1: }|
|
||||
{1:~ }|
|
||||
{2:-- INSERT --} |
|
||||
]])
|
||||
|
||||
feed('<f2>')
|
||||
screen:expect([[
|
||||
xx |
|
||||
word |
|
||||
{s:word }{1: }|
|
||||
{4: }|
|
||||
{6:very} |
|
||||
{6:much} |
|
||||
{6:error} |
|
||||
{5:Press ENTER or type command to continue}^ |
|
||||
]])
|
||||
|
||||
feed('<cr>')
|
||||
screen:expect([[
|
||||
xx |
|
||||
word^ |
|
||||
{s:word }{1: }|
|
||||
{n:choice }{1: }|
|
||||
{n:text }{1: }|
|
||||
{n:thing }{1: }|
|
||||
{1:~ }|
|
||||
{2:-- INSERT --} |
|
||||
]])
|
||||
|
||||
feed('<c-n>')
|
||||
screen:expect([[
|
||||
xx |
|
||||
choice^ |
|
||||
{n:word }{1: }|
|
||||
{s:choice }{1: }|
|
||||
{n:text }{1: }|
|
||||
{n:thing }{1: }|
|
||||
{1:~ }|
|
||||
{2:-- INSERT --} |
|
||||
]])
|
||||
|
||||
command("split")
|
||||
screen:expect([[
|
||||
xx |
|
||||
choice^ |
|
||||
{n:word }{1: }|
|
||||
{s:choice }{4: }|
|
||||
{n:text } |
|
||||
{n:thing } |
|
||||
{3:[No Name] [+] }|
|
||||
{2:-- INSERT --} |
|
||||
]])
|
||||
|
||||
meths.input_mouse('wheel', 'down', '', 0, 6, 15)
|
||||
screen:expect([[
|
||||
xx |
|
||||
choice^ |
|
||||
{n:word }{1: }|
|
||||
{s:choice }{4: }|
|
||||
{n:text } |
|
||||
{n:thing }{1: }|
|
||||
{3:[No Name] [+] }|
|
||||
{2:-- INSERT --} |
|
||||
]])
|
||||
end)
|
||||
|
||||
|
||||
end)
|
||||
|
||||
Reference in New Issue
Block a user