diff options
author | Björn Linse <bjorn.linse@gmail.com> | 2019-02-05 16:17:23 +0100 |
---|---|---|
committer | Björn Linse <bjorn.linse@gmail.com> | 2019-02-05 19:41:38 +0100 |
commit | baf93d96063ceab109ecf16046a51e861a9c2c26 (patch) | |
tree | 206993aff9892e2beee704c84448221accebdb15 /test/functional/ui/screen_basic_spec.lua | |
parent | 36378c33c6ca6b5c906b8ab326db508feb32c859 (diff) | |
download | rneovim-baf93d96063ceab109ecf16046a51e861a9c2c26.tar.gz rneovim-baf93d96063ceab109ecf16046a51e861a9c2c26.tar.bz2 rneovim-baf93d96063ceab109ecf16046a51e861a9c2c26.zip |
UI: always use contrete colors for default_colors_set
But add an escape hatch needed for external TUI, so it still can use
terminal emulator defaults.
Diffstat (limited to 'test/functional/ui/screen_basic_spec.lua')
-rw-r--r-- | test/functional/ui/screen_basic_spec.lua | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/test/functional/ui/screen_basic_spec.lua b/test/functional/ui/screen_basic_spec.lua index 04d532f6e1..46f0b5060c 100644 --- a/test/functional/ui/screen_basic_spec.lua +++ b/test/functional/ui/screen_basic_spec.lua @@ -960,3 +960,46 @@ end) describe("Screen (line-based)", function() screen_tests(true) end) + +describe('Screen default colors', function() + local screen + local function startup(light, termcolors) + local extra = (light and ' background=light') or '' + + local nvim_argv = {helpers.nvim_prog, '-u', 'NONE', '-i', 'NONE', '-N', + '--cmd', 'set shortmess+=I noswapfile belloff= noshowcmd noruler'..extra, + '--embed'} + local screen_nvim = spawn(nvim_argv) + set_session(screen_nvim) + screen = Screen.new() + screen:attach(termcolors and {rgb=true,ext_termcolors=true} or {rgb=true}) + end + + it('are dark per default', function() + startup(false, false) + screen:expect{condition=function() + eq({rgb_bg=0, rgb_fg=Screen.colors.White, rgb_sp=Screen.colors.Red, + cterm_bg=0, cterm_fg=0}, screen.default_colors) + end} + end) + + it('can be set to light', function() + startup(true, false) + screen:expect{condition=function() + eq({rgb_bg=Screen.colors.White, rgb_fg=0, rgb_sp=Screen.colors.Red, + cterm_bg=0, cterm_fg=0}, screen.default_colors) + end} + end) + + it('can be handled by external terminal', function() + startup(false, true) + screen:expect{condition=function() + eq({rgb_bg=-1, rgb_fg=-1, rgb_sp=-1, cterm_bg=0, cterm_fg=0}, screen.default_colors) + end} + + startup(true, true) + screen:expect{condition=function() + eq({rgb_bg=-1, rgb_fg=-1, rgb_sp=-1, cterm_bg=0, cterm_fg=0}, screen.default_colors) + end} + end) +end) |