summaryrefslogtreecommitdiff
path: root/src/testdir
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2018-08-12 15:49:47 +0200
committerBram Moolenaar <Bram@vim.org>2018-08-12 15:49:47 +0200
commit976b847f43dd16eb6cd809d2dcab7dde6045e176 (patch)
treeaf8ba8f8f6a9ff70bf4d23f2b84367c5e4c24881 /src/testdir
parent21f990e1c22ffa2fdb66a548ebbe25e6e7194776 (diff)
downloadvim-git-976b847f43dd16eb6cd809d2dcab7dde6045e176.tar.gz
patch 8.1.0275: 'incsearch' with :s doesn't start at cursor linev8.1.0275
Problem: 'incsearch' with :s doesn't start at cursor line. Solution: Set cursor before parsing address. (closes #3318) Also accept a match at the start of the first line.
Diffstat (limited to 'src/testdir')
-rw-r--r--src/testdir/test_search.vim31
1 files changed, 26 insertions, 5 deletions
diff --git a/src/testdir/test_search.vim b/src/testdir/test_search.vim
index 7e8ddbe64..ac5b228df 100644
--- a/src/testdir/test_search.vim
+++ b/src/testdir/test_search.vim
@@ -351,7 +351,7 @@ func Cmdline3_prep()
set incsearch
endfunc
-func Cmdline3_cleanup()
+func Incsearch_cleanup()
set noincsearch
call test_override("char_avail", 0)
bw!
@@ -367,7 +367,7 @@ func Test_search_cmdline3()
call feedkeys("/the\<c-l>\<cr>", 'tx')
call assert_equal(' 2 the~e', getline('.'))
- call Cmdline3_cleanup()
+ call Incsearch_cleanup()
endfunc
func Test_search_cmdline3s()
@@ -385,7 +385,7 @@ func Test_search_cmdline3s()
call feedkeys(":%substitute/the\<c-l>/xxx\<cr>", 'tx')
call assert_equal(' 2 xxxe', getline('.'))
- call Cmdline3_cleanup()
+ call Incsearch_cleanup()
endfunc
func Test_search_cmdline3g()
@@ -400,7 +400,7 @@ func Test_search_cmdline3g()
call feedkeys(":global/the\<c-l>/d\<cr>", 'tx')
call assert_equal(' 3 the theother', getline(2))
- call Cmdline3_cleanup()
+ call Incsearch_cleanup()
endfunc
func Test_search_cmdline3v()
@@ -417,7 +417,7 @@ func Test_search_cmdline3v()
call assert_equal(1, line('$'))
call assert_equal(' 2 the~e', getline(1))
- call Cmdline3_cleanup()
+ call Incsearch_cleanup()
endfunc
func Test_search_cmdline4()
@@ -797,6 +797,27 @@ func Test_incsearch_scrolling()
call delete('Xscript')
endfunc
+func Test_incsearch_substitute()
+ if !exists('+incsearch')
+ return
+ endif
+ call test_override("char_avail", 1)
+ new
+ set incsearch
+ for n in range(1, 10)
+ call setline(n, 'foo ' . n)
+ endfor
+ 4
+ call feedkeys(":.,.+2s/foo\<BS>o\<BS>o/xxx\<cr>", 'tx')
+ call assert_equal('foo 3', getline(3))
+ call assert_equal('xxx 4', getline(4))
+ call assert_equal('xxx 5', getline(5))
+ call assert_equal('xxx 6', getline(6))
+ call assert_equal('foo 7', getline(7))
+
+ call Incsearch_cleanup()
+endfunc
+
func Test_search_undefined_behaviour()
if !has("terminal")
return