1ad4d8a19SBram Moolenaar" Tests for searchpos() 2ad4d8a19SBram Moolenaar 3ad4d8a19SBram Moolenaarfunc Test_searchpos() 4ad4d8a19SBram Moolenaar new one 5ad4d8a19SBram Moolenaar 0put ='1a3' 6ad4d8a19SBram Moolenaar 1put ='123xyz' 7ad4d8a19SBram Moolenaar call cursor(1, 1) 8ad4d8a19SBram Moolenaar call assert_equal([1, 1, 2], searchpos('\%(\([a-z]\)\|\_.\)\{-}xyz', 'pcW')) 9ad4d8a19SBram Moolenaar call cursor(1, 2) 10*196b4664SBram Moolenaar call assert_equal([2, 1, 1], '\%(\([a-z]\)\|\_.\)\{-}xyz'->searchpos('pcW')) 11ad4d8a19SBram Moolenaar set cpo-=c 12ad4d8a19SBram Moolenaar call cursor(1, 2) 13ad4d8a19SBram Moolenaar call assert_equal([1, 2, 2], searchpos('\%(\([a-z]\)\|\_.\)\{-}xyz', 'pcW')) 14ad4d8a19SBram Moolenaar call cursor(1, 3) 15ad4d8a19SBram Moolenaar call assert_equal([1, 3, 1], searchpos('\%(\([a-z]\)\|\_.\)\{-}xyz', 'pcW')) 16ad4d8a19SBram Moolenaar 17ad4d8a19SBram Moolenaar " Now with \zs, first match is in column 0, "a" is matched. 1824c4d539SBram Moolenaar call cursor(1, 3) 19ad4d8a19SBram Moolenaar call assert_equal([2, 4, 2], searchpos('\%(\([a-z]\)\|\_.\)\{-}\zsxyz', 'pcW')) 20ad4d8a19SBram Moolenaar " With z flag start at cursor column, don't see the "a". 2124c4d539SBram Moolenaar call cursor(1, 3) 22ad4d8a19SBram Moolenaar call assert_equal([2, 4, 1], searchpos('\%(\([a-z]\)\|\_.\)\{-}\zsxyz', 'pcWz')) 23ad4d8a19SBram Moolenaar 24ad4d8a19SBram Moolenaar set cpo+=c 25ad4d8a19SBram Moolenaar " close the window 26ad4d8a19SBram Moolenaar q! 27ad4d8a19SBram Moolenaar 28ad4d8a19SBram Moolenaarendfunc 29