diff options
author | Justin M. Keyes <justinkz@gmail.com> | 2019-05-18 09:50:44 +0200 |
---|---|---|
committer | Justin M. Keyes <justinkz@gmail.com> | 2019-05-18 15:48:13 +0200 |
commit | 7669fc1e9b9dba015597974f4a2b46f2439b48da (patch) | |
tree | 3fe14d0eac1881c552c3fb6e732e84cf4d5da147 /test/functional/helpers.lua | |
parent | bba75eb184cee3d96264a392e2083f5b50732214 (diff) | |
download | rneovim-7669fc1e9b9dba015597974f4a2b46f2439b48da.tar.gz rneovim-7669fc1e9b9dba015597974f4a2b46f2439b48da.tar.bz2 rneovim-7669fc1e9b9dba015597974f4a2b46f2439b48da.zip |
test: share implementation of testdir/load.vim
Also, don't compute load factor unless load_adjust() was called, it
slows down the test suite.
ref #9292
Diffstat (limited to 'test/functional/helpers.lua')
-rw-r--r-- | test/functional/helpers.lua | 39 |
1 files changed, 6 insertions, 33 deletions
diff --git a/test/functional/helpers.lua b/test/functional/helpers.lua index ae11455b3e..101d456165 100644 --- a/test/functional/helpers.lua +++ b/test/functional/helpers.lua @@ -739,41 +739,14 @@ local function alter_slashes(obj) end end -local function compute_load_factor() - local timeout = 200 - local times = {} - - clear() - - for _ = 1, 5 do - source([[ - let g:val = 0 - call timer_start(200, {-> nvim_set_var('val', 1)}) - let start = reltime() - while 1 - sleep 10m - if g:val == 1 - let g:waited_in_ms = float2nr(reltimefloat(reltime(start)) * 1000) - break - endif - endwhile - ]]) - table.insert(times, nvim_eval('g:waited_in_ms')) - end - - session:close() - session = nil - - local longest = math.max(unpack(times)) - local factor = (longest + 50.0) / timeout - - return factor -end - --- Compute load factor only once. -local load_factor = compute_load_factor() +local load_factor = nil local function load_adjust(num) + if load_factor == nil then -- Compute load factor only once. + clear() + request('nvim_command', 'source src/nvim/testdir/load.vim') + load_factor = request('nvim_eval', 'g:test_load_factor') + end return math.ceil(num * load_factor) end |