]> granicus.if.org Git - vim/commitdiff
patch 8.1.0926: no test for :wnext, :wNext and :wprevious v8.1.0926
authorBram Moolenaar <Bram@vim.org>
Fri, 15 Feb 2019 19:22:38 +0000 (20:22 +0100)
committerBram Moolenaar <Bram@vim.org>
Fri, 15 Feb 2019 19:22:38 +0000 (20:22 +0100)
Problem:    No test for :wnext, :wNext and :wprevious.
Solution:   Add a test. (Dominique Pelle, closes #3963)

src/testdir/Make_all.mak
src/testdir/test_alot.vim
src/testdir/test_wnext.vim [new file with mode: 0644]
src/version.c

index 2ca5f2b1de231f918da32ca8a057543bedd52386..92e2ae36802e377eef136982e0564047d9c4b4d3 100644 (file)
@@ -269,6 +269,7 @@ NEW_TESTS = \
        test_window_cmd \
        test_window_id \
        test_windows_home \
+       test_wnext \
        test_wordcount \
        test_writefile \
        test_xxd \
index 81873af2e687e4b10dd42107173b52f3157aa789..204796a971a6c6a885d9a3dc6f2d1155de2b5ddb 100644 (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
diff --git a/src/testdir/test_wnext.vim b/src/testdir/test_wnext.vim
new file mode 100644 (file)
index 0000000..3df61ce
--- /dev/null
@@ -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
index 567e870c8c37f7b70baa85adc67f6cc26b824e1e..1451697c679a60bfc309ab4ded9d9c947c0e99de 100644 (file)
@@ -783,6 +783,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    926,
 /**/
     925,
 /**/