diff options
author | Justin M. Keyes <justinkz@gmail.com> | 2018-04-27 10:07:26 +0200 |
---|---|---|
committer | Justin M. Keyes <justinkz@gmail.com> | 2018-04-27 13:06:41 +0200 |
commit | d6a164026029b942150aeec7e768bc6180bfc50c (patch) | |
tree | ac23ee4f55c4ad6df1e717d46affcd13662aaebc | |
parent | 34f29ac858d00b9724254a5fa0ca0fda49b1303e (diff) | |
download | rneovim-d6a164026029b942150aeec7e768bc6180bfc50c.tar.gz rneovim-d6a164026029b942150aeec7e768bc6180bfc50c.tar.bz2 rneovim-d6a164026029b942150aeec7e768bc6180bfc50c.zip |
test/util: move general functions into global helpers
-rw-r--r-- | test/functional/helpers.lua | 70 | ||||
-rw-r--r-- | test/helpers.lua | 67 |
2 files changed, 73 insertions, 64 deletions
diff --git a/test/functional/helpers.lua b/test/functional/helpers.lua index 655200e6f7..9895281773 100644 --- a/test/functional/helpers.lua +++ b/test/functional/helpers.lua @@ -12,15 +12,18 @@ local Paths = require('test.config.paths') local check_cores = global_helpers.check_cores local check_logs = global_helpers.check_logs -local neq = global_helpers.neq +local dedent = global_helpers.dedent local eq = global_helpers.eq local expect_err = global_helpers.expect_err -local ok = global_helpers.ok +local filter = global_helpers.filter local map = global_helpers.map local matches = global_helpers.matches -local filter = global_helpers.filter -local dedent = global_helpers.dedent +local neq = global_helpers.neq +local ok = global_helpers.ok +local read_file = global_helpers.read_file +local sleep = global_helpers.sleep local table_flatten = global_helpers.table_flatten +local write_file = global_helpers.write_file local start_dir = lfs.currentdir() -- XXX: NVIM_PROG takes precedence, QuickBuild sets it. @@ -374,34 +377,6 @@ local function feed_command(...) end end --- Dedent the given text and write it to the file name. -local function write_file(name, text, no_dedent, append) - local file = io.open(name, (append and 'a' or 'w')) - if type(text) == 'table' then - -- Byte blob - local bytes = text - text = '' - for _, char in ipairs(bytes) do - text = ('%s%c'):format(text, char) - end - elseif not no_dedent then - text = dedent(text) - end - file:write(text) - file:flush() - file:close() -end - -local function read_file(name) - local file = io.open(name, 'r') - if not file then - return nil - end - local ret = file:read('*a') - file:close() - return ret -end - local sourced_fnames = {} local function source(code) local fname = tmpname() @@ -466,11 +441,6 @@ local function wait() session:request('nvim_eval', '1') end --- sleeps the test runner (_not_ the nvim instance) -local function sleep(ms) - luv.sleep(ms) -end - local function curbuf_contents() wait() -- Before inspecting the buffer, process all input. return table.concat(curbuf('get_lines', 0, -1, true), '\n') @@ -682,31 +652,6 @@ local function alter_slashes(obj) end end -local function hexdump(str) - local len = string.len(str) - local dump = "" - local hex = "" - local asc = "" - - for i = 1, len do - if 1 == i % 8 then - dump = dump .. hex .. asc .. "\n" - hex = string.format("%04x: ", i - 1) - asc = "" - end - - local ord = string.byte(str, i) - hex = hex .. string.format("%02x ", ord) - if ord >= 32 and ord <= 126 then - asc = asc .. string.char(ord) - else - asc = asc .. "." - end - end - - return dump .. hex .. string.rep(" ", 8 - len % 8) .. asc -end - local module = { NIL = mpack.NIL, alter_slashes = alter_slashes, @@ -737,7 +682,6 @@ local module = { filter = filter, funcs = funcs, get_pathsep = get_pathsep, - hexdump = hexdump, insert = insert, iswin = iswin, map = map, diff --git a/test/helpers.lua b/test/helpers.lua index efc0e911f1..0d3fe1316b 100644 --- a/test/helpers.lua +++ b/test/helpers.lua @@ -1,4 +1,5 @@ local assert = require('luassert') +local luv = require('luv') local lfs = require('lfs') local quote_me = '[^.%w%+%-%@%_%/]' -- complement (needn't quote) @@ -33,6 +34,11 @@ local function popen_w(...) return io.popen(argss_to_cmd(...), 'w') end +-- sleeps the test runner (_not_ the nvim instance) +local function sleep(ms) + luv.sleep(ms) +end + local check_logs_useless_lines = { ['Warning: noted but unhandled ioctl']=1, ['could cause spurious value errors to appear']=2, @@ -612,7 +618,60 @@ local function table_flatten(arr) return result end -return { +local function hexdump(str) + local len = string.len(str) + local dump = "" + local hex = "" + local asc = "" + + for i = 1, len do + if 1 == i % 8 then + dump = dump .. hex .. asc .. "\n" + hex = string.format("%04x: ", i - 1) + asc = "" + end + + local ord = string.byte(str, i) + hex = hex .. string.format("%02x ", ord) + if ord >= 32 and ord <= 126 then + asc = asc .. string.char(ord) + else + asc = asc .. "." + end + end + + return dump .. hex .. string.rep(" ", 8 - len % 8) .. asc +end + +local function read_file(name) + local file = io.open(name, 'r') + if not file then + return nil + end + local ret = file:read('*a') + file:close() + return ret +end + +-- Dedent the given text and write it to the file name. +local function write_file(name, text, no_dedent, append) + local file = io.open(name, (append and 'a' or 'w')) + if type(text) == 'table' then + -- Byte blob + local bytes = text + text = '' + for _, char in ipairs(bytes) do + text = ('%s%c'):format(text, char) + end + elseif not no_dedent then + text = dedent(text) + end + file:write(text) + file:flush() + file:close() +end + +local module = { REMOVE_THIS = REMOVE_THIS, argss_to_cmd = argss_to_cmd, check_cores = check_cores, @@ -630,6 +689,7 @@ return { format_string = format_string, glob = glob, hasenv = hasenv, + hexdump = hexdump, intchar2lua = intchar2lua, map = map, matches = matches, @@ -638,11 +698,16 @@ return { ok = ok, popen_r = popen_r, popen_w = popen_w, + read_file = read_file, repeated_read_cmd = repeated_read_cmd, + sleep = sleep, shallowcopy = shallowcopy, table_flatten = table_flatten, tmpname = tmpname, uname = uname, updated = updated, which = which, + write_file = write_file, } + +return module |