Patch 8.2.4735
Problem: Quickfix tests can be a bit hard to read.
Solution: Use heredoc instead of strings and line continuation. (Yegappan
Lakshmanan, closes #10145)
Files: src/testdir/test_quickfix.vim
*** ../vim-8.2.4734/src/testdir/test_quickfix.vim 2022-03-24 11:22:07.219294092 +0000
--- src/testdir/test_quickfix.vim 2022-04-11 15:07:45.773432152 +0100
***************
*** 105,113 ****
call assert_true(v:errmsg ==# 'E42: No Errors')
" Populate the list and then try
! Xgetexpr ['non-error 1', 'Xtestfile1:1:3:Line1',
! \ 'non-error 2', 'Xtestfile2:2:2:Line2',
! \ 'non-error| 3', 'Xtestfile3:3:1:Line3']
" List only valid entries
let l = split(execute('Xlist', ''), "\n")
--- 105,119 ----
call assert_true(v:errmsg ==# 'E42: No Errors')
" Populate the list and then try
! let lines =<< trim END
! non-error 1
! Xtestfile1:1:3:Line1
! non-error 2
! Xtestfile2:2:2:Line2
! non-error| 3
! Xtestfile3:3:1:Line3
! END
! Xgetexpr lines
" List only valid entries
let l = split(execute('Xlist', ''), "\n")
***************
*** 265,272 ****
call assert_true(winnr('$') == 1)
" Create a list with valid entries
! Xgetexpr ['Xtestfile1:1:3:Line1', 'Xtestfile2:2:2:Line2',
! \ 'Xtestfile3:3:1:Line3']
" Open the window
Xwindow
--- 271,282 ----
call assert_true(winnr('$') == 1)
" Create a list with valid entries
! let lines =<< trim END
! Xtestfile1:1:3:Line1
! Xtestfile2:2:2:Line2
! Xtestfile3:3:1:Line3
! END
! Xgetexpr lines
" Open the window
Xwindow
***************
*** 329,336 ****
if a:cchar == 'c'
" Opening the quickfix window in multiple tab pages should reuse the
" quickfix buffer
! Xgetexpr ['Xtestfile1:1:3:Line1', 'Xtestfile2:2:2:Line2',
! \ 'Xtestfile3:3:1:Line3']
Xopen
let qfbufnum = bufnr('%')
tabnew
--- 339,350 ----
if a:cchar == 'c'
" Opening the quickfix window in multiple tab pages should reuse the
" quickfix buffer
! let lines =<< trim END
! Xtestfile1:1:3:Line1
! Xtestfile2:2:2:Line2
! Xtestfile3:3:1:Line3
! END
! Xgetexpr lines
Xopen
let qfbufnum = bufnr('%')
tabnew
***************
*** 365,378 ****
set tabline& showtabline&
endfunc
-
" Tests for the :cfile, :lfile, :caddfile, :laddfile, :cgetfile and :lgetfile
" commands.
func XfileTests(cchar)
call s:setup_commands(a:cchar)
! call writefile(['Xtestfile1:700:10:Line 700',
! \ 'Xtestfile2:800:15:Line 800'], 'Xqftestfile1')
enew!
Xfile Xqftestfile1
--- 379,394 ----
set tabline& showtabline&
endfunc
" Tests for the :cfile, :lfile, :caddfile, :laddfile, :cgetfile and :lgetfile
" commands.
func XfileTests(cchar)
call s:setup_commands(a:cchar)
! let lines =<< trim END
! Xtestfile1:700:10:Line 700
! Xtestfile2:800:15:Line 800
! END
! call writefile(lines, 'Xqftestfile1')
enew!
Xfile Xqftestfile1
***************
*** 396,403 ****
call assert_true(len(l) == 3 &&
\ l[2].lnum == 900 && l[2].col == 30 && l[2].text ==# 'Line 900')
! call writefile(['Xtestfile1:222:77:Line 222',
! \ 'Xtestfile2:333:88:Line 333'], 'Xqftestfile1')
enew!
Xgetfile Xqftestfile1
--- 412,422 ----
call assert_true(len(l) == 3 &&
\ l[2].lnum == 900 && l[2].col == 30 && l[2].text ==# 'Line 900')
! let lines =<< trim END
! Xtestfile1:222:77:Line 222
! Xtestfile2:333:88:Line 333
! END
! call writefile(lines, 'Xqftestfile1')
enew!
Xgetfile Xqftestfile1
***************
*** 427,434 ****
call s:setup_commands(a:cchar)
enew!
! silent! call setline(1, ['Xtestfile7:700:10:Line 700',
! \ 'Xtestfile8:800:15:Line 800'])
Xbuffer!
let l = g:Xgetlist()
call assert_true(len(l) == 2 &&
--- 446,456 ----
call s:setup_commands(a:cchar)
enew!
! let lines =<< trim END
! Xtestfile7:700:10:Line 700
! Xtestfile8:800:15:Line 800
! END
! silent! call setline(1, lines)
Xbuffer!
let l = g:Xgetlist()
call assert_true(len(l) == 2 &&
***************
*** 436,443 ****
\ l[1].lnum == 800 && l[1].col == 15 && l[1].text ==# 'Line 800')
enew!
! silent! call setline(1, ['Xtestfile9:900:55:Line 900',
! \ 'Xtestfile10:950:66:Line 950'])
Xgetbuffer
let l = g:Xgetlist()
call assert_true(len(l) == 2 &&
--- 458,468 ----
\ l[1].lnum == 800 && l[1].col == 15 && l[1].text ==# 'Line 800')
enew!
! let lines =<< trim END
! Xtestfile9:900:55:Line 900
! Xtestfile10:950:66:Line 950
! END
! silent! call setline(1, lines)
Xgetbuffer
let l = g:Xgetlist()
call assert_true(len(l) == 2 &&
***************
*** 445,452 ****
\ l[1].lnum == 950 && l[1].col == 66 && l[1].text ==# 'Line 950')
enew!
! silent! call setline(1, ['Xtestfile11:700:20:Line 700',
! \ 'Xtestfile12:750:25:Line 750'])
Xaddbuffer
let l = g:Xgetlist()
call assert_true(len(l) == 4 &&
--- 470,480 ----
\ l[1].lnum == 950 && l[1].col == 66 && l[1].text ==# 'Line 950')
enew!
! let lines =<< trim END
! Xtestfile11:700:20:Line 700
! Xtestfile12:750:25:Line 750
! END
! silent! call setline(1, lines)
Xaddbuffer
let l = g:Xgetlist()
call assert_true(len(l) == 4 &&
***************
*** 516,527 ****
call s:create_test_file('Xqftestfile1')
call s:create_test_file('Xqftestfile2')
! Xgetexpr ['Xqftestfile1:5:Line5',
! \ 'Xqftestfile1:6:Line6',
! \ 'Xqftestfile2:10:Line10',
! \ 'Xqftestfile2:11:Line11',
! \ 'RegularLine1',
! \ 'RegularLine2']
Xfirst
call assert_fails('-5Xcc', 'E16:')
--- 544,558 ----
call s:create_test_file('Xqftestfile1')
call s:create_test_file('Xqftestfile2')
! let lines =<< trim END
! Xqftestfile1:5:Line5
! Xqftestfile1:6:Line6
! Xqftestfile2:10:Line10
! Xqftestfile2:11:Line11
! RegularLine1
! RegularLine2
! END
! Xgetexpr lines
Xfirst
call assert_fails('-5Xcc', 'E16:')
***************
*** 571,580 ****
call assert_equal(5, line('.'))
" Jumping to an error from the error window using cc command
! Xgetexpr ['Xqftestfile1:5:Line5',
! \ 'Xqftestfile1:6:Line6',
! \ 'Xqftestfile2:10:Line10',
! \ 'Xqftestfile2:11:Line11']
Xopen
10Xcc
call assert_equal(11, line('.'))
--- 602,614 ----
call assert_equal(5, line('.'))
" Jumping to an error from the error window using cc command
! let lines =<< trim END
! Xqftestfile1:5:Line5
! Xqftestfile1:6:Line6
! Xqftestfile2:10:Line10
! Xqftestfile2:11:Line11
! END
! Xgetexpr lines
Xopen
10Xcc
call assert_equal(11, line('.'))
***************
*** 1279,1298 ****
let save_efm=&efm
set efm=%DEntering\ dir\ '%f',%f:%l:%m,%XLeaving\ dir\ '%f'
! let lines = ["Entering dir 'dir1/a'",
! \ 'habits2.txt:1:Nine Healthy Habits',
! \ "Entering dir 'b'",
! \ 'habits3.txt:2:0 Hours of television',
! \ 'habits2.txt:7:5 Small meals',
! \ "Entering dir 'dir1/c'",
! \ 'habits4.txt:3:1 Hour of exercise',
! \ "Leaving dir 'dir1/c'",
! \ "Leaving dir 'dir1/a'",
! \ 'habits1.txt:4:2 Liters of water',
! \ "Entering dir 'dir2'",
! \ 'habits5.txt:5:3 Cups of hot green tea',
! \ "Leaving dir 'dir2'"
! \]
Xexpr ""
for l in lines
--- 1313,1333 ----
let save_efm=&efm
set efm=%DEntering\ dir\ '%f',%f:%l:%m,%XLeaving\ dir\ '%f'
! let lines =<< trim END
! Entering dir 'dir1/a'
! habits2.txt:1:Nine Healthy Habits
! Entering dir 'b'
! habits3.txt:2:0 Hours of television
! habits2.txt:7:5 Small meals
! Entering dir 'dir1/c'
! habits4.txt:3:1 Hour of exercise
! Leaving dir 'dir1/c'
! Leaving dir 'dir1/a'
! habits1.txt:4:2 Liters of water
! Entering dir 'dir2'
! habits5.txt:5:3 Cups of hot green tea
! Leaving dir 'dir2'
! END
Xexpr ""
for l in lines
***************
*** 1326,1343 ****
call mkdir('dir1/c')
call mkdir('dir2')
! let lines = ["Nine Healthy Habits",
! \ "0 Hours of television",
! \ "1 Hour of exercise",
! \ "2 Liters of water",
! \ "3 Cups of hot green tea",
! \ "4 Short mental breaks",
! \ "5 Small meals",
! \ "6 AM wake up time",
! \ "7 Minutes of laughter",
! \ "8 Hours of sleep (at least)",
! \ "9 PM end of the day and off to bed"
! \ ]
call writefile(lines, 'habits1.txt')
call writefile(lines, 'dir1/a/habits2.txt')
call writefile(lines, 'dir1/a/b/habits3.txt')
--- 1361,1379 ----
call mkdir('dir1/c')
call mkdir('dir2')
! let lines =<< trim END
! Nine Healthy Habits
! 0 Hours of television
! 1 Hour of exercise
! 2 Liters of water
! 3 Cups of hot green tea
! 4 Short mental breaks
! 5 Small meals
! 6 AM wake up time
! 7 Minutes of laughter
! 8 Hours of sleep (at least)
! 9 PM end of the day and off to bed
! END
call writefile(lines, 'habits1.txt')
call writefile(lines, 'dir1/a/habits2.txt')
call writefile(lines, 'dir1/a/b/habits3.txt')
***************
*** 1363,1369 ****
\ '%-Wignored %m %l,' .
\ '%+Cmore ignored %m %l,' .
\ '%Zignored end'
! Xgetexpr ['ignored warning 1', 'more ignored continuation 2', 'ignored end', 'error resync 4']
let l = map(g:Xgetlist(), '[v:val.text, v:val.valid, v:val.lnum, v:val.type]')
call assert_equal([['resync', 1, 4, 'E']], l)
--- 1399,1411 ----
\ '%-Wignored %m %l,' .
\ '%+Cmore ignored %m %l,' .
\ '%Zignored end'
! let lines =<< trim END
! ignored warning 1
! more ignored continuation 2
! ignored end
! error resync 4
! END
! Xgetexpr lines
let l = map(g:Xgetlist(), '[v:val.text, v:val.valid, v:val.lnum, v:val.type]')
call assert_equal([['resync', 1, 4, 'E']], l)
***************
*** 1606,1613 ****
" error type
set efm=%f:%l:%t:%m
! cexpr ["Xfile1:10:E:msg1", "Xfile1:20:W:msg2", "Xfile1:30:I:msg3",
! \ "Xfile1:40:N:msg4", "Xfile1:50:R:msg5"]
let output = split(execute('clist'), "\n")
call assert_equal([
\ ' 1 Xfile1:10 error: msg1',
--- 1648,1661 ----
" error type
set efm=%f:%l:%t:%m
! let lines =<< trim END
! Xfile1:10:E:msg1
! Xfile1:20:W:msg2
! Xfile1:30:I:msg3
! Xfile1:40:N:msg4
! Xfile1:50:R:msg5
! END
! cexpr lines
let output = split(execute('clist'), "\n")
call assert_equal([
\ ' 1 Xfile1:10 error: msg1',
***************
*** 1618,1625 ****
" error type and a error number
set efm=%f:%l:%t:%n:%m
! cexpr ["Xfile1:10:E:2:msg1", "Xfile1:20:W:4:msg2", "Xfile1:30:I:6:msg3",
! \ "Xfile1:40:N:8:msg4", "Xfile1:50:R:3:msg5"]
let output = split(execute('clist'), "\n")
call assert_equal([
\ ' 1 Xfile1:10 error 2: msg1',
--- 1666,1679 ----
" error type and a error number
set efm=%f:%l:%t:%n:%m
! let lines =<< trim END
! Xfile1:10:E:2:msg1
! Xfile1:20:W:4:msg2
! Xfile1:30:I:6:msg3
! Xfile1:40:N:8:msg4
! Xfile1:50:R:3:msg5
! END
! cexpr lines
let output = split(execute('clist'), "\n")
call assert_equal([
\ ' 1 Xfile1:10 error 2: msg1',
***************
*** 1644,1651 ****
" multiple lines
set efm=%A%n)%m,%Z%f:%l-%e:%c-%k
! cexpr ["1)msg1", "Xfile1:14-24:1-2",
! \ "2)msg2", "Xfile1:24-34:3-4"]
let output = split(execute('clist'), "\n")
call assert_equal([
\ ' 1 Xfile1:14-24 col 1-2 error 1: msg1',
--- 1698,1710 ----
" multiple lines
set efm=%A%n)%m,%Z%f:%l-%e:%c-%k
! let lines =<< trim END
! 1)msg1
! Xfile1:14-24:1-2
! 2)msg2
! Xfile1:24-34:3-4
! END
! cexpr lines
let output = split(execute('clist'), "\n")
call assert_equal([
\ ' 1 Xfile1:14-24 col 1-2 error 1: msg1',
***************
*** 2055,2066 ****
" Problematic values if the line is longer than 4096 bytes. Then 1024 bytes
" are read at a time.
for len in [4078, 4079, 4080, 5102, 5103, 5104, 6126, 6127, 6128, 7150, 7151, 7152]
! let lines = [
! \ '/tmp/file1:1:1:aaa',
! \ '/tmp/file2:1:1:%s',
! \ '/tmp/file3:1:1:bbb',
! \ '/tmp/file4:1:1:ccc',
! \ ]
let lines[1] = substitute(lines[1], '%s', repeat('x', len), '')
call writefile(lines, 'Xcqetfile.txt')
cgetfile Xcqetfile.txt
--- 2114,2125 ----
" Problematic values if the line is longer than 4096 bytes. Then 1024 bytes
" are read at a time.
for len in [4078, 4079, 4080, 5102, 5103, 5104, 6126, 6127, 6128, 7150, 7151, 7152]
! let lines =<< trim END
! /tmp/file1:1:1:aaa
! /tmp/file2:1:1:%s
! /tmp/file3:1:1:bbb
! /tmp/file4:1:1:ccc
! END
let lines[1] = substitute(lines[1], '%s', repeat('x', len), '')
call writefile(lines, 'Xcqetfile.txt')
cgetfile Xcqetfile.txt
***************
*** 2087,2098 ****
let file1_winid = win_getid()
new Xqftestfile2
let file2_winid = win_getid()
! cgetexpr ['Xqftestfile1:5:Line5',
! \ 'Xqftestfile1:6:Line6',
! \ 'Xqftestfile2:10:Line10',
! \ 'Xqftestfile2:11:Line11',
! \ 'Xqftestfile3:15:Line15',
! \ 'Xqftestfile3:16:Line16']
new
let winid = win_getid()
--- 2146,2160 ----
let file1_winid = win_getid()
new Xqftestfile2
let file2_winid = win_getid()
! let lines =<< trim END
! Xqftestfile1:5:Line5
! Xqftestfile1:6:Line6
! Xqftestfile2:10:Line10
! Xqftestfile2:11:Line11
! Xqftestfile3:15:Line15
! Xqftestfile3:16:Line16
! END
! cgetexpr lines
new
let winid = win_getid()
***************
*** 2760,2780 ****
silent! cexpr non_existing_func()
silent! caddexpr non_existing_func()
silent! cgetexpr non_existing_func()
! let l = ['precexpr',
! \ 'postcexpr',
! \ 'precaddexpr',
! \ 'postcaddexpr',
! \ 'precgetexpr',
! \ 'postcgetexpr',
! \ 'precexpr',
! \ 'postcexpr',
! \ 'precaddexpr',
! \ 'postcaddexpr',
! \ 'precgetexpr',
! \ 'postcgetexpr',
! \ 'precexpr',
! \ 'precaddexpr',
! \ 'precgetexpr']
call assert_equal(l, g:acmds)
let g:acmds = []
--- 2822,2844 ----
silent! cexpr non_existing_func()
silent! caddexpr non_existing_func()
silent! cgetexpr non_existing_func()
! let l =<< trim END
! precexpr
! postcexpr
! precaddexpr
! postcaddexpr
! precgetexpr
! postcgetexpr
! precexpr
! postcexpr
! precaddexpr
! postcaddexpr
! precgetexpr
! postcgetexpr
! precexpr
! precaddexpr
! precgetexpr
! END
call assert_equal(l, g:acmds)
let g:acmds = []
***************
*** 2791,2805 ****
exe 'silent! cgetbuffer ' . bnum
exe 'silent! caddbuffer ' . bnum
enew!
! let l = ['precbuffer',
! \ 'postcbuffer',
! \ 'precgetbuffer',
! \ 'postcgetbuffer',
! \ 'precaddbuffer',
! \ 'postcaddbuffer',
! \ 'precbuffer',
! \ 'precgetbuffer',
! \ 'precaddbuffer']
call assert_equal(l, g:acmds)
call writefile(['Xtest:1:Line1'], 'Xtest')
--- 2855,2871 ----
exe 'silent! cgetbuffer ' . bnum
exe 'silent! caddbuffer ' . bnum
enew!
! let l =<< trim END
! precbuffer
! postcbuffer
! precgetbuffer
! postcgetbuffer
! precaddbuffer
! postcaddbuffer
! precbuffer
! precgetbuffer
! precaddbuffer
! END
call assert_equal(l, g:acmds)
call writefile(['Xtest:1:Line1'], 'Xtest')
***************
*** 2814,2837 ****
silent! cfile do_not_exist
silent! caddfile do_not_exist
silent! cgetfile do_not_exist
! let l = ['precfile',
! \ 'postcfile',
! \ 'precaddfile',
! \ 'postcaddfile',
! \ 'precgetfile',
! \ 'postcgetfile',
! \ 'precfile',
! \ 'postcfile',
! \ 'precaddfile',
! \ 'postcaddfile',
! \ 'precgetfile',
! \ 'postcgetfile',
! \ 'precfile',
! \ 'postcfile',
! \ 'precaddfile',
! \ 'postcaddfile',
! \ 'precgetfile',
! \ 'postcgetfile']
call assert_equal(l, g:acmds)
let g:acmds = []
--- 2880,2905 ----
silent! cfile do_not_exist
silent! caddfile do_not_exist
silent! cgetfile do_not_exist
! let l =<< trim END
! precfile
! postcfile
! precaddfile
! postcaddfile
! precgetfile
! postcgetfile
! precfile
! postcfile
! precaddfile
! postcaddfile
! precgetfile
! postcgetfile
! precfile
! postcfile
! precaddfile
! postcaddfile
! precgetfile
! postcgetfile
! END
call assert_equal(l, g:acmds)
let g:acmds = []
***************
*** 2844,2863 ****
set makeprg=
silent! make
set makeprg&
! let l = ['prehelpgrep',
! \ 'posthelpgrep',
! \ 'prehelpgrep',
! \ 'posthelpgrep',
! \ 'previmgrep',
! \ 'postvimgrep',
! \ 'previmgrepadd',
! \ 'postvimgrepadd',
! \ 'previmgrep',
! \ 'postvimgrep',
! \ 'previmgrepadd',
! \ 'postvimgrepadd',
! \ 'premake',
! \ 'postmake']
call assert_equal(l, g:acmds)
if has('unix')
--- 2912,2933 ----
set makeprg=
silent! make
set makeprg&
! let l =<< trim END
! prehelpgrep
! posthelpgrep
! prehelpgrep
! posthelpgrep
! previmgrep
! postvimgrep
! previmgrepadd
! postvimgrepadd
! previmgrep
! postvimgrep
! previmgrepadd
! postvimgrepadd
! premake
! postmake
! END
call assert_equal(l, g:acmds)
if has('unix')
***************
*** 2877,2898 ****
silent lgrep Grep_Autocmd_Text test_quickfix.vim
silent lgrepadd GrepAdd_Autocmd_Text test_quickfix.vim
set grepprg&vim
! let l = ['pregrep',
! \ 'postgrep',
! \ 'pregrepadd',
! \ 'postgrepadd',
! \ 'pregrep',
! \ 'postgrep',
! \ 'pregrepadd',
! \ 'postgrepadd',
! \ 'pregrep',
! \ 'postgrep',
! \ 'pregrepadd',
! \ 'postgrepadd',
! \ 'prelgrep',
! \ 'postlgrep',
! \ 'prelgrepadd',
! \ 'postlgrepadd']
call assert_equal(l, g:acmds)
endif
--- 2947,2970 ----
silent lgrep Grep_Autocmd_Text test_quickfix.vim
silent lgrepadd GrepAdd_Autocmd_Text test_quickfix.vim
set grepprg&vim
! let l =<< trim END
! pregrep
! postgrep
! pregrepadd
! postgrepadd
! pregrep
! postgrep
! pregrepadd
! postgrepadd
! pregrep
! postgrep
! pregrepadd
! postgrepadd
! prelgrep
! postlgrep
! prelgrepadd
! postlgrepadd
! END
call assert_equal(l, g:acmds)
endif
***************
*** 3051,3061 ****
CheckScreendump
let lines =<< trim END
! call setline(1, ['some', 'text', 'with', 'matches'])
! write XCwindow
! vimgrep e XCwindow
! redraw
! cwindow 4
END
call writefile(lines, 'XtestCwindow')
let buf = RunVimInTerminal('-S XtestCwindow', #{rows: 12})
--- 3123,3133 ----
CheckScreendump
let lines =<< trim END
! call setline(1, ['some', 'text', 'with', 'matches'])
! write XCwindow
! vimgrep e XCwindow
! redraw
! cwindow 4
END
call writefile(lines, 'XtestCwindow')
let buf = RunVimInTerminal('-S XtestCwindow', #{rows: 12})
***************
*** 3073,3081 ****
func XvimgrepTests(cchar)
call s:setup_commands(a:cchar)
! call writefile(['Editor:VIM vim',
! \ 'Editor:Emacs EmAcS',
! \ 'Editor:Notepad NOTEPAD'], 'Xtestfile1')
call writefile(['Linux', 'macOS', 'MS-Windows'], 'Xtestfile2')
" Error cases
--- 3145,3156 ----
func XvimgrepTests(cchar)
call s:setup_commands(a:cchar)
! let lines =<< trim END
! Editor:VIM vim
! Editor:Emacs EmAcS
! Editor:Notepad NOTEPAD
! END
! call writefile(lines, 'Xtestfile1')
call writefile(['Linux', 'macOS', 'MS-Windows'], 'Xtestfile2')
" Error cases
***************
*** 3585,3598 ****
" error line ends with a file stack.
let efm_val = 'Error\ l%l\ in\ %f,'
let efm_val .= '%-P%>(%f%r,Error\ l%l\ in\ %m,%-Q)%r'
! let l = g:Xgetlist({'lines' : [
! \ '(one.txt',
! \ 'Error l4 in one.txt',
! \ ') (two.txt',
! \ 'Error l6 in two.txt',
! \ ')',
! \ 'Error l8 in one.txt'
! \ ], 'efm' : efm_val})
call assert_equal(3, len(l.items))
call assert_equal('one.txt', bufname(l.items[0].bufnr))
call assert_equal(4, l.items[0].lnum)
--- 3660,3674 ----
" error line ends with a file stack.
let efm_val = 'Error\ l%l\ in\ %f,'
let efm_val .= '%-P%>(%f%r,Error\ l%l\ in\ %m,%-Q)%r'
! let lines =<< trim END
! (one.txt
! Error l4 in one.txt
! ) (two.txt
! Error l6 in two.txt
! )
! Error l8 in one.txt
! END
! let l = g:Xgetlist({'lines': lines, 'efm' : efm_val})
call assert_equal(3, len(l.items))
call assert_equal('one.txt', bufname(l.items[0].bufnr))
call assert_equal(4, l.items[0].lnum)
***************
*** 3870,3876 ****
call g:Xsetlist([], 'f')
setlocal buftype=nofile
new
! call g:Xsetlist([], ' ', {'lines' : ['F1:1:1:Line1', 'F1:2:2:Line2', 'F2:1:1:Line1', 'F2:2:2:Line2', 'F3:1:1:Line1', 'F3:2:2:Line2']})
Xopen
let winid = win_getid()
wincmd p
--- 3946,3960 ----
call g:Xsetlist([], 'f')
setlocal buftype=nofile
new
! let lines =<< trim END
! F1:1:1:Line1
! F1:2:2:Line2
! F2:1:1:Line1
! F2:2:2:Line2
! F3:1:1:Line1
! F3:2:2:Line2
! END
! call g:Xsetlist([], ' ', {'lines': lines})
Xopen
let winid = win_getid()
wincmd p
***************
*** 5096,5104 ****
endif
" Test for lines with multiple quickfix entries
! Xexpr ["X1:5:L5", "X2:5:1:L5_1", "X2:5:2:L5_2", "X2:5:3:L5_3",
! \ "X2:10:1:L10_1", "X2:10:2:L10_2", "X2:10:3:L10_3",
! \ "X2:15:1:L15_1", "X2:15:2:L15_2", "X2:15:3:L15_3", "X3:3:L3"]
edit +1 X2
Xbelow 2
call assert_equal(['X2', 10, 1], [@%, line('.'), col('.')])
--- 5180,5199 ----
endif
" Test for lines with multiple quickfix entries
! let lines =<< trim END
! X1:5:L5
! X2:5:1:L5_1
! X2:5:2:L5_2
! X2:5:3:L5_3
! X2:10:1:L10_1
! X2:10:2:L10_2
! X2:10:3:L10_3
! X2:15:1:L15_1
! X2:15:2:L15_2
! X2:15:3:L15_3
! X3:3:L3
! END
! Xexpr lines
edit +1 X2
Xbelow 2
call assert_equal(['X2', 10, 1], [@%, line('.'), col('.')])
***************
*** 5162,5194 ****
endfunc
func Test_quickfix_count()
! let commands = [
! \ 'cNext',
! \ 'cNfile',
! \ 'cabove',
! \ 'cbelow',
! \ 'cfirst',
! \ 'clast',
! \ 'cnewer',
! \ 'cnext',
! \ 'cnfile',
! \ 'colder',
! \ 'cprevious',
! \ 'crewind',
! \
! \ 'lNext',
! \ 'lNfile',
! \ 'labove',
! \ 'lbelow',
! \ 'lfirst',
! \ 'llast',
! \ 'lnewer',
! \ 'lnext',
! \ 'lnfile',
! \ 'lolder',
! \ 'lprevious',
! \ 'lrewind',
! \ ]
for cmd in commands
call assert_fails('-1' .. cmd, 'E16:')
call assert_fails('.' .. cmd, 'E16:')
--- 5257,5288 ----
endfunc
func Test_quickfix_count()
! let commands =<< trim END
! cNext
! cNfile
! cabove
! cbelow
! cfirst
! clast
! cnewer
! cnext
! cnfile
! colder
! cprevious
! crewind
! lNext
! lNfile
! labove
! lbelow
! lfirst
! llast
! lnewer
! lnext
! lnfile
! lolder
! lprevious
! lrewind
! END
for cmd in commands
call assert_fails('-1' .. cmd, 'E16:')
call assert_fails('.' .. cmd, 'E16:')
***************
*** 6010,6018 ****
%bwipe!
! lgetexpr ['Xqftestfile1:5:Line5',
! \ 'Xqftestfile2:10:Line10',
! \ 'Xqftestfile3:16:Line16']
silent! llast
call assert_equal(1, tabpagenr('$'))
--- 6104,6115 ----
%bwipe!
! let lines =<< trim END
! Xqftestfile1:5:Line5
! Xqftestfile2:10:Line10
! Xqftestfile3:16:Line16
! END
! lgetexpr lines
silent! llast
call assert_equal(1, tabpagenr('$'))
*** ../vim-8.2.4734/src/version.c 2022-04-11 13:05:11.855669449 +0100
--- src/version.c 2022-04-11 15:10:17.517515341 +0100
***************
*** 748,749 ****
--- 748,751 ----
{ /* Add new patch number below this line */
+ /**/
+ 4735,
/**/
--
ARTHUR: You are indeed brave Sir knight, but the fight is mine.
BLACK KNIGHT: Had enough?
ARTHUR: You stupid bastard. You havn't got any arms left.
"Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
/// Bram Moolenaar -- Br...@Moolenaar.net --
http://www.Moolenaar.net \\\
/// \\\
\\\ sponsor Vim, vote for features --
http://www.Vim.org/sponsor/ ///
\\\ help me help AIDS victims --
http://ICCF-Holland.org ///