Bram Moolenaar | ad4d8a1 | 2015-12-28 19:20:36 +0100 | [diff] [blame] | 1 | " Tests for searchpos() |
| 2 | |
| 3 | func 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 Moolenaar | 196b466 | 2019-09-06 21:34:30 +0200 | [diff] [blame] | 10 | call assert_equal([2, 1, 1], '\%(\([a-z]\)\|\_.\)\{-}xyz'->searchpos('pcW')) |
Bram Moolenaar | ad4d8a1 | 2015-12-28 19:20:36 +0100 | [diff] [blame] | 11 | 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 Moolenaar | 24c4d53 | 2016-01-15 15:37:20 +0100 | [diff] [blame] | 18 | call cursor(1, 3) |
Bram Moolenaar | ad4d8a1 | 2015-12-28 19:20:36 +0100 | [diff] [blame] | 19 | 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 Moolenaar | 24c4d53 | 2016-01-15 15:37:20 +0100 | [diff] [blame] | 21 | call cursor(1, 3) |
Bram Moolenaar | ad4d8a1 | 2015-12-28 19:20:36 +0100 | [diff] [blame] | 22 | call assert_equal([2, 4, 1], searchpos('\%(\([a-z]\)\|\_.\)\{-}\zsxyz', 'pcWz')) |
| 23 | |
| 24 | set cpo+=c |
| 25 | " close the window |
| 26 | q! |
| 27 | |
| 28 | endfunc |
Bram Moolenaar | 6d91bcb | 2020-08-12 18:50:36 +0200 | [diff] [blame] | 29 | |
| 30 | " vim: shiftwidth=2 sts=2 expandtab |