blob: dd13c305c57bdf80b3670879e82078d81e074ce7 [file] [log] [blame]
Bram Moolenaarad4d8a12015-12-28 19:20:36 +01001" Tests for searchpos()
2
3func Test_searchpos()
4 new one
5 0put ='1a3'
6 1put ='123xyz'
7 call cursor(1, 1)
8 call assert_equal([1, 1, 2], searchpos('\%(\([a-z]\)\|\_.\)\{-}xyz', 'pcW'))
9 call cursor(1, 2)
Bram Moolenaar196b4662019-09-06 21:34:30 +020010 call assert_equal([2, 1, 1], '\%(\([a-z]\)\|\_.\)\{-}xyz'->searchpos('pcW'))
Bram Moolenaarad4d8a12015-12-28 19:20:36 +010011 set cpo-=c
12 call cursor(1, 2)
13 call assert_equal([1, 2, 2], searchpos('\%(\([a-z]\)\|\_.\)\{-}xyz', 'pcW'))
14 call cursor(1, 3)
15 call assert_equal([1, 3, 1], searchpos('\%(\([a-z]\)\|\_.\)\{-}xyz', 'pcW'))
16
17 " Now with \zs, first match is in column 0, "a" is matched.
Bram Moolenaar24c4d532016-01-15 15:37:20 +010018 call cursor(1, 3)
Bram Moolenaarad4d8a12015-12-28 19:20:36 +010019 call assert_equal([2, 4, 2], searchpos('\%(\([a-z]\)\|\_.\)\{-}\zsxyz', 'pcW'))
20 " With z flag start at cursor column, don't see the "a".
Bram Moolenaar24c4d532016-01-15 15:37:20 +010021 call cursor(1, 3)
Bram Moolenaarad4d8a12015-12-28 19:20:36 +010022 call assert_equal([2, 4, 1], searchpos('\%(\([a-z]\)\|\_.\)\{-}\zsxyz', 'pcWz'))
23
24 set cpo+=c
25 " close the window
26 q!
27
28endfunc
Bram Moolenaar6d91bcb2020-08-12 18:50:36 +020029
30" vim: shiftwidth=2 sts=2 expandtab