diff options
Diffstat (limited to 'test')
| -rw-r--r-- | test/functional/ui/highlight_spec.lua | 4 | ||||
| -rw-r--r-- | test/functional/ui/mouse_spec.lua | 23 | ||||
| -rw-r--r-- | test/functional/ui/screen.lua | 33 | 
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 | 
