summaryrefslogtreecommitdiff
path: root/src/testdir/test_search_stat.vim
diff options
context:
space:
mode:
authorChristian Brabandt <cb@256bit.org>2022-02-14 12:44:32 +0000
committerBram Moolenaar <Bram@vim.org>2022-02-14 12:44:32 +0000
commit6dd7424c7e6ab81998c29ca3526c41b75cfde5a1 (patch)
treec020f3fb20975af8c1f2dd4ac1583121ae288031 /src/testdir/test_search_stat.vim
parent0cd3e94e2cf18550c10f85814c9c1b1d4929003c (diff)
downloadvim-git-6dd7424c7e6ab81998c29ca3526c41b75cfde5a1.tar.gz
patch 8.2.4378: incsearch HL broken when calling searchcount in 'tabLine'v8.2.4378
Problem: Incsearch highlight broken when calling searchcount() in 'tabLine' function. (Mirko Palmer) Solution: Save and restore the incsearch state. (Christian Brabandt, closes #9763, closes #9633)
Diffstat (limited to 'src/testdir/test_search_stat.vim')
-rw-r--r--src/testdir/test_search_stat.vim42
1 files changed, 42 insertions, 0 deletions
diff --git a/src/testdir/test_search_stat.vim b/src/testdir/test_search_stat.vim
index 15da15556..e0820e422 100644
--- a/src/testdir/test_search_stat.vim
+++ b/src/testdir/test_search_stat.vim
@@ -371,6 +371,48 @@ func Test_search_stat_then_gd()
call delete('Xsearchstatgd')
endfunc
+func Test_search_stat_and_incsearch()
+ CheckScreendump
+
+ let lines =<< trim END
+ call setline(1, ['abc--c', '--------abc', '--abc'])
+ set hlsearch
+ set incsearch
+ set bg=dark
+ set showtabline=2
+
+ function MyTabLine()
+ try
+ let a=searchcount(#{recompute: 1, maxcount: -1})
+ return a.current .. '/' .. a.total
+ catch
+ return ''
+ endtry
+ endfunction
+
+ set tabline=%!MyTabLine()
+ END
+ call writefile(lines, 'Xsearchstat_inc')
+
+ let buf = RunVimInTerminal('-S Xsearchstat_inc', #{rows: 10})
+ call term_sendkeys(buf, "/abc")
+ call TermWait(buf)
+ call VerifyScreenDump(buf, 'Test_searchstat_inc_1', {})
+
+ call term_sendkeys(buf, "\<c-g>")
+ call TermWait(buf)
+ call VerifyScreenDump(buf, 'Test_searchstat_inc_2', {})
+
+ call term_sendkeys(buf, "\<c-g>")
+ call TermWait(buf)
+ call VerifyScreenDump(buf, 'Test_searchstat_inc_3', {})
+
+ call term_sendkeys(buf, "\<esc>:qa\<cr>")
+ call TermWait(buf)
+
+ call StopVimInTerminal(buf)
+ call delete('Xsearchstat_inc')
+endfunc
" vim: shiftwidth=2 sts=2 expandtab