changeset 12869:a89350ba2a9d v8.0.1311

patch 8.0.1311: no test for strpart() commit https://github.com/vim/vim/commit/c7d16dce2f180c8ebfc8105ad090b0ea2deedcdc Author: Bram Moolenaar <Bram@vim.org> Date: Sat Nov 18 20:32:03 2017 +0100 patch 8.0.1311: no test for strpart() Problem: No test for strpart(). Solution: Add a test. (Dominique Pelle, closes https://github.com/vim/vim/issues/2347)
author Christian Brabandt <cb@256bit.org>
date Sat, 18 Nov 2017 20:45:05 +0100
parents 029c42326ffb
children 0469872186f5
files src/testdir/test_functions.vim src/version.c
diffstat 2 files changed, 31 insertions(+), 15 deletions(-) [+]
line wrap: on
line diff
--- a/src/testdir/test_functions.vim
+++ b/src/testdir/test_functions.vim
@@ -1,5 +1,21 @@
 " Tests for various functions.
 
+" Must be done first, since the alternate buffer must be unset.
+func Test_00_bufexists()
+  call assert_equal(0, bufexists('does_not_exist'))
+  call assert_equal(1, bufexists(bufnr('%')))
+  call assert_equal(0, bufexists(0))
+  new Xfoo
+  let bn = bufnr('%')
+  call assert_equal(1, bufexists(bn))
+  call assert_equal(1, bufexists('Xfoo'))
+  call assert_equal(1, bufexists(getcwd() . '/Xfoo'))
+  call assert_equal(1, bufexists(0))
+  bw
+  call assert_equal(0, bufexists(bn))
+  call assert_equal(0, bufexists('Xfoo'))
+endfunc
+
 func Test_empty()
   call assert_equal(1, empty(''))
   call assert_equal(0, empty('a'))
@@ -168,6 +184,19 @@ func Test_simplify()
   call assert_fails('call simplify(1.2)', 'E806:')
 endfunc
 
+func Test_strpart()
+  call assert_equal('de', strpart('abcdefg', 3, 2))
+  call assert_equal('ab', strpart('abcdefg', -2, 4))
+  call assert_equal('abcdefg', strpart('abcdefg', -2))
+  call assert_equal('fg', strpart('abcdefg', 5, 4))
+  call assert_equal('defg', strpart('abcdefg', 3))
+
+  if has('multi_byte')
+    call assert_equal('lép', strpart('éléphant', 2, 4))
+    call assert_equal('léphant', strpart('éléphant', 2))
+  endif
+endfunc
+
 func Test_tolower()
   call assert_equal("", tolower(""))
 
@@ -478,21 +507,6 @@ func Test_getbufvar()
   set fileformats&
 endfunc
 
-func Test_bufexists()
-  call assert_equal(0, bufexists('does_not_exist'))
-  call assert_equal(1, bufexists(bufnr('%')))
-  call assert_equal(0, bufexists(0))
-  new Xfoo
-  let bn = bufnr('%')
-  call assert_equal(1, bufexists(bn))
-  call assert_equal(1, bufexists('Xfoo'))
-  call assert_equal(1, bufexists(getcwd() . '/Xfoo'))
-  call assert_equal(1, bufexists(0))
-  bw
-  call assert_equal(0, bufexists(bn))
-  call assert_equal(0, bufexists('Xfoo'))
-endfunc
-
 func Test_last_buffer_nr()
   call assert_equal(bufnr('$'), last_buffer_nr())
 endfunc
--- a/src/version.c
+++ b/src/version.c
@@ -772,6 +772,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1311,
+/**/
     1310,
 /**/
     1309,