aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/functional/ui/highlight_spec.lua4
-rw-r--r--test/functional/ui/mouse_spec.lua23
-rw-r--r--test/functional/ui/screen.lua33
3 files changed, 31 insertions, 29 deletions
diff --git a/test/functional/ui/highlight_spec.lua b/test/functional/ui/highlight_spec.lua
index 15d5839ca5..417c27db04 100644
--- a/test/functional/ui/highlight_spec.lua
+++ b/test/functional/ui/highlight_spec.lua
@@ -42,6 +42,8 @@ describe('Default highlight groups', function()
clear()
screen = Screen.new()
screen:attach()
+ --ignore highligting of ~-lines
+ screen:set_default_attr_ignore( {{bold=true, foreground=hlgroup_colors.NonText}} )
end)
after_each(function()
@@ -52,8 +54,6 @@ describe('Default highlight groups', function()
[1] = {reverse = true, bold = true}, -- StatusLine
[2] = {reverse = true} -- StatusLineNC
})
- --ignore highligting of ~-lines
- screen:set_default_attr_ignore( {{}, {bold=true, foreground=hlgroup_colors.NonText}} )
execute('sp', 'vsp', 'vsp')
screen:expect([[
^ {2:|} {2:|} |
diff --git a/test/functional/ui/mouse_spec.lua b/test/functional/ui/mouse_spec.lua
index 9530e13453..77e6be45ed 100644
--- a/test/functional/ui/mouse_spec.lua
+++ b/test/functional/ui/mouse_spec.lua
@@ -8,6 +8,7 @@ describe('Mouse input', function()
setup(function()
hlgroup_colors = {
+ NonText = nvim('name_to_color', 'Blue'),
Visual = nvim('name_to_color', 'LightGrey'),
}
end)
@@ -21,8 +22,10 @@ describe('Mouse input', function()
screen = Screen.new(25, 5)
screen:attach()
screen:set_default_attr_ids({
- [1] = {background = hlgroup_colors.Visual}
+ [1] = {background = hlgroup_colors.Visual},
+ [2] = {bold = true}
})
+ screen:set_default_attr_ignore( {{bold=true, foreground=hlgroup_colors.NonText}} )
feed('itesting<cr>mouse<cr>support and selection<esc>')
screen:expect([[
testing |
@@ -72,7 +75,7 @@ describe('Mouse input', function()
mo{1:us}^ |
support and selection |
~ |
- -- VISUAL -- |
+ {2:-- VISUAL --} |
]])
feed('<LeftDrag><2,2>')
screen:expect([[
@@ -80,7 +83,7 @@ describe('Mouse input', function()
mo{1:use } |
{1:su}^port and selection |
~ |
- -- VISUAL -- |
+ {2:-- VISUAL --} |
]])
feed('<LeftDrag><0,0>')
screen:expect([[
@@ -88,7 +91,7 @@ describe('Mouse input', function()
{1:mou}se |
support and selection |
~ |
- -- VISUAL -- |
+ {2:-- VISUAL --} |
]])
end)
@@ -99,7 +102,7 @@ describe('Mouse input', function()
mouse |
{1:suppor}^ and selection |
~ |
- -- VISUAL -- |
+ {2:-- VISUAL --} |
]])
end)
@@ -110,7 +113,7 @@ describe('Mouse input', function()
mouse |
{1:su}^{1:port and selection } |
~ |
- -- VISUAL LINE -- |
+ {2:-- VISUAL LINE --} |
]])
end)
@@ -121,7 +124,7 @@ describe('Mouse input', function()
mouse |
su^port and selection |
~ |
- -- VISUAL BLOCK -- |
+ {2:-- VISUAL BLOCK --} |
]])
end)
@@ -140,7 +143,7 @@ describe('Mouse input', function()
{1:mouse } |
{1:su}^port and selection |
~ |
- -- VISUAL -- |
+ {2:-- VISUAL --} |
]])
end)
@@ -153,7 +156,7 @@ describe('Mouse input', function()
ing |
Press ENTER or type comma|
nd to continue^ |
- ]])
+ ]],nil,true)
feed('<cr>')
end)
@@ -171,6 +174,8 @@ describe('Mouse input', function()
]])
screen:try_resize(53, 14)
execute('sp', 'vsp')
+ screen:set_default_attr_ignore( {{bold=true, foreground=hlgroup_colors.NonText},
+ {reverse=true}, {bold=true, reverse=true}} )
screen:expect([[
lines |lines |
to |to |
diff --git a/test/functional/ui/screen.lua b/test/functional/ui/screen.lua
index 4a51ef278e..8baae750a6 100644
--- a/test/functional/ui/screen.lua
+++ b/test/functional/ui/screen.lua
@@ -158,19 +158,11 @@ function Screen:expect(expected, attr_ids, attr_ignore)
table.insert(expected_rows, row)
end
local ids = attr_ids or self._default_attr_ids
- if attr_ignore == nil and self._default_attr_ignore ~= nil then
- attr_ignore = {}
- -- don't ignore something we specified in attr_ids
- for i,a in pairs(self._default_attr_ignore) do
- if attr_index(ids, a) == nil then
- table.insert(attr_ignore, a)
- end
- end
- end
+ local ignore = attr_ignore or self._default_attr_ignore
self:wait(function()
for i = 1, self._height do
local expected_row = expected_rows[i]
- local actual_row = self:_row_repr(self._rows[i], ids, attr_ignore)
+ local actual_row = self:_row_repr(self._rows[i], ids, ignore)
if expected_row ~= actual_row then
return 'Row '..tostring(i)..' didnt match.\nExpected: "'..
expected_row..'"\nActual: "'..actual_row..'"'
@@ -417,12 +409,16 @@ function Screen:snapshot_util(attrs, ignore)
end
end
- for i = 1, self._height do
- local row = self._rows[i]
- for j = 1, self._width do
- local attr = row[j].attrs
- if attr_index(attrs, attr) == nil and attr_index(ignore, attr) == nil then
- table.insert(attrs, attr)
+ if ignore ~= true then
+ for i = 1, self._height do
+ local row = self._rows[i]
+ for j = 1, self._width do
+ local attr = row[j].attrs
+ if attr_index(attrs, attr) == nil and attr_index(ignore, attr) == nil then
+ if not equal_attrs(attr, {}) then
+ table.insert(attrs, attr)
+ end
+ end
end
end
end
@@ -468,7 +464,7 @@ function backward_find_meaningful(tbl, from)
return from
end
-function get_attr_id(attr_ids, attr_ignore, attrs)
+function get_attr_id(attr_ids, ignore, attrs)
if not attr_ids then
return
end
@@ -477,7 +473,8 @@ function get_attr_id(attr_ids, attr_ignore, attrs)
return id
end
end
- if attr_ignore == nil or attr_index(attr_ignore, attrs) ~= nil then
+ if equal_attrs(attrs, {}) or
+ ignore == true or attr_index(ignore, attrs) ~= nil then
-- ignore this attrs
return nil
end