Files
neovim/test/functional/legacy/arglist_spec.lua
bfredl 0c59771e31 refactor(tests): all screen tests should use highlights
This is the first installment of a multi-PR series significantly
refactoring how highlights are being specified.

The end goal is to have a base set of 20 ish most common highlights,
and then specific files only need to add more groups to that as needed.

As a complicating factor, we also want to migrate to the new default
color scheme eventually. But by sharing a base set, that future PR
will hopefully be a lot smaller since a lot of tests will be migrated
just simply by updating the base set in place.

As a first step, fix the anti-pattern than Screen defaults to ignoring
highlights. Highlights are integral part of the screen state, not
something "extra" which we only test "sometimes". For now, we still
allow opt-out via the intentionally ugly

  screen._default_attr_ids = nil

The end goal is to get rid of all of these eventually (which will be
easier as part of the color scheme migration)
2024-03-23 13:44:35 +01:00

51 lines
2.0 KiB
Lua

-- Test argument list commands
local helpers = require('test.functional.helpers')(after_each)
local Screen = require('test.functional.ui.screen')
local clear, command, eq = helpers.clear, helpers.command, helpers.eq
local expect_exit = helpers.expect_exit
local feed = helpers.feed
local pcall_err = helpers.pcall_err
describe('argument list commands', function()
before_each(clear)
it('quitting Vim with unedited files in the argument list throws E173', function()
command('set nomore')
command('args a b c')
eq('Vim(quit):E173: 2 more files to edit', pcall_err(command, 'quit'))
end)
it(':confirm quit with unedited files in arglist', function()
local screen = Screen.new(60, 6)
screen:attach()
command('set nomore')
command('args a b c')
feed(':confirm quit\n')
screen:expect([[
|
{1:~ }|
{3: }|
:confirm quit |
{6:2 more files to edit. Quit anyway?} |
{6:[Y]es, (N)o: }^ |
]])
feed('N')
screen:expect([[
^ |
{1:~ }|*4
|
]])
feed(':confirm quit\n')
screen:expect([[
|
{1:~ }|
{3: }|
:confirm quit |
{6:2 more files to edit. Quit anyway?} |
{6:[Y]es, (N)o: }^ |
]])
expect_exit(1000, feed, 'Y')
end)
end)