aboutsummaryrefslogtreecommitdiff
path: root/test/functional/api
Commit message (Collapse)AuthorAge
...
* functests: Make json_functions_spec use new NIL where appropriateZyX2016-04-18
|
* api: Replace set_var(name, NIL) with del_var(name)ZyX2016-04-18
|
* Update lua client to 0.0.1-24Thiago de Arruda2016-04-13
| | | | | The new version of the lua client uses libmpack as a backend, and some test scripts had to be updated to reflect that.
* tests: update tests to use [gs]et_lines instead of [gs]et_line_sliceBjörn Linse2016-04-01
|
* api/buffer: add tests for buffer_[gs]et_linesBjörn Linse2016-04-01
|
* api/buffer: introduce buffer_[gs]et_lines with new indexing convention.Björn Linse2016-04-01
| | | | | | | -1 is index past the end, and -2 is the index of the last element. This eliminates the need for include_start/include_end. Allow the handling of out-of-bounds to be configurable.
* Remove dependency on ffi moduleThiago de Arruda2016-03-07
|
* keymap: Support <D-...> (super/command key).Justin M. Keyes2016-02-22
| | | | | | | | | | | | | | | | | | | | Adds support for: - api:vim_input("<D-a>") - ":nnoremap <C-D-S-...>" and permutations thereof UIs must capture the modifier and send it as "<D-...>" to vim_input(). Note: Before this commit, any arbitrary ":nnoremap <{foo}-{bar}>" mapping could already be invoked with feedkeys("\<{foo}-{bar}>"). This commit supports "D-" as a modifier that can be combined with "C-", "A-", "S-" in any order. For non-GUI (terminal) support, user must: :set <D-a>={CSI sequence} then send the {CSI sequence} from their terminal. But this does not work yet (regression #2204). Closes #2190
* Tests: fix according to lualintMarco Hinz2016-02-02
|
* test/functional: Fix api/vim_spec.lua.Rui Abreu Ferreira2015-12-31
| | | | | On Windows the default file format is DOS i.e. newlines are \r\n instead of \n.
* helpers.c: Handle msgpack str/bin objects with length 0 correctlyoni-link2015-12-21
| | | | | | | | | | | When converting a msgpack object to a String object, strings (and byte arrays) with length 0 are handled as errors. This is fixed by always using the msgpack data pointer as a valid pointer. For a NULL pointer there is nothing to copy. Test by @snoe Fixes #3844
* test/functional: clean up according to luacheck (part 2)Marco Hinz2015-11-23
|
* input: Remove CURSORHOLD keyThiago de Arruda2015-10-26
| | | | | | | | | | | Refactor input.c, normal.c and edit.c to use the K_EVENT special key to trigger the CURSORHOLD event. In normal and edit mode, K_EVENT is treated as K_CURSORHOLD, which enables better handling of arbitrary actions in those states(eg: In normal mode the previous operator counts will be restored). Also fix a test in vim_spec.lua. The test had a wrong assumption: cmdheight is only used to determine when the press enter screen will be shown, not to limit how many lines or control pagination.
* functests: Fix testsZyX2015-10-23
|
* functests: Do not forget about -i argumentZyX2015-10-23
| | | | Target: make all tests run with chmod -x ~/.config/nvim ~/.local/share/nvim.
* api: vim_err_write: add tests for multiline handlingBjörn Linse2015-09-16
|
* Notify attached UIs whenever menus changeRobin Allen2015-08-21
| | | | | This adds a redraw notification "update_menu" which is sent whenever Vim's menus are changed by the :menu command and friends.
* Implement API function to call functions #2979Sebastian Witte2015-07-19
| | | | | Remove static modifier from func_call Move MAX_FUNC_ARGS definnition from eval.c to eval.h
* test: buffer_spec: fix set_line invocationJustin M. Keyes2015-07-11
| | | | | - pcall result was always false because of wrong arity - also re-arrange tests into it() blocks
* test: api: exercise out-of-bounds line slicingNick Hynes2015-07-11
|
* api: vim_set_var() should return the old value #2899Justin M. Keyes2015-06-25
| | | | Closes #2816
* test: don't process vimrc #2511Marco Hinz2015-04-25
| | | | | | 676133aa introduced a new test for calling a nvim instance recursively. But without '-u NONE', the vimrc (and all plugins) get loaded too, which breaks the test for things that do stuff on VimEnter.
* channel: recognized nvim-style errorsScott Prager2015-04-13
|
* msgpack: Allow notifications to execute commands.Scott Prager2015-04-13
| | | | | | | | | | Consider: `let vim = rpcstart('nvim', ['--embed'])` Allows `rpcnotify(vim, ...)` to work like an asynchronous `rpcrequest(nvim, ...)`. Helped-by: Michael Reed <m.reed@mykolab.com> Helped-by: Justin M. Keyes <>
* test: Fix race condition in window_spec.luaThiago de Arruda2015-02-16
| | | | | Without waiting for the 'gg' command to be processed, its possible that the following assertion will fail.
* test: NULL-initialized vimscript strings should eval to empty stringsBjörn Linse2015-02-16
|
* test: Make it possible to run functional tests with plain luaThiago de Arruda2015-01-22
| | | | Replace the hexadecimal escape sequences, which are only supported by luajit
* api: Add tests for when not to handle NULs.Scott Prager2014-12-06
|
* api: Handle NULs and newlines in buffer_*_line.Scott Prager2014-12-06
|
* Functional tests for feedkeys CSI escapingRui Abreu Ferreira2014-11-27
| | | | - tests for vim_feedkeys and replace_termcodes
* Fix broken functional test.John Szakmeister2014-11-25
| | | | | | In Lua, all math is floating point. We need to coerce the result of a division into a integer with the `{get,set}_height` and `{get,set}_width` window_spec functional tests.
* test: Improve test environment setup and error handling/reportingThiago de Arruda2014-11-07
| | | | | | | | | | | | | | | | | | | | | | | | | During test setup, we used to call a vimscript function(BeforeEachTest) that attempted to restore Nvim to it's initial state as much as possible in order to provide a clean environment for running new tests. This approach has proven to be unreliable, as some tests leave state that can affect other tests, eventually causing failures that are difficult to debug. This commit changes the 'clear' function so it will restart Nvim every time it is called, which is a slower, but more reliable solution that will simplify spotting bugs in the future. Some other improvements/fixes were also performed: - Whenever an error is detected in a handler passed to "run()", the event loop will be stopped and the error will be propagated to the main thread. - Errors and the "cleanup()" function will always send a quit command to the current Nvim instance. This should prevent memory starvation when running tests under valgrind(where each Nvim instance can consume a lot of memory). - Fixed a wrong assertion in server_requests_spec.lua. Previously the failure was undetected in a notification handler. - Fixed some tests to expect fully clean registers. The deleted cleanup function used to put an empty string in every register, but that resulted in a extra line being added.
* channel: Delay notifications to avoid client race conditionsThiago de Arruda2014-11-06
| | | | | | | | | | It is currently possible for a client to send a response that doesn't match the current server->client request(at the top of the stack). This commit fixes that by delaying notifications to until the first `channel_send_call` invocation returns. Also remove the "call stack" size check, vim will already break if the call stack goes too deep.
* test/api: add test for set_cursor always updating the screenBjörn Linse2014-11-01
|
* test: verify that msgpacks-rpc exceptions are workingThiago de Arruda2014-10-23
|
* test: Use lua to perform sanity API checksThiago de Arruda2014-10-16
Sanity API checks made by the python-client in the api-python travis target were converted to lua and will now live in this repository. This will simplify performing breaking changes to the API as it won't be necessary to send parallel PRs the python-client.