diff options
author | bfredl <bjorn.linse@gmail.com> | 2024-03-22 11:02:52 +0100 |
---|---|---|
committer | bfredl <bjorn.linse@gmail.com> | 2024-03-23 13:44:35 +0100 |
commit | 0c59771e314d6faaad69676985cd2a11c157ee37 (patch) | |
tree | b83d69de5f7a5877e26a4be8b882857a9477a437 /test/functional/core | |
parent | dc110cba3c0d48d7c9dbb91900f8be0cf6cf0c9b (diff) | |
download | rneovim-0c59771e314d6faaad69676985cd2a11c157ee37.tar.gz rneovim-0c59771e314d6faaad69676985cd2a11c157ee37.tar.bz2 rneovim-0c59771e314d6faaad69676985cd2a11c157ee37.zip |
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)
Diffstat (limited to 'test/functional/core')
-rw-r--r-- | test/functional/core/job_spec.lua | 2 | ||||
-rw-r--r-- | test/functional/core/main_spec.lua | 4 | ||||
-rw-r--r-- | test/functional/core/startup_spec.lua | 9 |
3 files changed, 12 insertions, 3 deletions
diff --git a/test/functional/core/job_spec.lua b/test/functional/core/job_spec.lua index 13f5f9a5e1..9e7f1faa47 100644 --- a/test/functional/core/job_spec.lua +++ b/test/functional/core/job_spec.lua @@ -1233,7 +1233,7 @@ describe('pty process teardown', function() screen:attach() screen:expect([[ ^ | - ~ |*4 + {1:~ }|*4 | ]]) end) diff --git a/test/functional/core/main_spec.lua b/test/functional/core/main_spec.lua index 9d8d64c82d..396ec2c79e 100644 --- a/test/functional/core/main_spec.lua +++ b/test/functional/core/main_spec.lua @@ -120,9 +120,9 @@ describe('command-line option', function() feed('i:cq<CR>') screen:expect([[ | - [Process exited 1] | + [Process exited 1]{2: } | |*5 - -- TERMINAL -- | + {5:-- TERMINAL --} | ]]) --[=[ Example of incorrect output: screen:expect([[ diff --git a/test/functional/core/startup_spec.lua b/test/functional/core/startup_spec.lua index cc58226f48..2e6649d16a 100644 --- a/test/functional/core/startup_spec.lua +++ b/test/functional/core/startup_spec.lua @@ -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'), |