Patch 8.1.1214
Problem:    Old style tests.
Solution:   Move tests from test14 to new style test files. (Yegappan
            Lakshmanan, closes #4308)
Files:      src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
            src/testdir/test14.in, src/testdir/test14.ok,
            src/testdir/test_edit.vim, src/testdir/test_normal.vim,
            src/testdir/test_search.vim, src/testdir/test_substitute.vim,
            src/testdir/test_visual.vim


*** ../vim-8.1.1213/src/Makefile        2019-04-27 13:03:20.000715982 +0200
--- src/Makefile        2019-04-27 17:35:39.801824116 +0200
***************
*** 2175,2181 ****
  # These do not depend on the executable, compile it when needed.
  test1 \
        test_eval \
!       test3 test14 test17 \
        test29 test30 test37 test39 \
        test42 test44 test48 test49 \
        test52 test59 \
--- 2175,2181 ----
  # These do not depend on the executable, compile it when needed.
  test1 \
        test_eval \
!       test3 test17 \
        test29 test30 test37 test39 \
        test42 test44 test48 test49 \
        test52 test59 \
*** ../vim-8.1.1213/src/testdir/Make_all.mak    2019-04-25 20:28:53.327979592 
+0200
--- src/testdir/Make_all.mak    2019-04-27 17:35:39.801824116 +0200
***************
*** 14,20 ****
  # Tests that run on all systems.
  SCRIPTS_ALL = \
        test3.out \
-       test14.out \
        test29.out \
        test37.out \
        test39.out \
--- 14,19 ----
*** ../vim-8.1.1213/src/testdir/Make_vms.mms    2019-04-25 20:28:53.327979592 
+0200
--- src/testdir/Make_vms.mms    2019-04-27 17:35:39.805824096 +0200
***************
*** 74,80 ****
  .SUFFIXES : .out .in
  
  SCRIPT = test1.out test3.out \
-        test14.out \
         test29.out \
         test30.out test37.out test39.out \
         test42.out test44.out test48.out test49.out \
--- 74,79 ----
*** ../vim-8.1.1213/src/testdir/test14.in       2017-03-08 22:48:59.000000000 
+0100
--- src/testdir/test14.in       1970-01-01 01:00:00.000000000 +0100
***************
*** 1,100 ****
- 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
- :so small.vim
- :set belloff=all
- /Start cursor here
- vaBiBD:?Bug?,/Piece/-2w! test.out
- /^- Bug
- :s/u/~u~/
- :s/i/~u~/
- :s/o/~~~/
- :.w >>test.out
- :if has("ebcdic")
- : let tt = "o\<C-V>193\<C-V>xc2\<C-V>o303 \<C-V>90a\<C-V>xfg\<C-V>o578\<Esc>"
- :else
- : let tt = "o\<C-V>65\<C-V>x42\<C-V>o103 \<C-V>33a\<C-V>xfg\<C-V>o78\<Esc>"
- :endif
- :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()
--- 0 ----
*** ../vim-8.1.1213/src/testdir/test14.ok       2014-01-14 21:16:23.000000000 
+0100
--- src/testdir/test14.ok       1970-01-01 01:00:00.000000000 +0100
***************
*** 1,26 ****
- - Bug in "vPPPP" on this text (Webb):
-       {
-       }
- - Bug uuun "vPPPP" uuuuuuuuun this text (Webb):
- ABC !a g 8
-       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
--- 0 ----
*** ../vim-8.1.1213/src/testdir/test_edit.vim   2019-03-16 18:11:03.646997858 
+0100
--- src/testdir/test_edit.vim   2019-04-27 17:35:39.805824096 +0200
***************
*** 1447,1449 ****
--- 1447,1465 ----
    au! InsertLeave
    iunmap x
  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
*** ../vim-8.1.1213/src/testdir/test_normal.vim 2019-03-25 23:16:30.600492534 
+0100
--- src/testdir/test_normal.vim 2019-04-27 17:35:39.809824077 +0200
***************
*** 1358,1368 ****
      bw!
      return
    endif
!   set keywordprg=man\ --pager=cat
    " Test for using man
    2
    let a = execute('unsilent norm! K')
!   call assert_match("man --pager=cat 'man'", a)
  
    " clean up
    let &keywordprg = k
--- 1358,1378 ----
      bw!
      return
    endif
! 
!   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
    2
    let a = execute('unsilent norm! K')
!   if has('mac')
!     call assert_match("man -P cat 'man'", a)
!   else
!     call assert_match("man --pager=cat 'man'", a)
!   endif
  
    " clean up
    let &keywordprg = k
***************
*** 2559,2561 ****
--- 2569,2649 ----
  
    bwipe!
  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
*** ../vim-8.1.1213/src/testdir/test_search.vim 2019-04-11 13:45:53.125298538 
+0200
--- src/testdir/test_search.vim 2019-04-27 17:35:39.809824077 +0200
***************
*** 1265,1267 ****
--- 1265,1291 ----
    set incsearch&
    bwipe!
  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
*** ../vim-8.1.1213/src/testdir/test_substitute.vim     2019-03-27 
22:53:49.919226659 +0100
--- src/testdir/test_substitute.vim     2019-04-27 17:35:39.813824056 +0200
***************
*** 640,642 ****
--- 640,691 ----
  
    bwipe!
  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
*** ../vim-8.1.1213/src/testdir/test_visual.vim 2019-03-07 11:25:24.455856096 
+0100
--- src/testdir/test_visual.vim 2019-04-27 17:35:39.813824056 +0200
***************
*** 404,406 ****
--- 404,430 ----
    bwipe!
    au! InsertLeave
  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
*** ../vim-8.1.1213/src/version.c       2019-04-27 17:57:28.079905467 +0200
--- src/version.c       2019-04-27 17:58:31.699611434 +0200
***************
*** 769,770 ****
--- 769,772 ----
  {   /* Add new patch number below this line */
+ /**/
+     1214,
  /**/

-- 
ARTHUR:  Well, I can't just call you `Man'.
DENNIS:  Well, you could say `Dennis'.
ARTHUR:  Well, I didn't know you were called `Dennis.'
DENNIS:  Well, you didn't bother to find out, did you?
                                  The Quest for the Holy Grail (Monty Python)

 /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Raspunde prin e-mail lui