12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- local t = require('test.testutil')
- local n = require('test.functional.testnvim')()
- local Screen = require('test.functional.ui.screen')
- local eq, command = t.eq, n.command
- local clear = n.clear
- local eval, exc_exec = n.eval, n.exc_exec
- local exec = n.exec
- local fn = n.fn
- local api = n.api
- describe(':highlight', function()
- before_each(function()
- clear()
- local _ = Screen.new()
- end)
- it('invalid color name', function()
- eq(
- 'Vim(highlight):E421: Color name or number not recognized: ctermfg=#181818',
- exc_exec('highlight normal ctermfg=#181818')
- )
- eq(
- 'Vim(highlight):E421: Color name or number not recognized: ctermbg=#181818',
- exc_exec('highlight normal ctermbg=#181818')
- )
- end)
- it('invalid group name', function()
- eq('Vim(highlight):E411: Highlight group not found: foo', exc_exec('highlight foo'))
- end)
- it('"Normal" foreground with red', function()
- eq('', eval('synIDattr(hlID("Normal"), "fg", "cterm")'))
- command('highlight normal ctermfg=red')
- eq('9', eval('synIDattr(hlID("Normal"), "fg", "cterm")'))
- end)
- it('"Normal" background with red', function()
- eq('', eval('synIDattr(hlID("Normal"), "bg", "cterm")'))
- command('highlight normal ctermbg=red')
- eq('9', eval('synIDattr(hlID("Normal"), "bg", "cterm")'))
- end)
- it('only the last underline style takes effect #22371', function()
- command('highlight NonText gui=underline,undercurl')
- eq('', eval('synIDattr(hlID("NonText"), "underline", "gui")'))
- eq('1', eval('synIDattr(hlID("NonText"), "undercurl", "gui")'))
- command('highlight NonText gui=undercurl,underline')
- eq('', eval('synIDattr(hlID("NonText"), "undercurl", "gui")'))
- eq('1', eval('synIDattr(hlID("NonText"), "underline", "gui")'))
- end)
- it('clear', function()
- api.nvim_set_var('colors_name', 'foo')
- eq(1, fn.exists('g:colors_name'))
- command('hi clear')
- eq(0, fn.exists('g:colors_name'))
- api.nvim_set_var('colors_name', 'foo')
- eq(1, fn.exists('g:colors_name'))
- exec([[
- func HiClear()
- hi clear
- endfunc
- ]])
- fn.HiClear()
- eq(0, fn.exists('g:colors_name'))
- end)
- end)
|