mirror of
https://github.com/neovim/neovim.git
synced 2025-11-17 15:51:32 +00:00
tests/ui: remove unnecessary screen:detach()
It is perfectly fine and expected to detach from the screen just by the UI disconnecting from nvim or exiting nvim. Just keep detach() in screen_basic_spec, to get some coverage of the detach method itself. This avoids hang on failure in many situations (though one could argue that detach() should be "fast", or at least "as fast as resize", which works in press-return already). Never use detach() just to change the size of the screen, try_resize() method exists for that specifically.
This commit is contained in:
@@ -15,10 +15,6 @@ describe("update_menu notification", function()
|
||||
screen:attach()
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
local function expect_sent(expected)
|
||||
screen:expect{condition=function()
|
||||
if screen.update_menu ~= expected then
|
||||
|
||||
@@ -963,9 +963,6 @@ describe("pty process teardown", function()
|
||||
|
|
||||
]])
|
||||
end)
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
it("does not prevent/delay exit. #4798 #4900", function()
|
||||
if helpers.pending_win32(pending) then return end
|
||||
|
||||
@@ -144,7 +144,6 @@ describe('eval-API', function()
|
||||
{5:~ }|
|
||||
|
|
||||
]])
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
it('cannot be called from sandbox', function()
|
||||
|
||||
@@ -121,10 +121,6 @@ describe('system()', function()
|
||||
screen:attach()
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
if iswin() then
|
||||
local function test_more()
|
||||
eq('root = true', eval([[get(split(system('"more" ".editorconfig"'), "\n"), 0, '')]]))
|
||||
|
||||
@@ -19,10 +19,6 @@ describe(":drop", function()
|
||||
command("set laststatus=2 shortmess-=F")
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
it("works like :e when called with only one window open", function()
|
||||
feed_command("drop tmp1.vim")
|
||||
screen:expect([[
|
||||
|
||||
@@ -13,10 +13,6 @@ describe(':highlight', function()
|
||||
screen:attach()
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
it('invalid color name', function()
|
||||
eq('Vim(highlight):E421: Color name or number not recognized: ctermfg=#181818',
|
||||
exc_exec("highlight normal ctermfg=#181818"))
|
||||
|
||||
@@ -14,9 +14,6 @@ describe('folding', function()
|
||||
screen = Screen.new(20, 8)
|
||||
screen:attach()
|
||||
end)
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
it('creation, opening, moving (to the end) and closing', function()
|
||||
insert([[
|
||||
|
||||
@@ -17,7 +17,10 @@ describe('search cmdline', function()
|
||||
screen = Screen.new(20, 3)
|
||||
screen:attach()
|
||||
screen:set_default_attr_ids({
|
||||
inc = {reverse = true}
|
||||
inc = {reverse = true},
|
||||
err = { foreground = Screen.colors.Grey100, background = Screen.colors.Red },
|
||||
more = { bold = true, foreground = Screen.colors.SeaGreen4 },
|
||||
tilde = { bold = true, foreground = Screen.colors.Blue1 },
|
||||
})
|
||||
end)
|
||||
|
||||
@@ -404,12 +407,7 @@ describe('search cmdline', function()
|
||||
end)
|
||||
|
||||
it('keeps the view after deleting a char from the search', function()
|
||||
screen:detach()
|
||||
screen = Screen.new(20, 6)
|
||||
screen:attach()
|
||||
screen:set_default_attr_ids({
|
||||
inc = {reverse = true},
|
||||
})
|
||||
screen:try_resize(20, 6)
|
||||
tenlines()
|
||||
|
||||
feed('/foo')
|
||||
@@ -445,14 +443,7 @@ describe('search cmdline', function()
|
||||
end)
|
||||
|
||||
it('restores original view after failed search', function()
|
||||
screen:detach()
|
||||
screen = Screen.new(40, 3)
|
||||
screen:attach()
|
||||
screen:set_default_attr_ids({
|
||||
inc = {reverse = true},
|
||||
err = { foreground = Screen.colors.Grey100, background = Screen.colors.Red },
|
||||
more = { bold = true, foreground = Screen.colors.SeaGreen4 },
|
||||
})
|
||||
screen:try_resize(40, 3)
|
||||
tenlines()
|
||||
feed('0')
|
||||
feed('/foo')
|
||||
@@ -481,15 +472,7 @@ describe('search cmdline', function()
|
||||
|
||||
it("CTRL-G with 'incsearch' and ? goes in the right direction", function()
|
||||
-- oldtest: Test_search_cmdline4().
|
||||
screen:detach()
|
||||
screen = Screen.new(40, 4)
|
||||
screen:attach()
|
||||
screen:set_default_attr_ids({
|
||||
inc = {reverse = true},
|
||||
err = { foreground = Screen.colors.Grey100, background = Screen.colors.Red },
|
||||
more = { bold = true, foreground = Screen.colors.SeaGreen4 },
|
||||
tilde = { bold = true, foreground = Screen.colors.Blue1 },
|
||||
})
|
||||
screen:try_resize(40, 4)
|
||||
command('enew!')
|
||||
funcs.setline(1, {' 1 the first', ' 2 the second', ' 3 the third'})
|
||||
command('set laststatus=0 shortmess+=s')
|
||||
|
||||
@@ -16,10 +16,6 @@ describe("'fillchars'", function()
|
||||
screen:attach()
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
local function shouldfail(val,errval)
|
||||
errval = errval or val
|
||||
eq('Vim(set):E474: Invalid argument: fillchars='..errval,
|
||||
@@ -100,10 +96,6 @@ describe("'listchars'", function()
|
||||
screen:attach()
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
it('is local to window', function()
|
||||
feed('i<tab><tab><tab><esc>')
|
||||
command('set laststatus=0')
|
||||
|
||||
@@ -25,10 +25,6 @@ describe(':Man', function()
|
||||
screen:attach()
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
it('clears backspaces from text and adds highlights', function()
|
||||
rawfeed([[
|
||||
ithis i<C-v><C-h>is<C-v><C-h>s a<C-v><C-h>a test
|
||||
|
||||
@@ -31,10 +31,6 @@ describe(':terminal mouse', function()
|
||||
]])
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
describe('when the terminal has focus', function()
|
||||
it('will exit focus on mouse-scroll', function()
|
||||
eq('t', eval('mode()'))
|
||||
|
||||
@@ -21,10 +21,6 @@ describe(':terminal scrollback', function()
|
||||
screen = thelpers.screen_setup(nil, nil, 30)
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
describe('when the limit is exceeded', function()
|
||||
before_each(function()
|
||||
local lines = {}
|
||||
@@ -406,8 +402,6 @@ describe("'scrollback' option", function()
|
||||
feed_data(nvim_dir..'/shell-test REP 31 line'..(iswin() and '\r' or '\n'))
|
||||
screen:expect{any='30: line '}
|
||||
retry(nil, nil, function() expect_lines(7) end)
|
||||
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
it('deletes lines (only) if necessary', function()
|
||||
@@ -464,8 +458,6 @@ describe("'scrollback' option", function()
|
||||
-- Verify off-screen state
|
||||
eq((iswin() and '36: line' or '35: line'), eval("getline(line('w0') - 1)"))
|
||||
eq((iswin() and '27: line' or '26: line'), eval("getline(line('w0') - 10)"))
|
||||
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
it('defaults to 10000 in :terminal buffers', function()
|
||||
|
||||
@@ -45,10 +45,6 @@ describe('TUI', function()
|
||||
child_session = helpers.connect(child_server)
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
-- Wait for mode in the child Nvim (avoid "typeahead race" #10826).
|
||||
local function wait_for_mode(mode)
|
||||
retry(nil, nil, function()
|
||||
|
||||
@@ -37,10 +37,6 @@ describe('Buffer highlighting', function()
|
||||
})
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
local add_highlight = curbufmeths.add_highlight
|
||||
local clear_namespace = curbufmeths.clear_namespace
|
||||
|
||||
|
||||
@@ -25,10 +25,6 @@ local function test_cmdline(linegrid)
|
||||
screen = new_screen({rgb=true, ext_cmdline=true, ext_linegrid=linegrid})
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
it('works', function()
|
||||
feed(':')
|
||||
screen:expect{grid=[[
|
||||
@@ -804,10 +800,6 @@ describe('cmdline redraw', function()
|
||||
screen = new_screen({rgb=true})
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
it('with timer', function()
|
||||
feed(':012345678901234567890123456789')
|
||||
screen:expect{grid=[[
|
||||
|
||||
@@ -13,10 +13,6 @@ describe('ui/cursor', function()
|
||||
screen:attach()
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
it("'guicursor' is published as a UI event", function()
|
||||
local expected_mode_info = {
|
||||
[1] = {
|
||||
|
||||
@@ -24,10 +24,6 @@ describe("folded lines", function()
|
||||
})
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
it("work with more than one signcolumn", function()
|
||||
command("set signcolumn=yes:9")
|
||||
feed("i<cr><esc>")
|
||||
|
||||
@@ -35,7 +35,6 @@ describe('highlight: `:syntax manual`', function()
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
os.remove('Xtest-functional-ui-highlight.tmp.vim')
|
||||
end)
|
||||
|
||||
@@ -97,10 +96,6 @@ describe('highlight defaults', function()
|
||||
command("set display-=msgsep")
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
it('window status bar', function()
|
||||
screen:set_default_attr_ids({
|
||||
[0] = {bold=true, foreground=Screen.colors.Blue},
|
||||
@@ -346,17 +341,10 @@ describe('highlight defaults', function()
|
||||
end)
|
||||
|
||||
describe('highlight', function()
|
||||
local screen
|
||||
|
||||
before_each(function()
|
||||
clear()
|
||||
screen = Screen.new(25,10)
|
||||
screen:attach()
|
||||
end)
|
||||
before_each(clear)
|
||||
|
||||
it('visual', function()
|
||||
screen:detach()
|
||||
screen = Screen.new(20,4)
|
||||
local screen = Screen.new(20,4)
|
||||
screen:attach()
|
||||
screen:set_default_attr_ids({
|
||||
[1] = {background = Screen.colors.LightGrey},
|
||||
@@ -389,8 +377,7 @@ describe('highlight', function()
|
||||
end)
|
||||
|
||||
it('cterm=standout gui=standout', function()
|
||||
screen:detach()
|
||||
screen = Screen.new(20,5)
|
||||
local screen = Screen.new(20,5)
|
||||
screen:attach()
|
||||
screen:set_default_attr_ids({
|
||||
[1] = {bold = true, foreground = Screen.colors.Blue1},
|
||||
@@ -413,8 +400,7 @@ describe('highlight', function()
|
||||
end)
|
||||
|
||||
it('strikethrough', function()
|
||||
screen:detach()
|
||||
screen = Screen.new(25,6)
|
||||
local screen = Screen.new(25,6)
|
||||
screen:attach()
|
||||
feed_command('syntax on')
|
||||
feed_command('syn keyword TmpKeyword foo')
|
||||
@@ -439,8 +425,7 @@ describe('highlight', function()
|
||||
end)
|
||||
|
||||
it('nocombine', function()
|
||||
screen:detach()
|
||||
screen = Screen.new(25,6)
|
||||
local screen = Screen.new(25,6)
|
||||
screen:set_default_attr_ids{
|
||||
[1] = {foreground = Screen.colors.SlateBlue, underline = true},
|
||||
[2] = {bold = true, foreground = Screen.colors.Blue1},
|
||||
@@ -487,6 +472,8 @@ describe('highlight', function()
|
||||
end)
|
||||
|
||||
it('guisp (special/undercurl)', function()
|
||||
local screen = Screen.new(25,10)
|
||||
screen:attach()
|
||||
feed_command('syntax on')
|
||||
feed_command('syn keyword TmpKeyword neovim')
|
||||
feed_command('syn keyword TmpKeyword1 special')
|
||||
@@ -542,10 +529,6 @@ describe("'listchars' highlight", function()
|
||||
screen:attach()
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
it("'cursorline' and 'cursorcolumn'", function()
|
||||
screen:set_default_attr_ids({
|
||||
[0] = {bold=true, foreground=Screen.colors.Blue},
|
||||
|
||||
@@ -556,7 +556,6 @@ describe(":substitute, 'inccommand' preserves undo", function()
|
||||
]])
|
||||
end
|
||||
end
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
it('with undolevels=2', function()
|
||||
@@ -647,7 +646,6 @@ describe(":substitute, 'inccommand' preserves undo", function()
|
||||
Already ...t change |
|
||||
]])
|
||||
end
|
||||
screen:detach()
|
||||
end
|
||||
end)
|
||||
|
||||
@@ -713,7 +711,6 @@ describe(":substitute, 'inccommand' preserves undo", function()
|
||||
Already ...t change |
|
||||
]])
|
||||
end
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
end)
|
||||
@@ -726,10 +723,6 @@ describe(":substitute, inccommand=split", function()
|
||||
common_setup(screen, "split", default_text .. default_text)
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
it("preserves 'modified' buffer flag", function()
|
||||
feed_command("set nomodified")
|
||||
feed(":%s/tw")
|
||||
@@ -1241,10 +1234,6 @@ describe("inccommand=nosplit", function()
|
||||
common_setup(screen, "nosplit", default_text .. default_text)
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
if screen then screen:detach() end
|
||||
end)
|
||||
|
||||
it("works with :smagic, :snomagic", function()
|
||||
feed_command("set hlsearch")
|
||||
insert("Line *.3.* here")
|
||||
@@ -1719,10 +1708,6 @@ describe("'inccommand' split windows", function()
|
||||
common_setup(screen, "split", default_text)
|
||||
end
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
it('work after more splits', function()
|
||||
refresh()
|
||||
|
||||
|
||||
@@ -40,10 +40,6 @@ describe('ui/mouse/input', function()
|
||||
]])
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
it('single left click moves cursor', function()
|
||||
feed('<LeftMouse><2,1>')
|
||||
screen:expect([[
|
||||
|
||||
@@ -21,10 +21,6 @@ describe("multibyte rendering", function()
|
||||
})
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
it("works with composed char at start of line", function()
|
||||
insert([[
|
||||
̊
|
||||
@@ -131,10 +127,6 @@ describe('multibyte rendering: statusline', function()
|
||||
command('set laststatus=2')
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
it('last char shows (multibyte)', function()
|
||||
command('set statusline=你好')
|
||||
screen:expect([[
|
||||
|
||||
@@ -37,10 +37,6 @@ describe('ext_multigrid', function()
|
||||
})
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
it('default initial screen', function()
|
||||
screen:expect{grid=[[
|
||||
## grid 1
|
||||
|
||||
@@ -40,10 +40,6 @@ describe('ui receives option updates', function()
|
||||
return defaults
|
||||
end
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
it("for defaults", function()
|
||||
local expected = reset()
|
||||
screen:expect(function()
|
||||
|
||||
@@ -31,7 +31,6 @@ describe("shell command :!", function()
|
||||
|
||||
after_each(function()
|
||||
child_session.feed_data("\3") -- Ctrl-C
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
it("displays output without LF/EOF. #4646 #4569 #3772", function()
|
||||
|
||||
@@ -26,10 +26,6 @@ describe('Signs', function()
|
||||
} )
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
describe(':sign place', function()
|
||||
it('allows signs with combining characters', function()
|
||||
feed('ia<cr>b<cr><esc>')
|
||||
|
||||
@@ -20,10 +20,6 @@ describe("'spell'", function()
|
||||
})
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
it('joins long lines #7937', function()
|
||||
feed_command('set spell')
|
||||
insert([[
|
||||
|
||||
@@ -22,10 +22,6 @@ describe('Screen', function()
|
||||
} )
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
describe("match and conceal", function()
|
||||
|
||||
before_each(function()
|
||||
|
||||
@@ -17,10 +17,6 @@ describe('ui/ext_tabline', function()
|
||||
end)
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
screen:detach()
|
||||
end)
|
||||
|
||||
it('publishes UI events', function()
|
||||
command("tabedit another-tab")
|
||||
|
||||
|
||||
Reference in New Issue
Block a user