aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2024-05-22 06:54:09 +0800
committerGitHub <noreply@github.com>2024-05-22 06:54:09 +0800
commit2d8cb1bc9bb06920ed7423861fb20038848e79ae (patch)
tree6a9e75cb83c78c1828ef96fda8d6b1a607a461d3 /test
parent879d17ea8d62c199ea0c91c5f37a4f25495be7ce (diff)
parent59fe8ffdeaacc08b811aa97d270daec6d6ed2769 (diff)
downloadrneovim-2d8cb1bc9bb06920ed7423861fb20038848e79ae.tar.gz
rneovim-2d8cb1bc9bb06920ed7423861fb20038848e79ae.tar.bz2
rneovim-2d8cb1bc9bb06920ed7423861fb20038848e79ae.zip
Merge pull request #28905 from zeertzjq/vim-9.1.0426
vim-patch:9.1.{0426,0428}: too many strlen() calls in search.c
Diffstat (limited to 'test')
-rw-r--r--test/old/testdir/test_tagjump.vim24
-rw-r--r--test/unit/search_spec.lua7
2 files changed, 24 insertions, 7 deletions
diff --git a/test/old/testdir/test_tagjump.vim b/test/old/testdir/test_tagjump.vim
index ff1110e070..a614c19ce2 100644
--- a/test/old/testdir/test_tagjump.vim
+++ b/test/old/testdir/test_tagjump.vim
@@ -1551,14 +1551,14 @@ func Test_tagbsearch()
\ "third\tXfoo\t3",
\ "second\tXfoo\t2",
\ "first\tXfoo\t1"],
- \ 'Xtags')
+ \ 'Xtags', 'D')
set tags=Xtags
let code =<< trim [CODE]
int first() {}
int second() {}
int third() {}
[CODE]
- call writefile(code, 'Xfoo')
+ call writefile(code, 'Xfoo', 'D')
enew
set tagbsearch
@@ -1618,9 +1618,25 @@ func Test_tagbsearch()
\ 'Xtags')
call assert_fails('tag bbb', 'E426:')
- call delete('Xtags')
- call delete('Xfoo')
set tags& tagbsearch&
endfunc
+" Test tag guessing with very short names
+func Test_tag_guess_short()
+ call writefile(["!_TAG_FILE_ENCODING\tutf-8\t//",
+ \ "y\tXf\t/^y()/"],
+ \ 'Xt', 'D')
+ set tags=Xt cpoptions+=t
+ call writefile(['', 'int * y () {}', ''], 'Xf', 'D')
+
+ let v:statusmsg = ''
+ let @/ = ''
+ ta y
+ call assert_match('E435:', v:statusmsg)
+ call assert_equal(2, line('.'))
+ call assert_match('<y', @/)
+
+ set tags& cpoptions-=t
+endfunc
+
" vim: shiftwidth=2 sts=2 expandtab
diff --git a/test/unit/search_spec.lua b/test/unit/search_spec.lua
index f68cd88c12..9171cf9f06 100644
--- a/test/unit/search_spec.lua
+++ b/test/unit/search_spec.lua
@@ -35,9 +35,10 @@ itp('pat_has_uppercase', function()
end)
describe('search_regcomp', function()
- local search_regcomp = function(pat, pat_save, pat_use, options)
+ local search_regcomp = function(pat, patlen, pat_save, pat_use, options)
local regmatch = ffi.new('regmmatch_T')
- local fail = search.search_regcomp(to_cstr(pat), nil, pat_save, pat_use, options, regmatch)
+ local fail =
+ search.search_regcomp(to_cstr(pat), patlen, nil, pat_save, pat_use, options, regmatch)
return fail, regmatch
end
@@ -50,7 +51,7 @@ describe('search_regcomp', function()
globals.curwin.w_onebuf_opt.wo_rl = 1
globals.curwin.w_onebuf_opt.wo_rlc = to_cstr('s')
globals.cmdmod.cmod_flags = globals.CMOD_KEEPPATTERNS
- local fail = search_regcomp('a\192', 0, 0, 0)
+ local fail = search_regcomp('a\192', 2, 0, 0, 0)
eq(1, fail)
eq('\192a', get_search_pat())
end)