0
0
mirror of https://github.com/vim/vim.git synced 2025-09-23 03:43:49 -04:00

patch 7.4.1365

Problem:    Cannot execute a single test function.
Solution:   Add an argument to filter the functions with. (Yasuhiro Matsumoto)
This commit is contained in:
Bram Moolenaar
2016-02-20 14:41:40 +01:00
parent cf7164a088
commit befb366aff
2 changed files with 12 additions and 0 deletions

View File

@@ -2,6 +2,11 @@
" When the script is successful the .res file will be created. " When the script is successful the .res file will be created.
" Errors are appended to the test.log file. " Errors are appended to the test.log file.
" "
" To execute only specific test functions, add a second argument. It will be
" matched against the names of the Test_ funtion. E.g.:
" ../vim -u NONE -S runtest.vim test_channel.vim open_delay
" The output can be found in the "messages" file.
"
" The test script may contain anything, only functions that start with " The test script may contain anything, only functions that start with
" "Test_" are special. These will be invoked and should contain assert " "Test_" are special. These will be invoked and should contain assert
" functions. See test_assert.vim for an example. " functions. See test_assert.vim for an example.
@@ -94,6 +99,11 @@ silent function /^Test_
redir END redir END
let s:tests = split(substitute(@q, 'function \(\k*()\)', '\1', 'g')) let s:tests = split(substitute(@q, 'function \(\k*()\)', '\1', 'g'))
" If there is an extra argument filter the function names against it.
if argc() > 1
let s:tests = filter(s:tests, 'v:val =~ argv(1)')
endif
" Execute the tests in alphabetical order. " Execute the tests in alphabetical order.
for s:test in sort(s:tests) for s:test in sort(s:tests)
echo 'Executing ' . s:test echo 'Executing ' . s:test

View File

@@ -747,6 +747,8 @@ static char *(features[]) =
static int included_patches[] = static int included_patches[] =
{ /* Add new patch number below this line */ { /* Add new patch number below this line */
/**/
1365,
/**/ /**/
1364, 1364,
/**/ /**/