From 58b5e143871d424d6706b11e1237d535d60d7fd8 Mon Sep 17 00:00:00 2001 From: Jurica Bradarić Date: Tue, 7 Mar 2017 23:31:15 +0100 Subject: vim-patch:7.4.2299 (#6232) Problem: QuickFixCmdPre and QuickFixCmdPost autocommands are not always triggered. Solution: Also trigger on ":expr", ":cbuffer", etc. (Yegappan Lakshmanan) https://github.com/vim/vim/commit/04c4ce650f9e533cd35b2aa6803f4d354d3ec7aa --- src/nvim/testdir/test_quickfix.vim | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) (limited to 'src/nvim/testdir') diff --git a/src/nvim/testdir/test_quickfix.vim b/src/nvim/testdir/test_quickfix.vim index 02f8da8b23..50fe6ce977 100644 --- a/src/nvim/testdir/test_quickfix.vim +++ b/src/nvim/testdir/test_quickfix.vim @@ -1525,3 +1525,38 @@ function Test_qf_property() call Xproperty_tests('c') call Xproperty_tests('l') endfunction + +" Tests for the QuickFixCmdPre/QuickFixCmdPost autocommands +function QfAutoCmdHandler(loc, cmd) + call add(g:acmds, a:loc . a:cmd) +endfunction + +function Test_Autocmd() + autocmd QuickFixCmdPre * call QfAutoCmdHandler('pre', expand('')) + autocmd QuickFixCmdPost * call QfAutoCmdHandler('post', expand('')) + + let g:acmds = [] + cexpr "F1:10:Line 10" + caddexpr "F1:20:Line 20" + cgetexpr "F1:30:Line 30" + enew! | call append(0, "F2:10:Line 10") + cbuffer! + enew! | call append(0, "F2:20:Line 20") + cgetbuffer + enew! | call append(0, "F2:30:Line 30") + caddbuffer + + let l = ['precexpr', + \ 'postcexpr', + \ 'precaddexpr', + \ 'postcaddexpr', + \ 'precgetexpr', + \ 'postcgetexpr', + \ 'precbuffer', + \ 'postcbuffer', + \ 'precgetbuffer', + \ 'postcgetbuffer', + \ 'precaddbuffer', + \ 'postcaddbuffer'] + call assert_equal(l, g:acmds) +endfunction -- cgit