diff options
author | Bram Moolenaar <Bram@vim.org> | 2020-04-21 22:19:45 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2020-04-21 22:19:45 +0200 |
commit | ad48e6c1590842ab6d48e6caba3e9250734dae27 (patch) | |
tree | c81fe7bc66f2807223cdf76306dccf5b714f3650 /src/testdir/test_bench_regexp.vim | |
parent | ff06f283e3e4b3ec43012dd3b83f8454c98f6639 (diff) |
patch 8.2.0615: regexp benchmark stest is old stylev8.2.0615
Problem: Regexp benchmark stest is old style.
Solution: Make it a new style test. Fix using a NULL list. Add more tests.
(Yegappan Lakshmanan, closes #5963)
Diffstat (limited to 'src/testdir/test_bench_regexp.vim')
-rw-r--r-- | src/testdir/test_bench_regexp.vim | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/testdir/test_bench_regexp.vim b/src/testdir/test_bench_regexp.vim new file mode 100644 index 0000000000..eb9f5f8e5a --- /dev/null +++ b/src/testdir/test_bench_regexp.vim @@ -0,0 +1,24 @@ +" Test for benchmarking the RE engine + +source check.vim +CheckFeature reltime + +func Measure(file, pattern, arg) + for re in range(3) + let sstart = reltime() + let before = ['set re=' .. re] + let after = ['call search("' .. escape(a:pattern, '\\') .. '", "", "", 10000)'] + let after += ['quit!'] + let args = empty(a:arg) ? '' : a:arg .. ' ' .. a:file + call RunVim(before, after, args) + let s = 'file: ' .. a:file .. ', re: ' .. re .. + \ ', time: ' .. reltimestr(reltime(sstart)) + call writefile([s], 'benchmark.out', "a") + endfor +endfunc + +func Test_Regex_Benchmark() + call Measure('samples/re.freeze.txt', '\s\+\%#\@<!$', '+5') +endfunc + +" vim: shiftwidth=2 sts=2 expandtab |