1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- local helpers = require('test.functional.helpers')(after_each)
- local Screen = require('test.functional.ui.screen')
- local feed = helpers.feed
- local eq = helpers.eq
- local clear = helpers.clear
- local function test_embed(ext_linegrid)
- local screen
- local function startup(...)
- clear{headless=false, args={...}}
- -- attach immediately after startup, for early UI
- screen = Screen.new(60, 8)
- screen:attach{ext_linegrid=ext_linegrid}
- screen:set_default_attr_ids({
- [1] = {foreground = Screen.colors.Grey100, background = Screen.colors.Red},
- [2] = {bold = true, foreground = Screen.colors.SeaGreen4},
- [3] = {bold = true, foreground = Screen.colors.Blue1},
- [4] = {bold = true, foreground = Screen.colors.Green},
- })
- end
- it('can display errors', function()
- startup('--cmd', 'echoerr invalid+')
- screen:expect([[
- |
- |
- |
- |
- |
- Error detected while processing pre-vimrc command line: |
- E121: Undefined variable: invalid |
- Press ENTER or type command to continue^ |
- ]])
- feed('<cr>')
- screen:expect([[
- ^ |
- {3:~ }|
- {3:~ }|
- {3:~ }|
- {3:~ }|
- {3:~ }|
- {3:~ }|
- |
- ]])
- end)
- it("doesn't erase output when setting color scheme", function()
- startup('--cmd', 'echoerr "foo"', '--cmd', 'color default', '--cmd', 'echoerr "bar"')
- screen:expect([[
- |
- |
- |
- |
- Error detected while processing pre-vimrc command line: |
- foo |
- {1:bar} |
- {4:Press ENTER or type command to continue}^ |
- ]])
- end)
- it("doesn't erase output when setting Normal colors", function()
- startup('--cmd', 'echoerr "foo"', '--cmd', 'hi Normal guibg=Green', '--cmd', 'echoerr "bar"')
- screen:expect{grid=[[
- |
- |
- |
- |
- Error detected while processing pre-vimrc command line: |
- foo |
- bar |
- Press ENTER or type command to continue^ |
- ]], condition=function()
- eq(Screen.colors.Green, screen.default_colors.rgb_bg)
- end}
- end)
- end
- describe('--embed UI on startup (ext_linegrid=true)', function() test_embed(true) end)
- describe('--embed UI on startup (ext_linegrid=false)', function() test_embed(false) end)
|