File tree Expand file tree Collapse file tree 2 files changed +25
-0
lines changed Expand file tree Collapse file tree 2 files changed +25
-0
lines changed Original file line number Diff line number Diff line change @@ -241,6 +241,29 @@ function! s:Paint() abort
241
241
endfunction
242
242
243
243
244
+ function ! OmniSharp#testrunner#SetBreakpoints () abort
245
+ if ! OmniSharp#util#HasVimspector ()
246
+ echohl WarningMsg
247
+ echomsg ' Vimspector required to set breakpoints'
248
+ echohl None
249
+ return
250
+ endif
251
+ let test = s: utils .findTest ()
252
+ if ! has_key (test, ' stacktrace' )
253
+ echo ' No breakpoints added'
254
+ return
255
+ endif
256
+ let bps = filter (copy (test.stacktrace),
257
+ \ " has_key(v:val, 'filename') && has_key(v:val, 'lnum')" )
258
+ for bp in bps
259
+ call vimspector#SetLineBreakpoint (bp .filename, bp .lnum)
260
+ endfor
261
+ let n = len (bps)
262
+ let message = printf (' %d break point%s set' , n , n == 1 ? ' ' : ' s' )
263
+ echomsg message
264
+ endfunction
265
+
266
+
244
267
function ! OmniSharp#testrunner#SetTests (bufferTests) abort
245
268
let winid = win_getid ()
246
269
for buffer in a: bufferTests
Original file line number Diff line number Diff line change @@ -9,6 +9,7 @@ set signcolumn=no
9
9
nnoremap <buffer> <Plug> (omnisharp_testrunner_togglebanner) :call OmniSharp#testrunner#ToggleBanner()<CR>
10
10
nnoremap <buffer> <Plug> (omnisharp_testrunner_run) :call OmniSharp#testrunner#Run()<CR>
11
11
nnoremap <buffer> <Plug> (omnisharp_testrunner_debug) :call OmniSharp#testrunner#Debug()<CR>
12
+ nnoremap <buffer> <Plug> (omnisharp_testrunner_set_breakpoints) :call OmniSharp#testrunner#SetBreakpoints()<CR>
12
13
nnoremap <buffer> <Plug> (omnisharp_testrunner_navigate) :call OmniSharp#testrunner#Navigate()<CR>
13
14
14
15
function ! s: map (mode , lhs, plug ) abort
@@ -21,4 +22,5 @@ endfunction
21
22
call s: map (' n' , ' <F1>' , ' omnisharp_testrunner_togglebanner' )
22
23
call s: map (' n' , ' <F5>' , ' omnisharp_testrunner_run' )
23
24
call s: map (' n' , ' <F6>' , ' omnisharp_testrunner_debug' )
25
+ call s: map (' n' , ' <F9>' , ' omnisharp_testrunner_set_breakpoints' )
24
26
call s: map (' n' , ' <CR>' , ' omnisharp_testrunner_navigate' )
You can’t perform that action at this time.
0 commit comments