comparison src/testdir/test_search.vim @ 14189:0181a2cad0a1 v8.1.0112

patch 8.1.0112: no error when using bad arguments with searchpair() commit https://github.com/vim/vim/commit/3dddb09c98825acefa6f2d94bb369b8e00d7b3e5 Author: Bram Moolenaar <Bram@vim.org> Date: Sun Jun 24 19:01:59 2018 +0200 patch 8.1.0112: no error when using bad arguments with searchpair() Problem: No error when using bad arguments with searchpair(). Solution: Add error messages.
author Christian Brabandt <cb@256bit.org>
date Sun, 24 Jun 2018 19:15:06 +0200
parents 16a062cf08c2
children f8280e1bfc84
comparison
equal deleted inserted replaced
14188:741f735b86dc 14189:0181a2cad0a1
285 285
286 func Test_searchpair() 286 func Test_searchpair()
287 new 287 new
288 call setline(1, ['other code here', '', '[', '" cursor here', ']']) 288 call setline(1, ['other code here', '', '[', '" cursor here', ']'])
289 4 289 4
290 let a=searchpair('\[','',']','bW') 290 let a = searchpair('\[','',']','bW')
291 call assert_equal(3, a) 291 call assert_equal(3, a)
292 set nomagic 292 set nomagic
293 4 293 4
294 let a=searchpair('\[','',']','bW') 294 let a = searchpair('\[','',']','bW')
295 call assert_equal(3, a) 295 call assert_equal(3, a)
296 set magic 296 set magic
297 q! 297 q!
298 endfunc
299
300 func Test_searchpair_errors()
301 call assert_fails("call searchpair([0], 'middle', 'end', 'bW', 'skip', 99, 100)", 'E730: using List as a String')
302 call assert_fails("call searchpair('start', {-> 0}, 'end', 'bW', 'skip', 99, 100)", 'E729: using Funcref as a String')
303 call assert_fails("call searchpair('start', 'middle', {'one': 1}, 'bW', 'skip', 99, 100)", 'E731: using Dictionary as a String')
304 call assert_fails("call searchpair('start', 'middle', 'end', 'flags', 'skip', 99, 100)", 'E475: Invalid argument: flags')
305 call assert_fails("call searchpair('start', 'middle', 'end', 'bW', 0, 99, 100)", 'E475: Invalid argument: 0')
306 call assert_fails("call searchpair('start', 'middle', 'end', 'bW', 'func', -99, 100)", 'E475: Invalid argument: -99')
307 call assert_fails("call searchpair('start', 'middle', 'end', 'bW', 'func', 99, -100)", 'E475: Invalid argument: -100')
298 endfunc 308 endfunc
299 309
300 func Test_searchpair_skip() 310 func Test_searchpair_skip()
301 func Zero() 311 func Zero()
302 return 0 312 return 0
309 3 | call assert_equal(1, searchpair('{', '', '}', 'bWn', '')) 319 3 | call assert_equal(1, searchpair('{', '', '}', 'bWn', ''))
310 3 | call assert_equal(1, searchpair('{', '', '}', 'bWn', '0')) 320 3 | call assert_equal(1, searchpair('{', '', '}', 'bWn', '0'))
311 3 | call assert_equal(1, searchpair('{', '', '}', 'bWn', {-> 0})) 321 3 | call assert_equal(1, searchpair('{', '', '}', 'bWn', {-> 0}))
312 3 | call assert_equal(1, searchpair('{', '', '}', 'bWn', function('Zero'))) 322 3 | call assert_equal(1, searchpair('{', '', '}', 'bWn', function('Zero')))
313 3 | call assert_equal(1, searchpair('{', '', '}', 'bWn', function('Partial', [0]))) 323 3 | call assert_equal(1, searchpair('{', '', '}', 'bWn', function('Partial', [0])))
314 " invalid argument
315 3 | call assert_equal(0, searchpair('{', '', '}', 'bWn', 0))
316 bw! 324 bw!
317 endfunc 325 endfunc
318 326
319 func Test_searchc() 327 func Test_searchc()
320 " These commands used to cause memory overflow in searchc(). 328 " These commands used to cause memory overflow in searchc().