diff src/testdir/test_increment.vim @ 19969:b07672d13ff9 v8.2.0540

patch 8.2.0540: regexp and other code not tested Commit: https://github.com/vim/vim/commit/004a6781b3cf15ca5dd632c38cc09bb3b253d1f8 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Apr 11 17:09:31 2020 +0200 patch 8.2.0540: regexp and other code not tested Problem: Regexp and other code not tested. Solution: Add more tests. (Yegappan Lakshmanan, closes https://github.com/vim/vim/issues/5904)
author Bram Moolenaar <Bram@vim.org>
date Sat, 11 Apr 2020 17:15:06 +0200
parents f70a3c1000bb
children 9edb439adbea
line wrap: on
line diff
--- a/src/testdir/test_increment.vim
+++ b/src/testdir/test_increment.vim
@@ -475,6 +475,10 @@ func Test_visual_increment_20()
   exec "norm! \<C-A>"
   call assert_equal(["b"], getline(1, '$'))
   call assert_equal([0, 1, 1, 0], getpos('.'))
+  " decrement a and A and increment z and Z
+  call setline(1, ['a', 'A', 'z', 'Z'])
+  exe "normal 1G\<C-X>2G\<C-X>3G\<C-A>4G\<C-A>"
+  call assert_equal(['a', 'A', 'z', 'Z'], getline(1, '$'))
 endfunc
 
 " 21) block-wise increment on part of hexadecimal
@@ -565,12 +569,14 @@ endfunc
 "   1) <ctrl-a>
 " 0b11111111111111111111111111111111
 func Test_visual_increment_26()
-  set nrformats+=alpha
+  set nrformats+=bin
   call setline(1, ["0b11111111111111111111111111111110"])
   exec "norm! \<C-V>$\<C-A>"
   call assert_equal(["0b11111111111111111111111111111111"], getline(1, '$'))
   call assert_equal([0, 1, 1, 0], getpos('.'))
-  set nrformats-=alpha
+  exec "norm! \<C-V>$\<C-X>"
+  call assert_equal(["0b11111111111111111111111111111110"], getline(1, '$'))
+  set nrformats-=bin
 endfunc
 
 " 27) increment with 'rightreft', if supported
@@ -771,7 +777,6 @@ func Test_normal_increment_03()
 endfunc
 
 func Test_increment_empty_line()
-  new
   call setline(1, ['0', '0', '0', '0', '0', '0', ''])
   exe "normal Gvgg\<C-A>"
   call assert_equal(['1', '1', '1', '1', '1', '1', ''], getline(1, 7))
@@ -782,8 +787,13 @@ func Test_increment_empty_line()
   exe "normal! c\<C-A>l"
   exe "normal! c\<C-X>l"
   call assert_equal('one two', getline(1))
+endfunc
 
-  bwipe!
+" Try incrementing/decrementing a non-digit/alpha character
+func Test_increment_special_char()
+  call setline(1, '!')
+  call assert_beeps("normal \<C-A>")
+  call assert_beeps("normal \<C-X>")
 endfunc
 
 " vim: shiftwidth=2 sts=2 expandtab