diff src/testdir/test_syntax.vim @ 11465:7cbcba782c4e v8.0.0616

patch 8.0.0616: not always setting 'background' correctly after :hi Normal commit https://github.com/vim/vim/commit/1615b36b91b094263240d7b555283ddf33208f62 Author: Bram Moolenaar <Bram@vim.org> Date: Sun Jun 4 21:06:09 2017 +0200 patch 8.0.0616: not always setting 'background' correctly after :hi Normal Problem: When setting the cterm background with ":hi Normal" the value of 'background' may be set wrongly. Solution: Check that the color is less than 16. Don't set 'background' when it was set explicitly. (Lemonboy, closes #1710)
author Christian Brabandt <cb@256bit.org>
date Sun, 04 Jun 2017 21:15:03 +0200
parents 129077fb57e6
children 998d2cf59caa
line wrap: on
line diff
--- a/src/testdir/test_syntax.vim
+++ b/src/testdir/test_syntax.vim
@@ -401,3 +401,26 @@ func Test_highlight_invalid_arg()
   call assert_fails('hi XXX xxx=White', 'E423:')
 endfunc
 
+func Test_bg_detection()
+  if has('gui_running')
+    return
+  endif
+  " auto-detection of &bg, make sure sure it isn't set anywhere before
+  " this test
+  hi Normal ctermbg=0
+  call assert_equal('dark', &bg)
+  hi Normal ctermbg=4
+  call assert_equal('dark', &bg)
+  hi Normal ctermbg=12
+  call assert_equal('light', &bg)
+  hi Normal ctermbg=15
+  call assert_equal('light', &bg)
+
+  " manually-set &bg takes precendence over auto-detection
+  set bg=light
+  hi Normal ctermbg=4
+  call assert_equal('light', &bg)
+  set bg=dark
+  hi Normal ctermbg=12
+  call assert_equal('dark', &bg)
+endfunc