]> granicus.if.org Git - vim/commitdiff
patch 8.1.1336: some eval functionality is not covered by tests v8.1.1336
authorBram Moolenaar <Bram@vim.org>
Thu, 16 May 2019 20:24:55 +0000 (22:24 +0200)
committerBram Moolenaar <Bram@vim.org>
Thu, 16 May 2019 20:24:55 +0000 (22:24 +0200)
Problem:    Some eval functionality is not covered by tests.
Solution:   Add a few more test cases. (Masato Nishihata, closes #4374)

src/testdir/test_bufline.vim
src/testdir/test_cindent.vim
src/testdir/test_cursor_func.vim
src/testdir/test_delete.vim
src/testdir/test_expand_func.vim
src/testdir/test_float_func.vim
src/testdir/test_fnamemodify.vim
src/testdir/test_functions.vim
src/version.c

index d2d692922ceaee2296c987fd65b7b0b743bc7c79..9c29a05e703b17035b5dcacf74ff45a5aa616cc1 100644 (file)
@@ -8,7 +8,7 @@ func Test_setbufline_getbufline()
   hide
   call assert_equal(0, setbufline(b, 1, ['foo', 'bar']))
   call assert_equal(['foo'], getbufline(b, 1))
-  call assert_equal(['bar'], getbufline(b, 2))
+  call assert_equal(['bar'], getbufline(b, '$'))
   call assert_equal(['foo', 'bar'], getbufline(b, 1, 2))
   exe "bd!" b
   call assert_equal([], getbufline(b, 1, 2))
@@ -81,6 +81,7 @@ func Test_appendbufline()
   call setline(1, ['a', 'b', 'c'])
   let b = bufnr('%')
   wincmd w
+  call assert_equal(1, appendbufline(b, -1, ['x']))
   call assert_equal(1, appendbufline(b, 4, ['x']))
   call assert_equal(1, appendbufline(1234, 1, ['x']))
   call assert_equal(0, appendbufline(b, 3, ['d', 'e']))
@@ -130,8 +131,11 @@ func Test_deletebufline()
   exe "bd!" b
   call assert_equal(1, deletebufline(b, 1))
 
+  call assert_equal(1, deletebufline(-1, 1))
+
   split Xtest
   call setline(1, ['a', 'b', 'c'])
+  call cursor(line('$'), 1)
   let b = bufnr('%')
   wincmd w
   call assert_equal(1, deletebufline(b, 4))
index 7c2c5e341c0f09e171d2c511303e88099ffb24eb..3b57360ace79bc83e96ec9ac158147f5f07bbed3 100644 (file)
@@ -102,4 +102,14 @@ func Test_cindent_expr()
   bw!
 endfunc
 
+func Test_cindent_func()
+  new
+  setlocal cindent
+  call setline(1, ['int main(void)', '{', 'return 0;', '}'])
+  call assert_equal(cindent(0), -1)
+  call assert_equal(cindent(3), &sw)
+  call assert_equal(cindent(line('$')+1), -1)
+  bwipe!
+endfunc
+
 " vim: shiftwidth=2 sts=2 expandtab
index a41cc7d005a6ddb63fed42591ca070a3db8863d9..12319577c6193c8b4c214ea91d62e418fc610f03 100644 (file)
@@ -25,6 +25,12 @@ func Test_move_cursor()
   call cursor(9, 1)
   call assert_equal([4, 1, 0, 1], getcurpos()[1:])
 
+  call setline(1, ["\<TAB>"])
+  call cursor(1, 1, 1)
+  call assert_equal([1, 1, 1], getcurpos()[1:3])
+
+  call assert_equal(-1, cursor(-1, -1))
+
   quit!
 endfunc
 
index 4686a0dc97aafcfc66cdbb417197044eff7f5952..b3e153e5b768b52cfd665b7a7602c79016e5e8ac 100644 (file)
@@ -105,3 +105,8 @@ func Test_symlink_recursive_delete()
   bwipe Xdir3/subdir/Xfile
   bwipe Xdir4/Xfile
 endfunc
+
+func Test_delete_errors()
+  call assert_fails('call delete('''')', 'E474:')
+  call assert_fails('call delete(''foo'', 0)', 'E15:')
+endfunc
index fb29c3eb7a002aec470898c22dcbaee9386af7aa..f6e5293635aaa96637b69b7fae9cd6327a0406b7 100644 (file)
@@ -64,3 +64,12 @@ func Test_expand_sflnum()
   call assert_equal(64, str2nr(trim(execute('Flnum'))))
   delcommand Flnum
 endfunc
+
+func Test_expand()
+  new
+  call assert_equal("",  expand('%:S'))
+  call assert_equal('3', expand('<slnum>'))
+  call assert_equal(['4'], expand('<slnum>', v:false, v:true))
+  " Don't add any line above this, otherwise <slnum> will change.
+  quit
+endfunc
index 48fae74012f6bd97cecd77b00efa8abc3eaab186..29bfc9e2d0ae43aa60bb5fabcc0189b46546816c 100644 (file)
@@ -13,6 +13,7 @@ func Test_abs()
   call assert_equal('inf', string(abs(1.0/0.0)))
   call assert_equal('inf', string(abs(-1.0/0.0)))
   call assert_equal('nan', string(abs(0.0/0.0)))
+  call assert_equal('12', string(abs('12abc')))
   call assert_equal('12', string(abs('-12abc')))
   call assert_fails("call abs([])", 'E745:')
   call assert_fails("call abs({})", 'E728:')
index 768d31192ac17f1ecb316a4c370aa12af184997b..63f273677d903d4423e65b58d25e3b594b31d259 100644 (file)
@@ -45,9 +45,3 @@ func Test_fnamemodify()
   let $HOME = save_home
   let &shell = save_shell
 endfunc
-
-func Test_expand()
-  new
-  call assert_equal("",  expand('%:S'))
-  quit
-endfunc
index 7bd3ef488e189e5aebaee19e4ec4a1ad2c4472fe..b9520c7ee6a39e3a79d9df8cf804118d82b7c9af 100644 (file)
@@ -52,6 +52,7 @@ func Test_empty()
   endif
 
   call assert_equal(0, empty(function('Test_empty')))
+  call assert_equal(0, empty(function('Test_empty', [0])))
 endfunc
 
 func Test_len()
@@ -869,6 +870,7 @@ func Test_count()
   call assert_equal(1, count(l, 'a', 0, 1))
   call assert_equal(2, count(l, 'a', 1, 1))
   call assert_fails('call count(l, "a", 0, 10)', 'E684:')
+  call assert_fails('call count(l, "a", [])', 'E745:')
 
   let d = {1: 'a', 2: 'a', 3: 'A', 4: 'b'}
   call assert_equal(2, count(d, 'a'))
@@ -896,6 +898,8 @@ func Test_count()
   call assert_equal(2, count("foo", "O", 1))
   call assert_equal(2, count("fooooo", "oo"))
   call assert_equal(0, count("foo", ""))
+
+  call assert_fails('call count(0, 0)', 'E712:')
 endfunc
 
 func Test_changenr()
@@ -1431,3 +1435,23 @@ func Test_readdir()
 
   call delete('Xdir', 'rf')
 endfunc
+
+func Test_call()
+  call assert_equal(3, call('len', [123]))
+  call assert_fails("call call('len', 123)", 'E714:')
+  call assert_equal(0, call('', []))
+
+  function Mylen() dict
+     return len(self.data)
+  endfunction
+  let mydict = {'data': [0, 1, 2, 3], 'len': function("Mylen")}
+  call assert_fails("call call('Mylen', [], 0)", 'E715:')
+endfunc
+
+func Test_char2nr()
+  call assert_equal(12354, char2nr('あ', 1))
+endfunc
+
+func Test_eventhandler()
+  call assert_equal(0, eventhandler())
+endfunc
index b085052baa117010604440d78fb33fbe541559e6..01c4394960464599f273c4ef334277917e7ce9ad 100644 (file)
@@ -767,6 +767,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1336,
 /**/
     1335,
 /**/