aboutsummaryrefslogtreecommitdiff
path: root/test/functional/legacy/051_highlight_spec.lua
diff options
context:
space:
mode:
Diffstat (limited to 'test/functional/legacy/051_highlight_spec.lua')
-rw-r--r--test/functional/legacy/051_highlight_spec.lua73
1 files changed, 31 insertions, 42 deletions
diff --git a/test/functional/legacy/051_highlight_spec.lua b/test/functional/legacy/051_highlight_spec.lua
index ef392d8c67..2ef74196ee 100644
--- a/test/functional/legacy/051_highlight_spec.lua
+++ b/test/functional/legacy/051_highlight_spec.lua
@@ -1,11 +1,12 @@
--- vim: set foldmethod=marker foldmarker=[[,]] :
-- Tests for ":highlight".
local Screen = require('test.functional.ui.screen')
local helpers = require('test.functional.helpers')(after_each)
local clear, feed = helpers.clear, helpers.feed
-local execute, expect = helpers.execute, helpers.expect
+local command, expect = helpers.command, helpers.expect
+local eq = helpers.eq
local wait = helpers.wait
+local exc_exec = helpers.exc_exec
if helpers.pending_win32(pending) then return end
@@ -16,7 +17,8 @@ describe(':highlight', function()
local screen = Screen.new(35, 10)
screen:attach()
-- Basic test if ":highlight" doesn't crash
- execute('highlight')
+ command('set more')
+ feed(':highlight<CR>')
-- FIXME(tarruda): We need to be sure the prompt is displayed before
-- continuing, or risk a race condition where some of the following input
-- is discarded resulting in test failure
@@ -34,65 +36,52 @@ describe(':highlight', function()
]])
feed('q')
wait() -- wait until we're back to normal
- execute('hi Search')
+ command('hi Search')
+ command('hi Normal')
-- Test setting colors.
-- Test clearing one color and all doesn't generate error or warning
- execute('hi NewGroup cterm=italic ctermfg=DarkBlue ctermbg=Grey gui=NONE guifg=#00ff00 guibg=Cyan')
- execute('hi Group2 cterm=NONE')
- execute('hi Group3 cterm=bold')
- execute('redir! @a')
- execute('hi NewGroup')
- execute('hi Group2')
- execute('hi Group3')
- execute('hi clear NewGroup')
- execute('hi NewGroup')
- execute('hi Group2')
- execute('hi Group2 NONE')
- execute('hi Group2')
- execute('hi clear')
- execute('hi Group3')
- execute([[hi Crash cterm='asdf]])
- execute('redir END')
+ command('hi NewGroup cterm=italic ctermfg=DarkBlue ctermbg=Grey gui=NONE guifg=#00ff00 guibg=Cyan')
+ command('hi Group2 cterm=NONE')
+ command('hi Group3 cterm=bold')
+ command('redir! @a')
+ command('hi NewGroup')
+ command('hi Group2')
+ command('hi Group3')
+ command('hi clear NewGroup')
+ command('hi NewGroup')
+ command('hi Group2')
+ command('hi Group2 NONE')
+ command('hi Group2')
+ command('hi clear')
+ command('hi Group3')
+ eq('Vim(highlight):E475: Invalid argument: cterm=\'asdf',
+ exc_exec([[hi Crash cterm='asdf]]))
+ command('redir END')
-- Filter ctermfg and ctermbg, the numbers depend on the terminal
- execute('0put a')
- execute([[%s/ctermfg=\d*/ctermfg=2/]])
- execute([[%s/ctermbg=\d*/ctermbg=3/]])
-
- -- Filter out possibly translated error message
- execute('%s/E475: [^:]*:/E475:/')
+ command('0put a')
+ command([[%s/ctermfg=\d*/ctermfg=2/]])
+ command([[%s/ctermbg=\d*/ctermbg=3/]])
-- Fix the fileformat
- execute('set ff&')
- execute('$d')
+ command('set ff&')
+ command('$d')
-- Assert buffer contents.
expect([[
-
-
+
NewGroup xxx cterm=italic
ctermfg=2
ctermbg=3
guifg=#00ff00
guibg=Cyan
-
Group2 xxx cleared
-
Group3 xxx cterm=bold
-
-
NewGroup xxx cleared
-
Group2 xxx cleared
-
-
Group2 xxx cleared
-
-
- Group3 xxx cleared
-
- E475: cterm='asdf]])
+ Group3 xxx cleared]])
screen:detach()
end)
end)