# HG changeset patch # User Christian Brabandt # Date 1455975904 -3600 # Node ID 71aabce3142e23454b299739513f1ee745be5d4f # Parent 894b78ff8a1dc2a233bccec6a035dab096869634 commit https://github.com/vim/vim/commit/befb366affa6309c6b4a469ec7f729821e3a36fa Author: Bram Moolenaar Date: Sat Feb 20 14:41:40 2016 +0100 patch 7.4.1365 Problem: Cannot execute a single test function. Solution: Add an argument to filter the functions with. (Yasuhiro Matsumoto) diff --git a/src/testdir/runtest.vim b/src/testdir/runtest.vim --- a/src/testdir/runtest.vim +++ b/src/testdir/runtest.vim @@ -2,6 +2,11 @@ " When the script is successful the .res file will be created. " 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 " "Test_" are special. These will be invoked and should contain assert " functions. See test_assert.vim for an example. @@ -94,6 +99,11 @@ silent function /^Test_ redir END 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. for s:test in sort(s:tests) echo 'Executing ' . s:test diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -748,6 +748,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1365, +/**/ 1364, /**/ 1363,