mirror of
https://github.com/neovim/neovim.git
synced 2025-09-08 12:28:18 +00:00
vim-patch:8.1.1214: old style tests #9948
Problem: Old style tests.
Solution: Move tests from test14 to new style test files. (Yegappan
Lakshmanan, closes vim/vim#4308)
c6b37db1ba
This commit is contained in:

committed by
Justin M. Keyes

parent
1039e0621d
commit
f86f0a8bc7
@@ -14,7 +14,6 @@ export NVIM_PRG := $(NVIM_PRG)
|
|||||||
export TMPDIR := $(abspath ../../../Xtest-tmpdir)
|
export TMPDIR := $(abspath ../../../Xtest-tmpdir)
|
||||||
|
|
||||||
SCRIPTS_DEFAULT = \
|
SCRIPTS_DEFAULT = \
|
||||||
test14.out \
|
|
||||||
test37.out \
|
test37.out \
|
||||||
test42.out \
|
test42.out \
|
||||||
test48.out \
|
test48.out \
|
||||||
|
@@ -1,94 +0,0 @@
|
|||||||
Tests for "vaBiB", end could be wrong.
|
|
||||||
Also test ":s/pat/sub/" with different ~s in sub.
|
|
||||||
Also test for ^Vxff and ^Vo123 in Insert mode.
|
|
||||||
Also test "[m", "]m", "[M" and "]M"
|
|
||||||
Also test search()
|
|
||||||
|
|
||||||
STARTTEST
|
|
||||||
/Start cursor here
|
|
||||||
vaBiBD:?Bug?,/Piece/-2w! test.out
|
|
||||||
/^- Bug
|
|
||||||
:s/u/~u~/
|
|
||||||
:s/i/~u~/
|
|
||||||
:s/o/~~~/
|
|
||||||
:.w >>test.out
|
|
||||||
:let tt = "o\<C-V>65\<C-V>x42\<C-V>o103 \<C-V>33a\<C-V>xfg\<C-V>o78\<Esc>"
|
|
||||||
:exe "normal " . tt
|
|
||||||
:unlet tt
|
|
||||||
:.w >>test.out
|
|
||||||
:set vb
|
|
||||||
/^Piece
|
|
||||||
2]maA:.w >>test.out
|
|
||||||
j]maB:.w >>test.out
|
|
||||||
]maC:.w >>test.out
|
|
||||||
[maD:.w >>test.out
|
|
||||||
k2[maE:.w >>test.out
|
|
||||||
3[maF:.w >>test.out
|
|
||||||
]MaG:.w >>test.out
|
|
||||||
j2]MaH:.w >>test.out
|
|
||||||
]M]MaI:.w >>test.out
|
|
||||||
2[MaJ:.w >>test.out
|
|
||||||
k[MaK:.w >>test.out
|
|
||||||
3[MaL:.w >>test.out
|
|
||||||
:"
|
|
||||||
/^foobar
|
|
||||||
:let startline = line('.')
|
|
||||||
:call search('foobar', 'c')
|
|
||||||
:call append(line('$'), line('.') - startline)
|
|
||||||
j:call search('^$', 'c')
|
|
||||||
:call append(line('$'), line('.') - startline)
|
|
||||||
:call search('^$', 'bc')
|
|
||||||
:call append(line('$'), line('.') - startline)
|
|
||||||
/two
|
|
||||||
:call search('.', 'c')
|
|
||||||
:call append(line('$'), getline('.')[col('.') - 1:])
|
|
||||||
:"
|
|
||||||
/^substitute
|
|
||||||
:s/foo/bar/
|
|
||||||
:$put =@/
|
|
||||||
/^substitute
|
|
||||||
:keeppatterns s/asdf/xyz/
|
|
||||||
:$put =@/
|
|
||||||
/^substitute
|
|
||||||
Y:$put =@0
|
|
||||||
/bar /e
|
|
||||||
:$put =@0
|
|
||||||
-:keeppatterns /xyz
|
|
||||||
0dn:/^search()/,$w >>test.out
|
|
||||||
:qa!
|
|
||||||
ENDTEST
|
|
||||||
|
|
||||||
- Bug in "vPPPP" on this text (Webb):
|
|
||||||
{
|
|
||||||
cmd;
|
|
||||||
{
|
|
||||||
cmd; /* <-- Start cursor here */
|
|
||||||
{
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
Piece of Java
|
|
||||||
{
|
|
||||||
tt m1 {
|
|
||||||
t1;
|
|
||||||
} e1
|
|
||||||
|
|
||||||
tt m2 {
|
|
||||||
t2;
|
|
||||||
} e2
|
|
||||||
|
|
||||||
tt m3 {
|
|
||||||
if (x)
|
|
||||||
{
|
|
||||||
t3;
|
|
||||||
}
|
|
||||||
} e3
|
|
||||||
}
|
|
||||||
|
|
||||||
foobar
|
|
||||||
|
|
||||||
substitute foo asdf
|
|
||||||
|
|
||||||
one two
|
|
||||||
search()
|
|
@@ -1,26 +0,0 @@
|
|||||||
- Bug in "vPPPP" on this text (Webb):
|
|
||||||
{
|
|
||||||
}
|
|
||||||
- Bug uuun "vPPPP" uuuuuuuuun this text (Webb):
|
|
||||||
ABC !ag8
|
|
||||||
tt m1 {A
|
|
||||||
tt m2 {B
|
|
||||||
tt m3 {C
|
|
||||||
tt m3 {DC
|
|
||||||
tt m1 {EA
|
|
||||||
{F
|
|
||||||
}G e1
|
|
||||||
}H e3
|
|
||||||
}I
|
|
||||||
}JH e3
|
|
||||||
}K e2
|
|
||||||
{LF
|
|
||||||
search()
|
|
||||||
0
|
|
||||||
1
|
|
||||||
1
|
|
||||||
two
|
|
||||||
foo
|
|
||||||
^substitute
|
|
||||||
substitute bar xyz
|
|
||||||
xyz
|
|
@@ -1454,3 +1454,19 @@ func Test_leave_insert_autocmd()
|
|||||||
au! InsertLeave
|
au! InsertLeave
|
||||||
iunmap x
|
iunmap x
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
" Test for inserting characters using CTRL-V followed by a number.
|
||||||
|
func Test_edit_special_chars()
|
||||||
|
new
|
||||||
|
|
||||||
|
if has("ebcdic")
|
||||||
|
let t = "o\<C-V>193\<C-V>xc2\<C-V>o303 \<C-V>90a\<C-V>xfg\<C-V>o578\<Esc>"
|
||||||
|
else
|
||||||
|
let t = "o\<C-V>65\<C-V>x42\<C-V>o103 \<C-V>33a\<C-V>xfg\<C-V>o78\<Esc>"
|
||||||
|
endif
|
||||||
|
|
||||||
|
exe "normal " . t
|
||||||
|
call assert_equal("ABC !a\<C-O>g\<C-G>8", getline(2))
|
||||||
|
|
||||||
|
close!
|
||||||
|
endfunc
|
||||||
|
@@ -1353,11 +1353,21 @@ func! Test_normal23_K()
|
|||||||
bw!
|
bw!
|
||||||
return
|
return
|
||||||
endif
|
endif
|
||||||
set keywordprg=man\ --pager=cat
|
|
||||||
|
if has('mac')
|
||||||
|
" In MacOS, the option for specifying a pager is different
|
||||||
|
set keywordprg=man\ -P\ cat
|
||||||
|
else
|
||||||
|
set keywordprg=man\ --pager=cat
|
||||||
|
endif
|
||||||
" Test for using man
|
" Test for using man
|
||||||
2
|
2
|
||||||
let a = execute('unsilent norm! K')
|
let a = execute('unsilent norm! K')
|
||||||
call assert_match("man --pager=cat 'man'", a)
|
if has('mac')
|
||||||
|
call assert_match("man -P cat 'man'", a)
|
||||||
|
else
|
||||||
|
call assert_match("man --pager=cat 'man'", a)
|
||||||
|
endif
|
||||||
|
|
||||||
" clean up
|
" clean up
|
||||||
let &keywordprg = k
|
let &keywordprg = k
|
||||||
@@ -2542,3 +2552,81 @@ func Test_delete_until_paragraph()
|
|||||||
call assert_equal('', getline(1))
|
call assert_equal('', getline(1))
|
||||||
bwipe!
|
bwipe!
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
" Test for '[m', ']m', '[M' and ']M'
|
||||||
|
" Jumping to beginning and end of methods in Java-like languages
|
||||||
|
func Test_java_motion()
|
||||||
|
new
|
||||||
|
a
|
||||||
|
Piece of Java
|
||||||
|
{
|
||||||
|
tt m1 {
|
||||||
|
t1;
|
||||||
|
} e1
|
||||||
|
|
||||||
|
tt m2 {
|
||||||
|
t2;
|
||||||
|
} e2
|
||||||
|
|
||||||
|
tt m3 {
|
||||||
|
if (x)
|
||||||
|
{
|
||||||
|
t3;
|
||||||
|
}
|
||||||
|
} e3
|
||||||
|
}
|
||||||
|
.
|
||||||
|
|
||||||
|
normal gg
|
||||||
|
|
||||||
|
normal 2]maA
|
||||||
|
call assert_equal("\ttt m1 {A", getline('.'))
|
||||||
|
call assert_equal([3, 9, 16], [line('.'), col('.'), virtcol('.')])
|
||||||
|
|
||||||
|
normal j]maB
|
||||||
|
call assert_equal("\ttt m2 {B", getline('.'))
|
||||||
|
call assert_equal([7, 9, 16], [line('.'), col('.'), virtcol('.')])
|
||||||
|
|
||||||
|
normal ]maC
|
||||||
|
call assert_equal("\ttt m3 {C", getline('.'))
|
||||||
|
call assert_equal([11, 9, 16], [line('.'), col('.'), virtcol('.')])
|
||||||
|
|
||||||
|
normal [maD
|
||||||
|
call assert_equal("\ttt m3 {DC", getline('.'))
|
||||||
|
call assert_equal([11, 9, 16], [line('.'), col('.'), virtcol('.')])
|
||||||
|
|
||||||
|
normal k2[maE
|
||||||
|
call assert_equal("\ttt m1 {EA", getline('.'))
|
||||||
|
call assert_equal([3, 9, 16], [line('.'), col('.'), virtcol('.')])
|
||||||
|
|
||||||
|
normal 3[maF
|
||||||
|
call assert_equal("{F", getline('.'))
|
||||||
|
call assert_equal([2, 2, 2], [line('.'), col('.'), virtcol('.')])
|
||||||
|
|
||||||
|
normal ]MaG
|
||||||
|
call assert_equal("\t}G e1", getline('.'))
|
||||||
|
call assert_equal([5, 3, 10], [line('.'), col('.'), virtcol('.')])
|
||||||
|
|
||||||
|
normal j2]MaH
|
||||||
|
call assert_equal("\t}H e3", getline('.'))
|
||||||
|
call assert_equal([16, 3, 10], [line('.'), col('.'), virtcol('.')])
|
||||||
|
|
||||||
|
normal ]M]M
|
||||||
|
normal aI
|
||||||
|
call assert_equal("}I", getline('.'))
|
||||||
|
call assert_equal([17, 2, 2], [line('.'), col('.'), virtcol('.')])
|
||||||
|
|
||||||
|
normal 2[MaJ
|
||||||
|
call assert_equal("\t}JH e3", getline('.'))
|
||||||
|
call assert_equal([16, 3, 10], [line('.'), col('.'), virtcol('.')])
|
||||||
|
|
||||||
|
normal k[MaK
|
||||||
|
call assert_equal("\t}K e2", getline('.'))
|
||||||
|
call assert_equal([9, 3, 10], [line('.'), col('.'), virtcol('.')])
|
||||||
|
|
||||||
|
normal 3[MaL
|
||||||
|
call assert_equal("{LF", getline('.'))
|
||||||
|
call assert_equal([2, 2, 2], [line('.'), col('.'), virtcol('.')])
|
||||||
|
|
||||||
|
close!
|
||||||
|
endfunc
|
||||||
|
@@ -585,3 +585,27 @@ func Test_one_error_msg()
|
|||||||
" This was also giving an internal error
|
" This was also giving an internal error
|
||||||
call assert_fails('call search(" \\((\\v[[=P=]]){185}+ ")', 'E871:')
|
call assert_fails('call search(" \\((\\v[[=P=]]){185}+ ")', 'E871:')
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
" Test for the search() function with match at the cursor position
|
||||||
|
func Test_search_match_at_curpos()
|
||||||
|
new
|
||||||
|
call append(0, ['foobar', '', 'one two', ''])
|
||||||
|
|
||||||
|
normal gg
|
||||||
|
|
||||||
|
call search('foobar', 'c')
|
||||||
|
call assert_equal([1, 1], [line('.'), col('.')])
|
||||||
|
|
||||||
|
normal j
|
||||||
|
call search('^$', 'c')
|
||||||
|
call assert_equal([2, 1], [line('.'), col('.')])
|
||||||
|
|
||||||
|
call search('^$', 'bc')
|
||||||
|
call assert_equal([2, 1], [line('.'), col('.')])
|
||||||
|
|
||||||
|
exe "normal /two\<CR>"
|
||||||
|
call search('.', 'c')
|
||||||
|
call assert_equal([3, 5], [line('.'), col('.')])
|
||||||
|
|
||||||
|
close!
|
||||||
|
endfunc
|
||||||
|
@@ -641,3 +641,52 @@ func Test_nocatch_sub_failure_handling()
|
|||||||
|
|
||||||
bwipe!
|
bwipe!
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
" Test ":s/pat/sub/" with different ~s in sub.
|
||||||
|
func Test_replace_with_tilde()
|
||||||
|
new
|
||||||
|
" Set the last replace string to empty
|
||||||
|
s/^$//
|
||||||
|
call append(0, ['- Bug in "vPPPP" on this text:'])
|
||||||
|
normal gg
|
||||||
|
s/u/~u~/
|
||||||
|
call assert_equal('- Bug in "vPPPP" on this text:', getline(1))
|
||||||
|
s/i/~u~/
|
||||||
|
call assert_equal('- Bug uuun "vPPPP" on this text:', getline(1))
|
||||||
|
s/o/~~~/
|
||||||
|
call assert_equal('- Bug uuun "vPPPP" uuuuuuuuun this text:', getline(1))
|
||||||
|
close!
|
||||||
|
endfunc
|
||||||
|
|
||||||
|
func Test_replace_keeppatterns()
|
||||||
|
new
|
||||||
|
a
|
||||||
|
foobar
|
||||||
|
|
||||||
|
substitute foo asdf
|
||||||
|
|
||||||
|
one two
|
||||||
|
.
|
||||||
|
|
||||||
|
normal gg
|
||||||
|
/^substitute
|
||||||
|
s/foo/bar/
|
||||||
|
call assert_equal('foo', @/)
|
||||||
|
call assert_equal('substitute bar asdf', getline('.'))
|
||||||
|
|
||||||
|
/^substitute
|
||||||
|
keeppatterns s/asdf/xyz/
|
||||||
|
call assert_equal('^substitute', @/)
|
||||||
|
call assert_equal('substitute bar xyz', getline('.'))
|
||||||
|
|
||||||
|
exe "normal /bar /e\<CR>"
|
||||||
|
call assert_equal(15, col('.'))
|
||||||
|
normal -
|
||||||
|
keeppatterns /xyz
|
||||||
|
call assert_equal('bar ', @/)
|
||||||
|
call assert_equal('substitute bar xyz', getline('.'))
|
||||||
|
exe "normal 0dn"
|
||||||
|
call assert_equal('xyz', getline('.'))
|
||||||
|
|
||||||
|
close!
|
||||||
|
endfunc
|
||||||
|
@@ -411,3 +411,27 @@ func Test_Visual_paragraph_textobject()
|
|||||||
|
|
||||||
bwipe!
|
bwipe!
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
" Tests for "vaBiB", end could be wrong.
|
||||||
|
func Test_Visual_Block()
|
||||||
|
new
|
||||||
|
a
|
||||||
|
- Bug in "vPPPP" on this text:
|
||||||
|
{
|
||||||
|
cmd;
|
||||||
|
{
|
||||||
|
cmd;\t/* <-- Start cursor here */
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.
|
||||||
|
normal gg
|
||||||
|
call search('Start cursor here')
|
||||||
|
normal vaBiBD
|
||||||
|
call assert_equal(['- Bug in "vPPPP" on this text:',
|
||||||
|
\ "\t{",
|
||||||
|
\ "\t}"], getline(1, '$'))
|
||||||
|
|
||||||
|
close!
|
||||||
|
endfunc
|
||||||
|
Reference in New Issue
Block a user