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)
This commit is contained in:
bfredl
2024-03-22 11:02:52 +01:00
parent dc110cba3c
commit 0c59771e31
40 changed files with 793 additions and 711 deletions

View File

@@ -83,6 +83,8 @@ describe('startup', function()
local screen
screen = Screen.new(60, 7)
screen:attach()
-- not the same colors on windows for some reason
screen._default_attr_ids = nil
local id = fn.termopen({
nvim_prog,
'-u',
@@ -326,6 +328,9 @@ describe('startup', function()
local screen = Screen.new(25, 3)
-- Remote UI connected by --embed.
screen:attach()
-- TODO: a lot of tests in this file already use the new default color scheme.
-- once we do the batch update of tests to use it, remove this workarond
screen._default_attr_ids = nil
command([[echo has('ttyin') has('ttyout')]])
screen:expect([[
^ |
@@ -337,6 +342,7 @@ describe('startup', function()
it('in a TTY: has("ttyin")==1 has("ttyout")==1', function()
local screen = Screen.new(25, 4)
screen:attach()
screen._default_attr_ids = nil
if is_os('win') then
command([[set shellcmdflag=/s\ /c shellxquote=\"]])
end
@@ -428,6 +434,7 @@ describe('startup', function()
it('input from pipe (implicit) #7679', function()
local screen = Screen.new(25, 4)
screen:attach()
screen._default_attr_ids = nil
if is_os('win') then
command([[set shellcmdflag=/s\ /c shellxquote=\"]])
end
@@ -589,6 +596,7 @@ describe('startup', function()
local screen
screen = Screen.new(60, 6)
screen:attach()
screen._default_attr_ids = nil
local id = fn.termopen({
nvim_prog,
'-u',
@@ -1123,6 +1131,7 @@ describe('user config init', function()
local screen = Screen.new(50, 8)
screen:attach()
screen._default_attr_ids = nil
fn.termopen({ nvim_prog }, {
env = {
VIMRUNTIME = os.getenv('VIMRUNTIME'),