neovim/test/functional/legacy/debugger_spec.lua
zeertzjq 1fd0ded080
vim-patch:8.2.4809: various things no6 properly tested (#26017)
Problem:    Various things no6 properly tested.
Solution:   Add various test cases. (Yegappan Lakshmanan, closes vim/vim#10259)

885de449c0

Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
2023-11-13 08:55:25 +08:00

86 lines
2.3 KiB
Lua

local helpers = require('test.functional.helpers')(after_each)
local Screen = require('test.functional.ui.screen')
local clear = helpers.clear
local command = helpers.command
local feed = helpers.feed
local write_file = helpers.write_file
before_each(clear)
describe('debugger', function()
local screen
before_each(function()
screen = Screen.new(999, 10)
screen:set_default_attr_ids({
[0] = {bold = true, foreground = Screen.colors.Blue};
[1] = {reverse = true, bold = true};
})
screen:attach()
end)
-- oldtest: Test_Debugger_breakadd_expr()
it(':breakadd expr', function()
write_file('XdebugBreakExpr.vim', 'let g:Xtest_var += 1')
finally(function()
os.remove('XdebugBreakExpr.vim')
end)
command('edit XdebugBreakExpr.vim')
command(':let g:Xtest_var = 10')
command(':breakadd expr g:Xtest_var')
feed(':source %<CR>')
screen:expect{grid=[[
^let g:Xtest_var += 1{MATCH: *}|
{0:~{MATCH: *}}|
{0:~{MATCH: *}}|
{0:~{MATCH: *}}|
{0:~{MATCH: *}}|
{0:~{MATCH: *}}|
{0:~{MATCH: *}}|
{0:~{MATCH: *}}|
{0:~{MATCH: *}}|
:source %{MATCH: *}|
]]}
feed(':source %<CR>')
screen:expect{grid=[[
let g:Xtest_var += 1{MATCH: *}|
{0:~{MATCH: *}}|
{1:{MATCH: *}}|
Breakpoint in "{MATCH:.*}XdebugBreakExpr.vim" line 1{MATCH: *}|
Entering Debug mode. Type "cont" to continue.{MATCH: *}|
Oldval = "10"{MATCH: *}|
Newval = "11"{MATCH: *}|
{MATCH:.*}XdebugBreakExpr.vim{MATCH: *}|
line 1: let g:Xtest_var += 1{MATCH: *}|
>^{MATCH: *}|
]]}
feed('cont<CR>')
screen:expect{grid=[[
^let g:Xtest_var += 1{MATCH: *}|
{0:~{MATCH: *}}|
{0:~{MATCH: *}}|
{0:~{MATCH: *}}|
{0:~{MATCH: *}}|
{0:~{MATCH: *}}|
{0:~{MATCH: *}}|
{0:~{MATCH: *}}|
{0:~{MATCH: *}}|
{MATCH: *}|
]]}
feed(':source %<CR>')
screen:expect{grid=[[
let g:Xtest_var += 1{MATCH: *}|
{0:~{MATCH: *}}|
{1:{MATCH: *}}|
Breakpoint in "{MATCH:.*}XdebugBreakExpr.vim" line 1{MATCH: *}|
Entering Debug mode. Type "cont" to continue.{MATCH: *}|
Oldval = "11"{MATCH: *}|
Newval = "12"{MATCH: *}|
{MATCH:.*}XdebugBreakExpr.vim{MATCH: *}|
line 1: let g:Xtest_var += 1{MATCH: *}|
>^{MATCH: *}|
]]}
end)
end)