]> granicus.if.org Git - vim/commitdiff
patch 8.2.1097: highlight code not sufficiently tested v8.2.1097
authorBram Moolenaar <Bram@vim.org>
Tue, 30 Jun 2020 16:45:43 +0000 (18:45 +0200)
committerBram Moolenaar <Bram@vim.org>
Tue, 30 Jun 2020 16:45:43 +0000 (18:45 +0200)
Problem:    Highlight code not sufficiently tested.
Solution:   Add a few more tests. (Yegappan Lakshmanan, closes #6359)

src/testdir/test_filter_cmd.vim
src/testdir/test_highlight.vim
src/version.c

index de9a5d9046a50e13a6436a7354980541f82f720d..278e7e4b6fb55629c0798d71321d9f8042766540 100644 (file)
@@ -146,6 +146,11 @@ func Test_filter_commands()
   let res = split(execute("filter /\.c$/ marks"), "\n")[1:]
   call assert_equal([" A      1    0 file.c"], res)
 
+  " Test filtering :highlight command
+  highlight MyHlGroup ctermfg=10
+  let res = split(execute("filter /MyHlGroup/ highlight"), "\n")
+  call assert_equal(["MyHlGroup      xxx ctermfg=10"], res)
+
   call setline(1, ['one', 'two', 'three'])
   1mark a
   2mark b
index 723cb8476754107a9b025ea6cef65b02bcfd5eda..3f84c12e6975fc6b40a25789996c24cfd9d6a3e2 100644 (file)
@@ -761,4 +761,47 @@ func Test_highlight_RGB_color()
   hi clear
 endfunc
 
+" Test for using default highlighting group
+func Test_highlight_default()
+  highlight MySearch ctermfg=7
+  highlight default MySearch ctermfg=5
+  let hlSearch = HighlightArgs('MySearch')
+  call assert_match('ctermfg=7', hlSearch)
+
+  highlight default QFName ctermfg=3
+  call assert_match('ctermfg=3', HighlightArgs('QFName'))
+  hi clear
+endfunc
+
+" Test for 'ctermul in a highlight group
+func Test_highlight_ctermul()
+  CheckNotGui
+  call assert_notmatch('ctermul=', HighlightArgs('Normal'))
+  highlight Normal ctermul=3
+  call assert_match('ctermul=3', HighlightArgs('Normal'))
+  highlight Normal ctermul=NONE
+endfunc
+
+" Test for specifying 'start' and 'stop' in a highlight group
+func Test_highlight_start_stop()
+  hi HlGrp1 start=<Esc>[27h;<Esc>[<Space>r;
+  call assert_match("start=^[[27h;^[[ r;", HighlightArgs('HlGrp1'))
+  hi HlGrp1 start=NONE
+  call assert_notmatch("start=", HighlightArgs('HlGrp1'))
+  hi HlGrp2 stop=<Esc>[27h;<Esc>[<Space>r;
+  call assert_match("stop=^[[27h;^[[ r;", HighlightArgs('HlGrp2'))
+  hi HlGrp2 stop=NONE
+  call assert_notmatch("stop=", HighlightArgs('HlGrp2'))
+  hi clear
+endfunc
+
+" Test for setting various 'term' attributes
+func Test_highlight_term_attr()
+  hi HlGrp3 term=bold,underline,undercurl,strikethrough,reverse,italic,standout
+  call assert_equal('hi HlGrp3          term=bold,standout,underline,undercurl,italic,reverse,strikethrough', HighlightArgs('HlGrp3'))
+  hi HlGrp3 term=NONE
+  call assert_equal('hi HlGrp3          cleared', HighlightArgs('HlGrp3'))
+  hi clear
+endfunc
+
 " vim: shiftwidth=2 sts=2 expandtab
index f0ed380301ccb4881b8812272b1ea5e58a9e81f0..c9815bc639d896c07bc66b2a1f42955c8a9858b3 100644 (file)
@@ -754,6 +754,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1097,
 /**/
     1096,
 /**/