summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2020-06-30 18:45:43 +0200
committerBram Moolenaar <Bram@vim.org>2020-06-30 18:45:43 +0200
commitde8f0f47f653ff10bd8cc12b3e0817ed5bdf64ea (patch)
tree6e813896185674a9ca6e9a6f95eb423cb2139f32
parentf151ad1c70825a91afb112e611db5c712e2656ef (diff)
downloadvim-git-de8f0f47f653ff10bd8cc12b3e0817ed5bdf64ea.tar.gz
patch 8.2.1097: highlight code not sufficiently testedv8.2.1097
Problem: Highlight code not sufficiently tested. Solution: Add a few more tests. (Yegappan Lakshmanan, closes #6359)
-rw-r--r--src/testdir/test_filter_cmd.vim5
-rw-r--r--src/testdir/test_highlight.vim43
-rw-r--r--src/version.c2
3 files changed, 50 insertions, 0 deletions
diff --git a/src/testdir/test_filter_cmd.vim b/src/testdir/test_filter_cmd.vim
index de9a5d904..278e7e4b6 100644
--- a/src/testdir/test_filter_cmd.vim
+++ b/src/testdir/test_filter_cmd.vim
@@ -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
diff --git a/src/testdir/test_highlight.vim b/src/testdir/test_highlight.vim
index 723cb8476..3f84c12e6 100644
--- a/src/testdir/test_highlight.vim
+++ b/src/testdir/test_highlight.vim
@@ -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
diff --git a/src/version.c b/src/version.c
index f0ed38030..c9815bc63 100644
--- a/src/version.c
+++ b/src/version.c
@@ -755,6 +755,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1097,
+/**/
1096,
/**/
1095,