Merge PR #3687 'Add luacheck for linting tests'

This commit is contained in:
Marco Hinz
2015-11-23 13:58:35 +01:00
114 changed files with 370 additions and 387 deletions

View File

@@ -366,6 +366,8 @@ if(NOT BUSTED_OUTPUT_TYPE)
set(BUSTED_OUTPUT_TYPE "utfTerminal")
endif()
find_program(LUACHECK_PRG luacheck)
include(InstallHelpers)
file(GLOB MANPAGES
@@ -456,3 +458,11 @@ if(BUSTED_PRG)
-P ${PROJECT_SOURCE_DIR}/cmake/RunTests.cmake
DEPENDS ${BENCHMARK_PREREQS})
endif()
if(LUACHECK_PRG)
add_custom_target(testlint
COMMAND ${CMAKE_COMMAND}
-DLUACHECK_PRG=${LUACHECK_PRG}
-DTEST_DIR=${CMAKE_CURRENT_SOURCE_DIR}/test
-P ${PROJECT_SOURCE_DIR}/cmake/RunTestsLint.cmake)
endif()

View File

@@ -86,6 +86,9 @@ oldtest: | nvim
functionaltest: | nvim
+$(BUILD_CMD) -C build functionaltest
testlint: | nvim
$(BUILD_CMD) -C build testlint
test: functionaltest
unittest: | nvim
@@ -110,4 +113,4 @@ lint:
-DLINT_SUPPRESS_URL="$(DOC_DOWNLOAD_URL_BASE)$(CLINT_ERRORS_FILE_PATH)" \
-P cmake/RunLint.cmake
.PHONY: test functionaltest unittest lint clean distclean nvim libnvim cmake deps install
.PHONY: test testlint functionaltest unittest lint clean distclean nvim libnvim cmake deps install

11
cmake/RunTestsLint.cmake Normal file
View File

@@ -0,0 +1,11 @@
execute_process(
COMMAND ${LUACHECK_PRG} -q ${TEST_DIR}
WORKING_DIRECTORY ${TEST_DIR}
ERROR_VARIABLE err
RESULT_VARIABLE res
${EXTRA_ARGS})
if(NOT res EQUAL 0)
message(STATUS "Output to stderr:\n${err}")
message(FATAL_ERROR "Linting tests failed with error: ${res}.")
endif()

13
test/.luacheckrc Normal file
View File

@@ -0,0 +1,13 @@
-- vim: ft=lua tw=80
-- Don't report globals from luajit or busted (e.g. jit.os or describe).
std = '+luajit +busted'
-- One can't test these files properly; assume correctness.
exclude_files = { '*/preload.lua' }
-- Don't report unused self arguments of methods.
self = false
-- Rerun tests only if their modification time changed.
cache = true

View File

@@ -1,7 +1,7 @@
-- Test for benchmarking RE engine.
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local insert, source = helpers.insert, helpers.source
local clear, execute, wait = helpers.clear, helpers.execute, helpers.wait
-- Temporary file for gathering benchmarking results for each regexp engine.

View File

@@ -19,7 +19,7 @@ describe("update_menu notification", function()
screen:detach()
end)
function expect_sent(expected)
local function expect_sent(expected)
screen:wait(function()
if screen.update_menu ~= expected then
if expected then

View File

@@ -95,13 +95,13 @@ describe('server -> client', function()
eq('notified!', eval('rpcrequest('..cid..', "notify")'))
end
local function on_request(method, args)
local function on_request(method)
eq('notify', method)
eq(1, eval('rpcnotify('..cid..', "notification")'))
return 'notified!'
end
local function on_notification(method, args)
local function on_notification(method)
eq('notification', method)
if notified == expected then
stop()

View File

@@ -180,6 +180,8 @@ describe('vim_* functions', function()
end)
describe('err_write', function()
local screen
before_each(function()
clear()
screen = Screen.new(40, 8)

View File

@@ -1,9 +1,9 @@
-- Sanity checks for window_* API calls via msgpack-rpc
local helpers = require('test.functional.helpers')
local clear, nvim, buffer, curbuf, curbuf_contents, window, curwin, eq, neq,
ok, feed, rawfeed, insert, eval = helpers.clear, helpers.nvim, helpers.buffer, helpers.curbuf,
local clear, nvim, curbuf, curbuf_contents, window, curwin, eq, neq,
ok, feed, insert, eval = helpers.clear, helpers.nvim, helpers.curbuf,
helpers.curbuf_contents, helpers.window, helpers.curwin, helpers.eq,
helpers.neq, helpers.ok, helpers.feed, helpers.rawfeed, helpers.insert, helpers.eval
helpers.neq, helpers.ok, helpers.feed, helpers.insert, helpers.eval
local wait = helpers.wait
-- check if str is visible at the beginning of some line
@@ -54,7 +54,7 @@ describe('window_* functions', function()
insert("prologue")
feed('100o<esc>')
insert("epilogue")
win = curwin()
local win = curwin()
feed('gg')
wait() -- let nvim process the 'gg' command

View File

@@ -1,7 +1,5 @@
local helpers = require('test.functional.helpers')
local clear, nvim, buffer, curbuf, curwin, eq, neq, ok =
helpers.clear, helpers.nvim, helpers.buffer, helpers.curbuf, helpers.curwin,
helpers.eq, helpers.neq, helpers.ok
local clear, nvim, eq = helpers.clear, helpers.nvim, helpers.eq
describe('TabClosed', function()
describe('au TabClosed', function()
@@ -20,7 +18,6 @@ describe('TabClosed', function()
end)
describe('with NR as <afile>', function()
it('matches when closing a tab whose index is NR', function()
tmp_path = nvim('eval', 'tempname()')
nvim('command', 'au! TabClosed 2 echom "tabclosed:match"')
repeat
nvim('command', 'tabnew')

View File

@@ -1,7 +1,5 @@
local helpers = require('test.functional.helpers')
local clear, nvim, buffer, curbuf, curwin, eq, neq, ok =
helpers.clear, helpers.nvim, helpers.buffer, helpers.curbuf, helpers.curwin,
helpers.eq, helpers.neq, helpers.ok
local clear, nvim, eq = helpers.clear, helpers.nvim, helpers.eq
describe('TabNew', function()
setup(clear)
@@ -15,7 +13,7 @@ describe('TabNew', function()
end)
describe('with FILE as <afile>', function()
it('matches when opening a new tab for FILE', function()
tmp_path = nvim('eval', 'tempname()')
local tmp_path = nvim('eval', 'tempname()')
nvim('command', 'au! TabNew '..tmp_path..' echom "tabnew:match"')
eq("\ntabnew:4:3\ntabnew:match\n\""..tmp_path.."\" [New File]", nvim('command_output', 'tabnew '..tmp_path))
end)

View File

@@ -1,7 +1,5 @@
local helpers = require('test.functional.helpers')
local clear, nvim, buffer, curbuf, curwin, eq, neq, ok =
helpers.clear, helpers.nvim, helpers.buffer, helpers.curbuf, helpers.curwin,
helpers.eq, helpers.neq, helpers.ok
local clear, nvim, eq = helpers.clear, helpers.nvim, helpers.eq
describe('TabNewEntered', function()
describe('au TabNewEntered', function()
@@ -15,7 +13,7 @@ describe('TabNewEntered', function()
end)
describe('with FILE as <afile>', function()
it('matches when opening a new tab for FILE', function()
tmp_path = nvim('eval', 'tempname()')
local tmp_path = nvim('eval', 'tempname()')
nvim('command', 'au! TabNewEntered '..tmp_path..' echom "tabnewentered:match"')
eq("\n\""..tmp_path.."\" [New File]\ntabnewentered:4:4\ntabnewentered:match", nvim('command_output', 'tabnew '..tmp_path))
end)

View File

@@ -1,11 +1,11 @@
local helpers = require('test.functional.helpers')
local Screen = require('test.functional.ui.screen')
local clear, eval, execute, feed, nvim, nvim_dir = helpers.clear, helpers.eval,
local clear, execute, feed, nvim, nvim_dir = helpers.clear,
helpers.execute, helpers.feed, helpers.nvim, helpers.nvim_dir
local wait = helpers.wait
describe('TermClose event', function()
local screen
before_each(function()
clear()
nvim('set_option', 'shell', nvim_dir .. '/shell-test')

View File

@@ -4,7 +4,6 @@ local helpers = require('test.functional.helpers')
local Screen = require('test.functional.ui.screen')
local clear, feed, insert = helpers.clear, helpers.feed, helpers.insert
local execute, expect, eq, eval = helpers.execute, helpers.expect, helpers.eq, helpers.eval
local nvim, run, stop, restart = helpers.nvim, helpers.run, helpers.stop, helpers.restart
local function basic_register_test(noblock)
insert("some words")

View File

@@ -1,3 +1,4 @@
local lfs = require('lfs')
local helpers = require('test.functional.helpers')
local clear, execute, eval, eq = helpers.clear, helpers.execute, helpers.eval, helpers.eq

View File

@@ -1,7 +1,7 @@
local helpers = require('test.functional.helpers')
local clear, feed, execute = helpers.clear, helpers.feed, helpers.execute
local eval, eq, neq = helpers.eval, helpers.eq, helpers.neq
local execute, source = helpers.execute, helpers.source
local clear = helpers.clear
local eval, eq = helpers.eval, helpers.eq
local execute = helpers.execute
local nvim = helpers.nvim
local exc_exec = helpers.exc_exec
@@ -454,9 +454,9 @@ describe('msgpackparse() function', function()
it('msgpackparse(systemlist(...)) does not segfault. #3135', function()
local cmd = "sort(keys(msgpackparse(systemlist('"
..helpers.nvim_prog.." --api-info'))[0]))"
local api_info = eval(cmd)
api_info = eval(cmd) -- do it again (try to force segfault)
api_info = eval(cmd) -- do it again
eval(cmd)
eval(cmd) -- do it again (try to force segfault)
local api_info = eval(cmd) -- do it again
eq({'error_types', 'functions', 'types'}, api_info)
end)

View File

@@ -1,7 +1,6 @@
local helpers = require('test.functional.helpers')
local clear, execute, nvim, feed, eq, ok, eval =
helpers.clear, helpers.execute, helpers.nvim, helpers.feed,
helpers.eq, helpers.ok, helpers.eval
local clear, execute, feed, ok, eval =
helpers.clear, helpers.execute, helpers.feed, helpers.ok, helpers.eval
describe(':grep', function()
before_each(clear)

View File

@@ -2,7 +2,7 @@ local Screen = require('test.functional.ui.screen')
local helpers = require('test.functional.helpers')
local buf, eq, execute = helpers.curbufmeths, helpers.eq, helpers.execute
local feed, nvim, nvim_prog = helpers.feed, helpers.nvim, helpers.nvim_prog
local feed, nvim_prog = helpers.feed, helpers.nvim_prog
local ok, set_session, spawn = helpers.ok, helpers.set_session, helpers.spawn
local shada_file = 'test.shada'
@@ -11,9 +11,6 @@ local shada_file = 'test.shada'
-- helpers.clear() uses "-i NONE", which is not useful for this test.
--
local function _clear()
if session then
session:exit(0)
end
set_session(spawn({nvim_prog,
'-u', 'NONE',
'--cmd', 'set noswapfile undodir=. directory=. viewdir=. backupdir=.',
@@ -32,7 +29,7 @@ describe(':oldfiles', function()
end
it('shows most recently used files', function()
screen = Screen.new(100, 5)
local screen = Screen.new(100, 5)
screen:attach()
execute('edit testfile1')
execute('edit testfile2')

View File

@@ -1,5 +1,5 @@
require('os')
require('lfs')
local lfs = require('lfs')
local helpers = require('test.functional.helpers')
local eval = helpers.eval

View File

@@ -1,5 +1,5 @@
local helpers = require('test.functional.helpers')
local execute, eq, clear = helpers.execute, helpers.eq, helpers.clear
local clear = helpers.clear
describe(':qa', function()
before_each(function()

View File

@@ -1,6 +1,7 @@
-- Tests for :recover
local helpers = require('test.functional.helpers')
local lfs = require('lfs')
local execute, eq, clear, eval, feed, expect, source =
helpers.execute, helpers.eq, helpers.clear, helpers.eval, helpers.feed,
helpers.expect, helpers.source

View File

@@ -1,7 +1,5 @@
local helpers = require('test.functional.helpers')
local clear, nvim, buffer, curbuf, curwin, eq, ok =
helpers.clear, helpers.nvim, helpers.buffer, helpers.curbuf, helpers.curwin,
helpers.eq, helpers.ok
local clear, nvim, eq = helpers.clear, helpers.nvim, helpers.eq
describe('sign', function()
before_each(clear)

View File

@@ -1,6 +1,6 @@
local helpers, lfs = require('test.functional.helpers'), require('lfs')
local clear, execute, eq, neq, spawn, nvim_prog, set_session, wait, write_file
= helpers.clear, helpers.execute, helpers.eq, helpers.neq, helpers.spawn,
local execute, eq, neq, spawn, nvim_prog, set_session, wait, write_file
= helpers.execute, helpers.eq, helpers.neq, helpers.spawn,
helpers.nvim_prog, helpers.set_session, helpers.wait, helpers.write_file
describe(':wshada', function()
@@ -13,7 +13,7 @@ describe(':wshada', function()
end
-- Override the default session because we need 'swapfile' for these tests.
local session = spawn({nvim_prog, '-u', 'NONE', '-i', '/dev/null', '--embed',
session = spawn({nvim_prog, '-u', 'NONE', '-i', '/dev/null', '--embed',
'--cmd', 'set swapfile'})
set_session(session)

View File

@@ -1,4 +1,5 @@
require('coxpcall')
local lfs = require('lfs')
local assert = require('luassert')
local Loop = require('nvim.loop')
local MsgpackStream = require('nvim.msgpack_stream')
@@ -55,7 +56,7 @@ if prepend_argv then
nvim_argv = new_nvim_argv
end
local session, loop_running, loop_stopped, last_error
local session, loop_running, last_error
local function set_session(s)
session = s
@@ -79,7 +80,7 @@ local function next_message()
end
local function call_and_stop_on_error(...)
local status, result = copcall(...)
local status, result = copcall(...) -- luacheck: ignore
if not status then
session:stop()
last_error = result
@@ -109,7 +110,6 @@ local function run(request_cb, notification_cb, setup_cb, timeout)
end
end
loop_stopped = false
loop_running = true
session:run(on_request, on_notification, on_setup, timeout)
loop_running = false
@@ -121,7 +121,6 @@ local function run(request_cb, notification_cb, setup_cb, timeout)
end
local function stop()
loop_stopped = true
session:stop()
end
@@ -197,9 +196,9 @@ local function spawn(argv, merge)
local loop = Loop.new()
local msgpack_stream = MsgpackStream.new(loop)
local async_session = AsyncSession.new(msgpack_stream)
local session = Session.new(async_session)
local sess = Session.new(async_session)
loop:spawn(merge and merge_args(prepend_argv, argv) or argv)
return session
return sess
end
local function clear(extra_cmd)
@@ -332,14 +331,14 @@ local function rmdir(path)
if file == '.' or file == '..' then
goto continue
end
ret, err = os.remove(path..'/'..file)
local ret, err = os.remove(path..'/'..file)
if not ret then
error('os.remove: '..err)
return nil
end
::continue::
end
ret, err = os.remove(path)
local ret, err = os.remove(path)
if not ret then
error('os.remove: '..err)
end
@@ -371,15 +370,15 @@ local function redir_exec(cmd)
end
local function create_callindex(func)
local tbl = {}
setmetatable(tbl, {
local table = {}
setmetatable(table, {
__index = function(tbl, arg1)
ret = function(...) return func(arg1, ...) end
local ret = function(...) return func(arg1, ...) end
tbl[arg1] = ret
return ret
end,
})
return tbl
return table
end
local funcs = create_callindex(nvim_call)

View File

@@ -1,11 +1,11 @@
local helpers = require('test.functional.helpers')
local clear, eq, eval, execute, expect, feed, insert, neq, next_msg, nvim,
nvim_dir, ok, run, session, source, stop, wait, write_file = helpers.clear,
helpers.eq, helpers.eval, helpers.execute, helpers.expect, helpers.feed,
local clear, eq, eval, execute, feed, insert, neq, next_msg, nvim,
nvim_dir, ok, source, write_file = helpers.clear,
helpers.eq, helpers.eval, helpers.execute, helpers.feed,
helpers.insert, helpers.neq, helpers.next_message, helpers.nvim,
helpers.nvim_dir, helpers.ok, helpers.run, helpers.session, helpers.source,
helpers.stop, helpers.wait, helpers.write_file
helpers.nvim_dir, helpers.ok, helpers.source,
helpers.write_file
local Screen = require('test.functional.ui.screen')
@@ -370,7 +370,7 @@ describe('jobs', function()
describe('running tty-test program', function()
local function next_chunk()
local rv = ''
local rv
while true do
local msg = next_msg()
local data = msg[3][2]

View File

@@ -4,7 +4,7 @@
-- in the original test. These have been converted to "it" test cases here.
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local feed, insert = helpers.feed, helpers.insert
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
-- Inserts text as usual, and additionally positions the cursor on line 1 and

View File

@@ -1,7 +1,7 @@
-- Test for Bufleave autocommand that deletes the buffer we are about to edit.
local helpers = require('test.functional.helpers')
local clear, feed, insert = helpers.clear, helpers.feed, helpers.insert
local clear, insert = helpers.clear, helpers.insert
local execute, expect = helpers.execute, helpers.expect
describe('BufLeave autocommand', function()

View File

@@ -3,7 +3,7 @@
-- Also test undo after ":%s" and formatting.
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local feed, insert = helpers.feed, helpers.insert
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
describe('alignment', function()

View File

@@ -1,7 +1,7 @@
-- Tests for file with some lines ending in CTRL-M, some not
local helpers = require('test.functional.helpers')
local clear, feed, insert = helpers.clear, helpers.feed, helpers.insert
local clear, feed = helpers.clear, helpers.feed
local execute, expect = helpers.execute, helpers.expect
describe('line ending', function()

View File

@@ -1,7 +1,7 @@
-- Tests for complicated + argument to :edit command
local helpers = require('test.functional.helpers')
local clear, feed, insert = helpers.clear, helpers.feed, helpers.insert
local clear, insert = helpers.clear, helpers.insert
local execute, expect = helpers.execute, helpers.expect
describe(':edit', function()

View File

@@ -1,7 +1,7 @@
-- Test for :execute, :while and :if
local helpers = require('test.functional.helpers')
local clear, feed, insert = helpers.clear, helpers.feed, helpers.insert
local clear = helpers.clear
local execute, expect = helpers.execute, helpers.expect
local source = helpers.source

View File

@@ -1,10 +1,10 @@
-- Test for expanding file names
local helpers = require('test.functional.helpers')
local clear, feed, insert = helpers.clear, helpers.feed, helpers.insert
local execute, expect = helpers.execute, helpers.expect
local clear, feed = helpers.clear, helpers.feed
local execute = helpers.execute
local curbuf_contents = helpers.curbuf_contents
local eq, eval = helpers.eq, helpers.eval
local eq = helpers.eq
describe('expand file name', function()
setup(clear)

View File

@@ -1,7 +1,7 @@
-- Test for joining lines with marks in them (and with 'joinspaces' set/reset)
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local feed, insert = helpers.feed, helpers.insert
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
describe('joining lines', function()

View File

@@ -10,7 +10,7 @@
-- :edit
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local feed, insert = helpers.feed, helpers.insert
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
describe('Commands that close windows and/or buffers', function()

View File

@@ -1,7 +1,7 @@
-- Test Virtual replace mode.
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local feed = helpers.feed
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
describe('Virtual replace mode', function()

View File

@@ -4,7 +4,7 @@
-- This test contains both "test44" and "test99" from the old test suite.
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local feed, insert = helpers.feed, helpers.insert
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
-- Runs the test protocol with the given 'regexpengine' setting. In the old test

View File

@@ -3,7 +3,7 @@
local helpers = require('test.functional.helpers')
local clear, feed, insert = helpers.clear, helpers.feed, helpers.insert
local execute, expect = helpers.execute, helpers.expect
local expect = helpers.expect
describe('multi-line regexp', function()
setup(clear)

View File

@@ -3,7 +3,7 @@
local Screen = require('test.functional.ui.screen')
local helpers = require('test.functional.helpers')
local clear, feed, insert = helpers.clear, helpers.feed, helpers.insert
local clear, feed = helpers.clear, helpers.feed
local execute, expect = helpers.execute, helpers.expect
local wait = helpers.wait

View File

@@ -3,7 +3,7 @@
local helpers = require('test.functional.helpers')
local clear, feed, insert = helpers.clear, helpers.feed, helpers.insert
local execute, expect = helpers.execute, helpers.expect
local expect = helpers.expect
describe('source function', function()
setup(clear)

View File

@@ -1,8 +1,8 @@
-- Tests for the exists() and has() functions.
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
local source = helpers.source
local clear, expect = helpers.clear, helpers.expect
local write_file = helpers.write_file
describe('exists() and has() functions', function()

View File

@@ -1,8 +1,8 @@
-- Tests for undo tree and :earlier and :later.
local helpers = require('test.functional.helpers')
local feed, insert, source, eq, eval, clear, execute, expect, wait, write_file
= helpers.feed, helpers.insert, helpers.source, helpers.eq, helpers.eval,
local feed, source, eq, eval, clear, execute, expect, wait, write_file =
helpers.feed, helpers.source, helpers.eq, helpers.eval,
helpers.clear, helpers.execute, helpers.expect, helpers.wait,
helpers.write_file
@@ -97,9 +97,8 @@ describe('undo tree:', function()
-- Retry up to 3 times. pcall() is _not_ used for the final attempt, so
-- that failure messages can bubble up.
local success, result = false, ''
for i = 1, 2 do
success, result = pcall(test_earlier_later)
for _ = 1, 2 do
local success = pcall(test_earlier_later)
if success then
return
end

View File

@@ -2,10 +2,9 @@
local helpers = require('test.functional.helpers')
local Screen = require('test.functional.ui.screen')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local eval, clear, execute, expect = helpers.eval, helpers.clear, helpers.execute
local expect, eq, neq = helpers.expect, helpers.eq, helpers.neq
local command = helpers.command
local feed, insert = helpers.feed, helpers.insert
local eval, clear, execute = helpers.eval, helpers.clear, helpers.execute
local eq, neq = helpers.eq, helpers.neq
describe('063: Test for ":match", "matchadd()" and related functions', function()
setup(clear)
@@ -86,7 +85,7 @@ describe('063: Test for ":match", "matchadd()" and related functions', function(
execute("2match MyGroup2 /HUMPPA/")
execute("3match MyGroup3 /VIM/")
execute("let ml = getmatches()")
ml = eval("ml")
local ml = eval("ml")
execute("call clearmatches()")
execute("call setmatches(ml)")
eq(ml, eval('getmatches()'))

View File

@@ -1,7 +1,7 @@
-- Test for floating point and logical operators.
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local insert, source = helpers.insert, helpers.source
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
describe('floating point and logical operators', function()

View File

@@ -2,7 +2,7 @@
-- autocommands.
local helpers = require('test.functional.helpers')
local clear, feed, insert = helpers.clear, helpers.feed, helpers.insert
local clear = helpers.clear
local execute, expect = helpers.execute, helpers.expect
describe('augroup when calling exists()', function()

View File

@@ -3,7 +3,7 @@
-- undo-able pieces. Do that by setting 'undolevels'.
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local feed, insert = helpers.feed, helpers.insert
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
describe('72', function()

View File

@@ -13,7 +13,7 @@ describe('storing global variables in ShaDa files', function()
end)
it('is working', function()
local nvim2 = helpers.spawn({helpers.nvim_prog, '-u', 'NONE',
local nvim2 = spawn({helpers.nvim_prog, '-u', 'NONE',
'-i', 'Xviminfo', '--embed'})
helpers.set_session(nvim2)

View File

@@ -2,7 +2,7 @@
-- Also test utf8 map with a 0x80 byte.
local helpers = require('test.functional.helpers')
local clear, feed, insert = helpers.clear, helpers.feed, helpers.insert
local clear, feed = helpers.clear, helpers.feed
local execute, expect = helpers.execute, helpers.expect
describe('maparg()', function()

View File

@@ -7,7 +7,7 @@
-- If it isn't available then the test will be skipped.
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local feed = helpers.feed
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
describe('mf_hash_grow()', function()

View File

@@ -4,9 +4,7 @@
-- pointer blocks.
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local clear, execute, expect, source = helpers.clear, helpers.execute, helpers.expect, helpers.source
local eval = helpers.eval
local clear, expect, source = helpers.clear, helpers.expect, helpers.source
describe('78', function()
setup(clear)

View File

@@ -3,7 +3,7 @@
-- Test for *:s%* on :substitute.
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local feed, insert = helpers.feed, helpers.insert
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
local eq, eval = helpers.eq, helpers.eval

View File

@@ -2,7 +2,7 @@
-- Also test "g~ap".
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local feed, source = helpers.feed, helpers.source
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
describe('case-insensitive string comparison in UTF-8', function()

View File

@@ -1,8 +1,8 @@
-- Tests for curswant not changing when setting an option.
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
local insert, source = helpers.insert, helpers.source
local clear, expect = helpers.clear, helpers.expect
describe('curswant', function()
setup(clear)

View File

@@ -4,7 +4,7 @@
local helpers = require('test.functional.helpers')
local feed = helpers.feed
local clear, execute, expect, source = helpers.clear, helpers.execute, helpers.expect, helpers.source
local clear, expect, source = helpers.clear, helpers.expect, helpers.source
describe("setting 'number' and 'relativenumber'", function()
setup(clear)

View File

@@ -1,8 +1,8 @@
-- Tests for sha256() function.
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
local insert, source = helpers.insert, helpers.source
local clear, expect = helpers.clear, helpers.expect
describe('sha256()', function()
setup(clear)

View File

@@ -1,8 +1,8 @@
-- Tests for getbufvar(), getwinvar(), gettabvar() and gettabwinvar().
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
local insert, source = helpers.insert, helpers.source
local clear, expect = helpers.clear, helpers.expect
describe('context variables', function()
setup(clear)

View File

@@ -4,7 +4,7 @@
-- Same as legacy test 93 but using UTF-8 file encoding.
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local feed, insert = helpers.feed, helpers.insert
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
describe('store cursor position in session file in UTF-8', function()

View File

@@ -4,7 +4,7 @@
-- Same as legacy test 92 but using Latin-1 file encoding.
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local feed, insert = helpers.feed, helpers.insert
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
describe('store cursor position in session file in Latin-1', function()

View File

@@ -4,8 +4,8 @@
-- actually tried.
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
local insert, source = helpers.insert, helpers.source
local clear, expect = helpers.clear, helpers.expect
describe('regex with multi-byte', function()
setup(clear)

View File

@@ -7,7 +7,7 @@
-- it belongs to.
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local source = helpers.source
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
describe('location list', function()

View File

@@ -3,7 +3,7 @@
-- characters.
local helpers = require('test.functional.helpers')
local clear, feed, insert = helpers.clear, helpers.feed, helpers.insert
local clear = helpers.clear
local execute, expect = helpers.execute, helpers.expect
describe('glob() and globpath()', function()

View File

@@ -1,8 +1,8 @@
-- Test for 'scrollbind' causing an unexpected scroll of one of the windows.
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
local source = helpers.source
local clear, expect = helpers.clear, helpers.expect
describe('scrollbind', function()
setup(clear)

View File

@@ -1,8 +1,8 @@
-- Tests for 'undolevel' setting being global-local
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
local source = helpers.source
local clear, expect = helpers.clear, helpers.expect
describe('undolevel', function()
setup(clear)

View File

@@ -1,9 +1,8 @@
-- Test for v:hlsearch
local helpers = require('test.functional.helpers')
local clear, feed, insert = helpers.clear, helpers.feed, helpers.insert
local clear, feed = helpers.clear, helpers.feed
local execute, expect = helpers.execute, helpers.expect
local eval = helpers.eval
describe('v:hlsearch', function()
setup(clear)

View File

@@ -1,7 +1,7 @@
-- Test if fnameescape is correct for special chars like!
local helpers = require('test.functional.helpers')
local clear, feed, insert = helpers.clear, helpers.feed, helpers.insert
local clear = helpers.clear
local execute, expect = helpers.execute, helpers.expect
describe('fnameescape', function()

View File

@@ -1,8 +1,8 @@
-- Test for visual mode not being reset causing E315 error.
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
local feed, source = helpers.feed, helpers.source
local clear, expect = helpers.clear, helpers.expect
describe('E315 error', function()
setup(clear)

View File

@@ -1,7 +1,7 @@
-- Test filename modifiers.
local helpers = require('test.functional.helpers')
local clear, feed, insert = helpers.clear, helpers.feed, helpers.insert
local clear = helpers.clear
local execute, expect = helpers.execute, helpers.expect
describe('filename modifiers', function()

View File

@@ -1,7 +1,7 @@
-- Tests for errorformat.
local helpers = require('test.functional.helpers')
local clear, feed, insert = helpers.clear, helpers.feed, helpers.insert
local clear = helpers.clear
local execute, expect = helpers.execute, helpers.expect
describe('errorformat', function()

View File

@@ -2,8 +2,8 @@
local helpers = require('test.functional.helpers')
local Screen = require('test.functional.ui.screen')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
local insert = helpers.insert
local clear, execute = helpers.clear, helpers.execute
describe('107', function()
setup(clear)

View File

@@ -1,8 +1,8 @@
-- Test for linebreak and list option in utf-8 mode
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
local source = helpers.source
local clear, expect = helpers.clear, helpers.expect
describe('linebreak', function()
setup(clear)

View File

@@ -1,7 +1,7 @@
-- Tests for nested function.
local helpers = require('test.functional.helpers')
local clear, feed, insert = helpers.clear, helpers.feed, helpers.insert
local clear, insert = helpers.clear, helpers.insert
local execute, expect, source = helpers.execute, helpers.expect, helpers.source
describe('test_nested_function', function()

View File

@@ -1,8 +1,8 @@
-- Tests for quickfix window's title
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
local insert, source = helpers.insert, helpers.source
local clear, expect = helpers.clear, helpers.expect
describe('qf_title', function()
setup(clear)

View File

@@ -1,7 +1,6 @@
-- Tests for signs
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
describe('signs', function()

View File

@@ -1,7 +1,6 @@
-- Tests for writefile()
local helpers = require('test.functional.helpers')
local feed, insert, source = helpers.feed, helpers.insert, helpers.source
local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect
describe('writefile', function()

View File

@@ -1,7 +1,6 @@
local helpers = require('test.functional.helpers')
local execute, eq, clear, eval, feed, ok =
helpers.execute, helpers.eq, helpers.clear, helpers.eval,
helpers.feed, helpers.ok
local eq, clear, eval, feed =
helpers.eq, helpers.clear, helpers.eval, helpers.feed
describe('K', function()
local test_file = 'K_spec_out'

View File

@@ -9,15 +9,15 @@ local additional_cmd = ''
local function nvim_argv(shada_file)
local rtp_value = ('\'%s/runtime\''):format(
paths.test_source_path:gsub('\'', '\'\''))
local nvim_argv = {nvim_prog, '-u', 'NORC', '-i', shada_file or 'NONE', '-N',
local nvim_args = {nvim_prog, '-u', 'NORC', '-i', shada_file or 'NONE', '-N',
'--cmd', 'set shortmess+=I background=light noswapfile',
'--cmd', 'let &runtimepath=' .. rtp_value,
'--cmd', additional_cmd,
'--embed'}
if helpers.prepend_argv then
return merge_args(helpers.prepend_argv, nvim_argv)
return merge_args(helpers.prepend_argv, nvim_args)
else
return nvim_argv
return nvim_args
end
end

View File

@@ -11,7 +11,6 @@ local reset = plugin_helpers.reset
local shada_helpers = require('test.functional.shada.helpers')
local get_shada_rw = shada_helpers.get_shada_rw
local read_shada_file = shada_helpers.read_shada_file
local mpack_eq = function(expected, mpack_result)
local mpack_keys = {'type', 'timestamp', 'length', 'value'}
@@ -96,10 +95,10 @@ describe('In autoload/shada.vim', function()
return a[1] < b[1]
end)
local state = {i=0}
return (function(state, var)
state.i = state.i + 1
if ret[state.i] then
return table.unpack(ret[state.i])
return (function(state_, _)
state_.i = state_.i + 1
if ret[state_.i] then
return table.unpack(ret[state_.i])
end
end), state
end
@@ -2103,8 +2102,8 @@ describe('In plugin/shada.vim', function()
os.remove(fname_tmp)
end)
local shada_eq = function(expected, fname)
local fd = io.open(fname)
local shada_eq = function(expected, fname_)
local fd = io.open(fname_)
local mpack_result = fd:read('*a')
fd:close()
mpack_eq(expected, mpack_result)
@@ -2574,6 +2573,7 @@ describe('syntax/shada.vim', function()
'ShaDaEntryMapHeader'}, s} end
local ah = function(s) return {{'ShaDaEntryArray',
'ShaDaEntryArrayHeader'}, s} end
-- luacheck: ignore
local mses = function(s) return {{'ShaDaEntryMapShort',
'ShaDaEntryMapShortEntryStart'}, s} end
local mles = function(s) return {{'ShaDaEntryMapLong',

View File

@@ -1,7 +1,7 @@
local helpers = require('test.functional.helpers')
local eval, command, nvim = helpers.eval, helpers.command, helpers.nvim
local eq, run, stop = helpers.eq, helpers.run, helpers.stop
local clear, feed = helpers.clear, helpers.feed
local clear = helpers.clear
local function get_prefix(sync)
@@ -12,8 +12,8 @@ local function get_prefix(sync)
end
local function call(fn, args)
command('call '..fn..'('..args..')')
local function call(fn, arguments)
command('call '..fn..'('..arguments..')')
end
@@ -87,9 +87,9 @@ local function command_specs_for(fn, sync, first_arg_factory, init)
command('RpcCommand arg1 arg2 arg3')
end
local function handler(method, args)
local function handler(method, arguments)
eq('test-handler', method)
eq({'arg1', 'arg2', 'arg3'}, args[1])
eq({'arg1', 'arg2', 'arg3'}, arguments[1])
return ''
end
@@ -104,9 +104,9 @@ local function command_specs_for(fn, sync, first_arg_factory, init)
command('1,1RpcCommand')
end
local function handler(method, args)
local function handler(method, arguments)
eq('test-handler', method)
eq({1, 1}, args[1])
eq({1, 1}, arguments[1])
return ''
end
@@ -121,10 +121,10 @@ local function command_specs_for(fn, sync, first_arg_factory, init)
command('1,1RpcCommand arg')
end
local function handler(method, args)
local function handler(method, arguments)
eq('test-handler', method)
eq({'arg'}, args[1])
eq({1, 1}, args[2])
eq({'arg'}, arguments[1])
eq({1, 1}, arguments[2])
return ''
end
@@ -139,10 +139,10 @@ local function command_specs_for(fn, sync, first_arg_factory, init)
command('5RpcCommand arg')
end
local function handler(method, args)
local function handler(method, arguments)
eq('test-handler', method)
eq({'arg'}, args[1])
eq(5, args[2])
eq({'arg'}, arguments[1])
eq(5, arguments[2])
return ''
end
@@ -157,11 +157,11 @@ local function command_specs_for(fn, sync, first_arg_factory, init)
command('5RpcCommand! arg')
end
local function handler(method, args)
local function handler(method, arguments)
eq('test-handler', method)
eq({'arg'}, args[1])
eq(5, args[2])
eq(1, args[3])
eq({'arg'}, arguments[1])
eq(5, arguments[2])
eq(1, arguments[3])
return ''
end
@@ -177,12 +177,12 @@ local function command_specs_for(fn, sync, first_arg_factory, init)
command('5RpcCommand! b arg')
end
local function handler(method, args)
local function handler(method, arguments)
eq('test-handler', method)
eq({'arg'}, args[1])
eq(5, args[2])
eq(1, args[3])
eq('b', args[4])
eq({'arg'}, arguments[1])
eq(5, arguments[2])
eq(1, arguments[3])
eq('b', arguments[4])
return ''
end
@@ -199,13 +199,13 @@ local function command_specs_for(fn, sync, first_arg_factory, init)
command('5RpcCommand! b arg')
end
local function handler(method, args)
local function handler(method, arguments)
eq('test-handler', method)
eq({'arg'}, args[1])
eq(5, args[2])
eq(1, args[3])
eq('b', args[4])
eq('regb', args[5])
eq({'arg'}, arguments[1])
eq(5, arguments[2])
eq(1, arguments[3])
eq('b', arguments[4])
eq('regb', arguments[5])
return ''
end
@@ -243,7 +243,7 @@ local function autocmd_specs_for(fn, sync, first_arg_factory, init)
command('doautocmd BufEnter x.c')
end
local function handler(method, args)
local function handler(method)
eq('test-handler', method)
return ''
end
@@ -259,9 +259,9 @@ local function autocmd_specs_for(fn, sync, first_arg_factory, init)
command('doautocmd BufEnter x.c')
end
local function handler(method, args)
local function handler(method, arguments)
eq('test-handler', method)
eq('x.c', args[1])
eq('x.c', arguments[1])
return ''
end
@@ -303,9 +303,9 @@ local function function_specs_for(fn, sync, first_arg_factory, init)
end
end
local function handler(method, args)
local function handler(method, arguments)
eq('test-handler', method)
eq({{1, 'a', {'b', 'c'}}}, args)
eq({{1, 'a', {'b', 'c'}}}, arguments)
return 'rv'
end
@@ -324,9 +324,9 @@ local function function_specs_for(fn, sync, first_arg_factory, init)
end
end
local function handler(method, args)
local function handler(method, arguments)
eq('test-handler', method)
eq({{1, 'a', {'b', 'c'}}, 4}, args)
eq({{1, 'a', {'b', 'c'}}, 4}, arguments)
return 'rv'
end

View File

@@ -1,7 +1,6 @@
local helpers = require('test.functional.helpers')
local nvim, eq, neq, ok, eval
= helpers.nvim, helpers.eq, helpers.neq, helpers.ok, helpers.eval
local nvim, eq, neq, eval = helpers.nvim, helpers.eq, helpers.neq, helpers.eval
local clear = helpers.clear
describe('serverstart(), serverstop()', function()

View File

@@ -9,8 +9,8 @@ local reset, set_additional_cmd, clear =
shada_helpers.clear
describe('ShaDa support code', function()
testfilename = 'Xtestfile-functional-shada-buffers'
testfilename_2 = 'Xtestfile-functional-shada-buffers-2'
local testfilename = 'Xtestfile-functional-shada-buffers'
local testfilename_2 = 'Xtestfile-functional-shada-buffers-2'
before_each(reset)
after_each(clear)

View File

@@ -4,9 +4,8 @@ local nvim_command, funcs, eq = helpers.command, helpers.funcs, helpers.eq
local exc_exec = helpers.exc_exec
local shada_helpers = require('test.functional.shada.helpers')
local reset, set_additional_cmd, clear, get_shada_rw =
shada_helpers.reset, shada_helpers.set_additional_cmd,
shada_helpers.clear, shada_helpers.get_shada_rw
local reset, clear, get_shada_rw = shada_helpers.reset, shada_helpers.clear,
shada_helpers.get_shada_rw
local read_shada_file = shada_helpers.read_shada_file
local wshada, sdrcmd, shada_fname = get_shada_rw('Xtest-functional-shada-compatibility.shada')
@@ -181,7 +180,7 @@ describe('ShaDa forward compatibility support code', function()
end
eq(3, found)
nvim_command('wshada! ' .. shada_fname)
local found = 0
found = 0
for i, subv in ipairs(read_shada_file(shada_fname)) do
if i == 1 then
eq(1, subv.type)
@@ -249,7 +248,7 @@ describe('ShaDa forward compatibility support code', function()
end
eq(1, found)
nvim_command('wshada! ' .. shada_fname)
local found = 0
found = 0
for i, v in ipairs(read_shada_file(shada_fname)) do
if i == 1 then
eq(1, v.type)
@@ -289,7 +288,7 @@ describe('ShaDa forward compatibility support code', function()
end
eq(1, found)
nvim_command('wshada! ' .. shada_fname)
local found = 0
found = 0
for i, v in ipairs(read_shada_file(shada_fname)) do
if i == 1 then
eq(1, v.type)
@@ -395,7 +394,7 @@ describe('ShaDa forward compatibility support code', function()
end
eq(1, found)
nvim_command('wshada! ' .. shada_fname)
local found = 0
found = 0
for i, v in ipairs(read_shada_file(shada_fname)) do
if i == 1 then
eq(1, v.type)
@@ -432,7 +431,7 @@ describe('ShaDa forward compatibility support code', function()
end
eq(1, found)
nvim_command('wshada! ' .. shada_fname)
local found = 0
found = 0
for i, v in ipairs(read_shada_file(shada_fname)) do
if i == 1 then
eq(1, v.type)

View File

@@ -9,15 +9,14 @@ local tmpname = os.tmpname()
local additional_cmd = ''
local function nvim_argv()
local ret
local nvim_argv = {nvim_prog, '-u', 'NONE', '-i', tmpname, '-N',
'--cmd', 'set shortmess+=I background=light noswapfile',
'--cmd', additional_cmd,
'--embed'}
local argv = {nvim_prog, '-u', 'NONE', '-i', tmpname, '-N',
'--cmd', 'set shortmess+=I background=light noswapfile',
'--cmd', additional_cmd,
'--embed'}
if helpers.prepend_argv then
return merge_args(helpers.prepend_argv, nvim_argv)
return merge_args(helpers.prepend_argv, argv)
else
return nvim_argv
return argv
end
end
@@ -88,7 +87,6 @@ return {
reset=reset,
set_additional_cmd=set_additional_cmd,
clear=clear,
exc_exec=exc_exec,
get_shada_rw=get_shada_rw,
read_shada_file=read_shada_file,
}

View File

@@ -15,15 +15,15 @@ local nvim_current_line = function()
end
describe('ShaDa support code', function()
testfilename = 'Xtestfile-functional-shada-marks'
testfilename_2 = 'Xtestfile-functional-shada-marks-2'
local testfilename = 'Xtestfile-functional-shada-marks'
local testfilename_2 = 'Xtestfile-functional-shada-marks-2'
before_each(function()
reset()
local fd = io.open(testfilename, 'w')
fd:write('test\n')
fd:write('test2\n')
fd:close()
local fd = io.open(testfilename_2, 'w')
fd = io.open(testfilename_2, 'w')
fd:write('test3\n')
fd:write('test4\n')
fd:close()
@@ -115,7 +115,7 @@ describe('ShaDa support code', function()
eq(tf_full, oldfiles[1])
eq(tf_full_2, oldfiles[2])
nvim_command('rshada!')
local oldfiles = meths.get_vvar('oldfiles')
oldfiles = meths.get_vvar('oldfiles')
table.sort(oldfiles)
eq(2, #oldfiles)
eq(testfilename, oldfiles[1]:sub(-#testfilename))

View File

@@ -1,7 +1,7 @@
-- ShaDa merging data support
local helpers = require('test.functional.helpers')
local nvim_command, meths, funcs, curbufmeths, eq =
helpers.command, helpers.meths, helpers.funcs,
local nvim_command, funcs, curbufmeths, eq =
helpers.command, helpers.funcs,
helpers.curbufmeths, helpers.eq
local exc_exec, redir_exec = helpers.exc_exec, helpers.redir_exec
@@ -870,7 +870,7 @@ describe('ShaDa jumps support code', function()
end
wshada(shada)
eq(0, exc_exec(sdrcmd()))
local shada = ''
shada = ''
for i = 1,101 do
local t = i * 2
shada = shada .. (
@@ -964,7 +964,7 @@ describe('ShaDa changes support code', function()
end
wshada(shada)
eq(0, exc_exec(sdrcmd()))
local shada = ''
shada = ''
for i = 1,101 do
local t = i * 2
shada = shada .. (
@@ -1001,7 +1001,7 @@ describe('ShaDa changes support code', function()
end
wshada(shada)
eq(0, exc_exec(sdrcmd()))
local shada = ''
shada = ''
for i = 1,100 do
shada = shada .. ('\011%c\018\131\162mX\195\161f\196\006/a/b/c\161l%c'
):format(i, i)

View File

@@ -133,7 +133,7 @@ describe('system()', function()
-- write more than 1mb of data, which should be enough to overcome
-- the os buffer limit and force multiple event loop iterations to write
-- everything
for i = 1, 0xffff do
for _ = 1, 0xffff do
input[#input + 1] = '01234567890ABCDEFabcdef'
end
input = table.concat(input, '\n')
@@ -299,7 +299,7 @@ describe('systemlist()', function()
describe('passing a lot of input', function()
it('returns the program output', function()
local input = {}
for i = 1, 0xffff do
for _ = 1, 0xffff do
input[#input + 1] = '01234567890ABCDEFabcdef'
end
nvim('set_var', 'input', input)

View File

@@ -1,6 +1,5 @@
local helpers = require('test.functional.helpers')
local thelpers = require('test.functional.terminal.helpers')
local Screen = require('test.functional.ui.screen')
local clear, eq, curbuf = helpers.clear, helpers.eq, helpers.curbuf
local feed = helpers.feed
local feed_data = thelpers.feed_data

View File

@@ -1,5 +1,4 @@
local helpers = require('test.functional.helpers')
local Screen = require('test.functional.ui.screen')
local thelpers = require('test.functional.terminal.helpers')
local feed, clear, nvim = helpers.feed, helpers.clear, helpers.nvim
local wait = helpers.wait

View File

@@ -2,7 +2,7 @@ local helpers = require('test.functional.helpers')
local Screen = require('test.functional.ui.screen')
local thelpers = require('test.functional.terminal.helpers')
local feed, clear, nvim = helpers.feed, helpers.clear, helpers.nvim
local nvim_dir, execute, eq = helpers.nvim_dir, helpers.execute, helpers.eq
local nvim_dir, execute = helpers.nvim_dir, helpers.execute
local hide_cursor = thelpers.hide_cursor
local show_cursor = thelpers.show_cursor

View File

@@ -2,8 +2,7 @@ local helpers = require('test.functional.helpers')
local Screen = require('test.functional.ui.screen')
local clear, wait, nvim = helpers.clear, helpers.wait, helpers.nvim
local nvim_dir = helpers.nvim_dir
local execute, source = helpers.execute, helpers.source
local eq, neq = helpers.eq, helpers.neq
local execute = helpers.execute
describe(':terminal', function()
local screen

View File

@@ -72,7 +72,7 @@ local function screen_setup(extra_height, command)
empty_line,
empty_line,
}
for i = 1, extra_height do
for _ = 1, extra_height do
table.insert(expected, empty_line)
end

View File

@@ -40,7 +40,7 @@ describe('terminal window highlighting', function()
]])
end)
function descr(title, attr_num, set_attrs_fn)
local function descr(title, attr_num, set_attrs_fn)
local function sub(s)
return s:gsub('NUM', attr_num)
end

View File

@@ -1,8 +1,7 @@
local Screen = require('test.functional.ui.screen')
local helpers = require('test.functional.helpers')
local thelpers = require('test.functional.terminal.helpers')
local clear, eq, curbuf = helpers.clear, helpers.eq, helpers.curbuf
local feed, execute, nvim = helpers.feed, helpers.execute, helpers.nvim
local clear = helpers.clear
local feed, nvim = helpers.feed, helpers.nvim
local feed_data = thelpers.feed_data
describe('terminal mouse', function()

View File

@@ -1,6 +1,5 @@
-- Some sanity checks for the TUI using the builtin terminal emulator
-- as a simple way to send keys and assert screen state.
local Screen = require('test.functional.ui.screen')
local helpers = require('test.functional.helpers')
local thelpers = require('test.functional.terminal.helpers')
local feed = thelpers.feed_data
@@ -176,6 +175,8 @@ describe('tui with non-tty file descriptors', function()
end)
describe('tui focus event handling', function()
local screen
before_each(function()
helpers.clear()
screen = thelpers.screen_setup(0, '["'..helpers.nvim_prog..'", "-u", "NONE", "-i", "NONE", "--cmd", "set noswapfile"]')

View File

@@ -1,7 +1,7 @@
local helpers = require('test.functional.helpers')
local thelpers = require('test.functional.terminal.helpers')
local feed, clear, nvim = helpers.feed, helpers.clear, helpers.nvim
local wait, eq = helpers.wait, helpers.eq
local feed, clear = helpers.feed, helpers.clear
local wait = helpers.wait
describe('terminal window', function()

View File

@@ -1,8 +1,7 @@
local helpers = require('test.functional.helpers')
local thelpers = require('test.functional.terminal.helpers')
local clear, eq, curbuf = helpers.clear, helpers.eq, helpers.curbuf
local clear = helpers.clear
local feed, nvim = helpers.feed, helpers.nvim
local feed_data = thelpers.feed_data
describe('terminal', function()
local screen

View File

@@ -1,6 +1,6 @@
local helpers = require('test.functional.helpers')
local Screen = require('test.functional.ui.screen')
local clear, feed, nvim = helpers.clear, helpers.feed, helpers.nvim
local clear, feed = helpers.clear, helpers.feed
local execute, request, eq = helpers.execute, helpers.request, helpers.eq

View File

@@ -8,7 +8,6 @@ describe('mappings', function()
local cid
local add_mapping = function(mapping, send)
local str = 'mapped '..mapping
local cmd = "nnoremap "..mapping.." :call rpcnotify("..cid..", 'mapped', '"
..send:gsub('<', '<lt>').."')<cr>"
execute(cmd)

View File

@@ -106,8 +106,8 @@
-- use `screen:snapshot_util({},true)`
local helpers = require('test.functional.helpers')
local request, run, stop = helpers.request, helpers.run, helpers.stop
local eq, dedent = helpers.eq, helpers.dedent
local request, run = helpers.request, helpers.run
local dedent = helpers.dedent
local Screen = {}
Screen.__index = Screen
@@ -241,7 +241,7 @@ function Screen:wait(check, timeout)
checked = true
if not err then
success_seen = true
stop()
helpers.stop()
elseif success_seen and #args > 0 then
failure_after_success = true
--print(require('inspect')(args))
@@ -294,9 +294,9 @@ end
function Screen:_handle_resize(width, height)
local rows = {}
for i = 1, height do
for _ = 1, height do
local cols = {}
for j = 1, width do
for _ = 1, width do
table.insert(cols, {text = ' ', attrs = {}})
end
table.insert(rows, cols)
@@ -448,7 +448,7 @@ function Screen:_row_repr(row, attr_ids, attr_ignore)
local rv = {}
local current_attr_id
for i = 1, self._width do
local attr_id = get_attr_id(attr_ids, attr_ignore, row[i].attrs)
local attr_id = self:_get_attr_id(attr_ids, attr_ignore, row[i].attrs)
if current_attr_id and attr_id ~= current_attr_id then
-- close current attribute bracket, add it before any whitespace
-- up to the current cell
@@ -524,8 +524,8 @@ function Screen:print_snapshot(attrs, ignore)
local row = self._rows[i]
for j = 1, self._width do
local attr = row[j].attrs
if attr_index(attrs, attr) == nil and attr_index(ignore, attr) == nil then
if not equal_attrs(attr, {}) then
if self:_attr_index(attrs, attr) == nil and self:_attr_index(ignore, attr) == nil then
if not self:_equal_attrs(attr, {}) then
table.insert(attrs, attr)
end
end
@@ -544,7 +544,7 @@ function Screen:print_snapshot(attrs, ignore)
if self._default_attr_ids == nil or self._default_attr_ids[i] ~= a then
alldefault = false
end
local dict = "{"..pprint_attrs(a).."}"
local dict = "{"..self:_pprint_attrs(a).."}"
table.insert(attrstrs, "["..tostring(i).."] = "..dict)
end
local attrstr = "{"..table.concat(attrstrs, ", ").."}"
@@ -558,7 +558,7 @@ function Screen:print_snapshot(attrs, ignore)
io.stdout:flush()
end
function pprint_attrs(attrs)
function Screen:_pprint_attrs(attrs)
local items = {}
for f, v in pairs(attrs) do
local desc = tostring(v)
@@ -572,7 +572,7 @@ function pprint_attrs(attrs)
return table.concat(items, ", ")
end
function backward_find_meaningful(tbl, from)
function backward_find_meaningful(tbl, from) -- luacheck: ignore
for i = from or #tbl, 1, -1 do
if tbl[i] ~= ' ' then
return i + 1
@@ -581,24 +581,24 @@ function backward_find_meaningful(tbl, from)
return from
end
function get_attr_id(attr_ids, ignore, attrs)
function Screen:_get_attr_id(attr_ids, ignore, attrs)
if not attr_ids then
return
end
for id, a in pairs(attr_ids) do
if equal_attrs(a, attrs) then
if self:_equal_attrs(a, attrs) then
return id
end
end
if equal_attrs(attrs, {}) or
ignore == true or attr_index(ignore, attrs) ~= nil then
if self:_equal_attrs(attrs, {}) or
ignore == true or self:_attr_index(ignore, attrs) ~= nil then
-- ignore this attrs
return nil
end
return "UNEXPECTED "..pprint_attrs(attrs)
return "UNEXPECTED "..self:_pprint_attrs(attrs)
end
function equal_attrs(a, b)
function Screen:_equal_attrs(a, b)
return a.bold == b.bold and a.standout == b.standout and
a.underline == b.underline and a.undercurl == b.undercurl and
a.italic == b.italic and a.reverse == b.reverse and
@@ -606,12 +606,12 @@ function equal_attrs(a, b)
a.background == b.background
end
function attr_index(attrs, attr)
function Screen:_attr_index(attrs, attr)
if not attrs then
return nil
end
for i,a in pairs(attrs) do
if equal_attrs(a, attr) then
if self:_equal_attrs(a, attr) then
return i
end
end

View File

@@ -2,7 +2,7 @@ local helpers = require('test.functional.helpers')
local Screen = require('test.functional.ui.screen')
local spawn, set_session, clear = helpers.spawn, helpers.set_session, helpers.clear
local feed, execute = helpers.feed, helpers.execute
local insert, wait = helpers.insert, helpers.wait
local insert = helpers.insert
describe('Initial screen', function()
local screen
@@ -11,9 +11,6 @@ describe('Initial screen', function()
'--embed'}
before_each(function()
if session then
session:exit(0)
end
local screen_nvim = spawn(nvim_argv)
set_session(screen_nvim)
screen = Screen.new()

View File

@@ -1,7 +1,7 @@
local helpers = require('test.functional.helpers')
local Screen = require('test.functional.ui.screen')
local clear, feed, nvim, insert = helpers.clear, helpers.feed, helpers.nvim, helpers.insert
local execute, request, eq = helpers.execute, helpers.request, helpers.eq
local clear, feed, insert = helpers.clear, helpers.feed, helpers.insert
local execute = helpers.execute
describe('search highlighting', function()
local screen

View File

@@ -1,6 +1,6 @@
local helpers = require('test.functional.helpers')
local clear, feed, execute = helpers.clear, helpers.feed, helpers.execute
local clear, feed = helpers.clear, helpers.feed
local eval, eq, neq = helpers.eval, helpers.eq, helpers.neq
local execute, source = helpers.execute, helpers.source

Some files were not shown because too many files have changed in this diff Show More