1
0
forked from aniani/vim

patch 8.1.0926: no test for :wnext, :wNext and :wprevious

Problem:    No test for :wnext, :wNext and :wprevious.
Solution:   Add a test. (Dominique Pelle, closes #3963)
This commit is contained in:
Bram Moolenaar
2019-02-15 20:22:38 +01:00
parent 5ff7df509a
commit e93e5a504f
4 changed files with 105 additions and 0 deletions

View File

@@ -269,6 +269,7 @@ NEW_TESTS = \
test_window_cmd \
test_window_id \
test_windows_home \
test_wnext \
test_wordcount \
test_writefile \
test_xxd \

View File

@@ -66,3 +66,4 @@ source test_true_false.vim
source test_unlet.vim
source test_virtualedit.vim
source test_window_cmd.vim
source test_wnext.vim

101
src/testdir/test_wnext.vim Normal file
View File

@@ -0,0 +1,101 @@
" Test :wnext :wNext and :wprevious
func Test_wnext()
args X1 X2
call setline(1, '1')
wnext
call assert_equal(['1'], readfile('X1'))
call assert_equal('X2', bufname('%'))
call setline(1, '2')
call assert_fails('wnext', 'E165:')
call assert_equal(['2'], readfile('X2'))
call assert_equal('X2', bufname('%'))
" Test :wnext with a single file.
args X1
call assert_equal('X1', bufname('%'))
call assert_fails('wnext', 'E163:')
" Test :wnext with a count.
args X1 X2 X3
call assert_equal('X1', bufname('%'))
2wnext
call assert_equal('X3', bufname('%'))
" Test :wnext {file}.
args X1 X2 X3
wnext X4
call assert_equal(['1'], readfile('X4'))
call assert_equal('X2', bufname('%'))
call assert_fails('wnext X4', 'E13:')
call assert_equal(['1'], readfile('X4'))
wnext! X4
call assert_equal(['2'], readfile('X4'))
call assert_equal('X3', bufname('%'))
args X1 X2
" Commented out as, E13 occurs on Windows instead of E17
"call assert_fails('wnext .', 'E17:')
call assert_fails('wnext! .', 'E502:')
%bwipe!
call delete('X1')
call delete('X2')
call delete('X3')
call delete('X4')
endfunc
func Test_wprevious()
args X1 X2
next
call assert_equal('X2', bufname('%'))
call setline(1, '2')
wprevious
call assert_equal(['2'], readfile('X2'))
call assert_equal('X1', bufname('%'))
call setline(1, '1')
call assert_fails('wprevious', 'E164:')
call assert_fails('wNext', 'E164:')
" Test :wprevious with a single file.
args X1
call assert_fails('wprevious', 'E163:')
call assert_fails('wNext', 'E163:')
" Test :wprevious with a count.
args X1 X2 X3
2next
call setline(1, '3')
call assert_equal('X3', bufname('%'))
2wprevious
call assert_equal('X1', bufname('%'))
call assert_equal(['3'], readfile('X3'))
" Test :wprevious {file}
args X1 X2 X3
2next
call assert_equal('X3', bufname('%'))
wprevious X4
call assert_equal(['3'], readfile('X4'))
call assert_equal('X2', bufname('%'))
call assert_fails('wprevious X4', 'E13:')
call assert_equal(['3'], readfile('X4'))
wprevious! X4
call assert_equal(['2'], readfile('X4'))
call assert_equal('X1', bufname('%'))
args X1 X2
" Commented out as, E13 occurs on Windows instead of E17
"call assert_fails('wprevious .', 'E17:')
call assert_fails('wprevious! .', 'E502:')
%bwipe!
call delete('X1')
call delete('X2')
call delete('X3')
call delete('X4')
endfunc

View File

@@ -783,6 +783,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
926,
/**/
925,
/**/