aboutsummaryrefslogtreecommitdiff
path: root/test
Commit message (Collapse)AuthorAge
* lua LSP client: initial implementation (#11336)Ashkan Kiani2019-11-13
| | | | | | Mainly configuration and RPC infrastructure can be considered "done". Specific requests and their callbacks will be improved later (and also served by plugins). There are also some TODO:s for the client itself, like incremental updates. Co-authored by at-tjdevries and at-h-michael, with many review/suggestion contributions.
* Merge #11307 'Lua: vim.validate()'Justin M. Keyes2019-11-11
|\
| * Lua: Use vim.validate() instead of assert()Justin M. Keyes2019-11-10
| |
| * Lua: vim.validate()Justin M. Keyes2019-11-10
| |
| * Lua: vim.validate()Hirokazu Hata2019-11-10
| | | | | | | | | | | | | | We often want to do type checking of public function arguments. - test: Rename utility_function_spec.lua to vim_spec.lua - .luacov: Map lua module names
* | extmark: review changesBjörn Linse2019-11-11
| |
* | nsmarks: initial committimeyyy2019-11-11
|/
* tests: vim.rpcnotify test is flakyBjörn Linse2019-11-10
|
* api: add nvim_buf_get_virtual_text() (#11354)Marco Hinz2019-11-10
| | | This adds the missing partner function of nvim_buf_set_virtual_text().
* Merge pull request #11310 from bfredl/luarpcBjörn Linse2019-11-10
|\ | | | | lua: add vim.rpcrequest, vim.rpcnotify and vim.NIL
| * lua: vim.rpcrequest, vim.rpcnotify, vim.NILBjörn Linse2019-11-10
| |
* | test/Screen:expect: replace "{IGNORE}" with "{MATCH:…}"Justin M. Keyes2019-11-09
| | | | | | | | ref #11004
* | tests: Screen:expect: support "{MATCH:…}"Daniel Hahler2019-11-09
| |
* | paste: Select-mode, Visual-mode #11360Justin M. Keyes2019-11-09
|/ | | fix #11344
* doc: vim.fn, vim.call(), vim.api [ci skip]Justin M. Keyes2019-11-06
|
* Merge #11319 'inccommand: fix issues with modifiers and prompting'Justin M. Keyes2019-11-05
|\
| * Prevent prompts during inccommand previewsRob Pilling2019-10-31
| | | | | | | | For example, "Backwards range given, OK to swap (y/n)?" on each keypress.
| * Prevent :topleft, etc modifying the inccommand preview windowRob Pilling2019-10-31
| |
| * Allow multiple leading colons before and after modifiers for 'inccommand'Rob Pilling2019-10-31
| |
| * Remove unnecessary expr in 'icm' testRob Pilling2019-10-31
| |
* | terminal: add tests for palette color forwardingBjörn Linse2019-11-03
| |
* | test/screen: make snapshot_util() work properly in rgb_cterm modeBjörn Linse2019-11-02
|/
* Merge pull request #11302 from bfredl/luacallBjörn Linse2019-10-27
|\ | | | | lua: add vim.fn.{func} for direct access to vimL function
| * lua: add vim.fn.{func} for direct access to vimL functionBjörn Linse2019-10-27
| | | | | | | | | | | | | | | | compared to vim.api.|nvim_call_function|, this fixes some typing issues due to the indirect conversion via the API. float values are preserved as such (fixes #9389) as well as empty dicts/arrays. Ref https://github.com/norcalli/nvim.lua for the call syntax
* | tests: remove some redundant legacy tests #11028Daniel Hahler2019-10-26
|/ | | | These were turned into new-style Vim tests in cbecae46f.
* test/pcall_err(): truncate full paths, omit linenrJustin M. Keyes2019-10-26
| | | | ref #11271
* lua/stdlib: adjust some validation messages #11271Hirokazu Hata2019-10-26
| | | | close #11271
* build/doc/CI: remove/update quickbuild references #11258Justin M. Keyes2019-10-19
|
* ex_echo: fix check for got_int #11225Daniel Hahler2019-10-19
| | | | | | It needs to return to not output any remaining parts. Followup to https://github.com/neovim/neovim/pull/10926 Ref: https://github.com/neovim/neovim/issues/10923
* test/functional: retry/Screen: failure instead of error #11173Daniel Hahler2019-10-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Running out of retries, or unexpected screen state should make the test FAIL, not ERROR. - Uses levels to report the location of the caller. - Improve message with retry-failure (formatting). Before: [ RUN ] test: 103.53 ms ERR test/functional/helpers.lua:388: retry() attempts: 1 test/functional/ui/screen.lua:587: Row 1 did not match. Expected: |*X^ | |{0:~ }| |{0:~ }| | | Actual: |*^ | |{0:~ }| |{0:~ }| | | To print the expect() call that would assert the current screen state, use screen:snapshot_util(). In case of non-deterministic failures, use screen:redraw_debug() to show all intermediate screen states. stack traceback: test/functional/helpers.lua:388: in function 'retry' test/functional/test_spec.lua:24: in function <test/functional/test_spec.lua:23> After: [ RUN ] test: 105.22 ms FAIL test/functional/test_spec.lua:24: stopping after 1 retry() attempts. test/functional/test_spec.lua:25: Row 1 did not match. Expected: |*X^ | |{0:~ }| |{0:~ }| | | Actual: |*^ | |{0:~ }| |{0:~ }| | | To print the expect() call that would assert the current screen state, use screen:snapshot_util(). In case of non-deterministic failures, use screen:redraw_debug() to show all intermediate screen states. stack traceback: test/functional/helpers.lua:389: in function 'retry' test/functional/test_spec.lua:24: in function <test/functional/test_spec.lua:23>
* tests: let_spec: enable "multibyte env var to child process" (#11233)Daniel Hahler2019-10-18
|
* build: do not build test fixtures by default (#11230)Daniel Hahler2019-10-18
| | | | | - tty-test is also used on Windows - FUNCTIONALTEST_PREREQS: add printenv-test
* tests: fix non-controversial misuse of `pending` (#11247)Daniel Hahler2019-10-18
| | | Ref: https://github.com/neovim/neovim/pull/11184
* tests: tui_spec: fix waiting for terminal to be ready (#11232)Daniel Hahler2019-10-15
| | | | | The screen would have '-- TERMINAL --' already initially. Related to flakiness of "TUI FocusGained/FocusLost in terminal-mode".
* tests/ui: completely delete "attr_ignore" featureBjörn Linse2019-10-13
| | | | | All existing usages are ad-hoc/random/lazyness. Generating attribute specifications is not hard since four years, just do it always.
* tests/ui: remove unnecessary screen:detach()Björn Linse2019-10-13
| | | | | | | | | | | | | It is perfectly fine and expected to detach from the screen just by the UI disconnecting from nvim or exiting nvim. Just keep detach() in screen_basic_spec, to get some coverage of the detach method itself. This avoids hang on failure in many situations (though one could argue that detach() should be "fast", or at least "as fast as resize", which works in press-return already). Never use detach() just to change the size of the screen, try_resize() method exists for that specifically.
* tests/ui: cleanup illegitimate usages of "attr_ignore"Björn Linse2019-10-13
| | | | | "attr_ignore" is an anti-pattern, with snapshot_util() just include all the highlights already.
* tests/ui: make screen.lua use "linegrid" representation internallyBjörn Linse2019-10-13
| | | | | | | | | | PR #8221 took a short-cut when implementing the tests: screen.lua would translate the linegrid highlight ids back into the old per-cell attribute description. Apart from cleaning up technical debt, this enables to check both rgb and cterm colors in the same expect(), which previously was needlessly restricted to ext_hlstate tests only.
* fnamemodify: fix handling of :r after :e #11165Rob Pilling2019-10-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Test fnamemodify() - Test handling of `expand("%:e:e:r")`. - Fix :e:e:r on filenames with insufficiently many extensions During `fnamemodify()`, ensuring that we don't go before the filename's tail is insufficient in cases where we've already handled a ":e" modifier, for example: ``` "path/to/this.file.ext" :e:e:r:r ^ ^-------- *fnamep +------------- tail ``` This means for a ":r", we'll go before `*fnamep`, and outside the bounds of the filename. This is both incorrect and causes neovim to exit with an allocation error. We exit because we attempt to calculate `s - *fnamep` (line 23948). Since `s` is before `*fnamep`, we caluclate a negative length, which ends up being interpreted as an amount to allocate, causing neovim to exit with ENOMEM (`memory.c:xmalloc`). We must instead ensure we don't go before `*fnamep` nor `tail`. The check for `tail` is still relevant, for example: ``` "path/to/this.file.ext" :r:r:r ^ ^------------- tail +--------------------- *fnamep ``` Here we don't want to go before `tail`. close #11165
* test: "!:&" works with powershell #11201Jan Edmund Lazo2019-10-10
| | | Removed 'echo' alias because it does not behave like POSIX echo.
* doc: update shellquote for powershell #11122Jan Edmund Lazo2019-10-10
| | | shellquote is not treated like shellxquote for non-quote values.
* tests: retry: "wait() evaluates the condition on given interval" (#11155)Daniel Hahler2019-10-06
| | | Ref: https://github.com/neovim/neovim/issues/11137
* tests/functional: keep $TMPDIR in env (#11163)Daniel Hahler2019-10-06
|
* doc: Fix TEST_FILTER example #11158Vikram Pal2019-10-06
|
* vim-patch:8.1.1371: cannot recover from a swap file #11081Jurica Bradarić2019-10-05
| | | | | | | Problem: Cannot recover from a swap file. Solution: Do not expand environment variables in the swap file name. Do not check the extension when we already know a file is a swap file. (Ken Takata, closes 4415, closes vim/vim#4369) https://github.com/vim/vim/commit/99499b1c05f85f83876b828eea3f6e14f0f407b4
* win_line: update `w_last_cursorline` alwaysDaniel Hahler2019-10-04
| | | | | | | | | | | | Vim patch 8.1.0856 (54d9ea6) caused a performance regression in Neovim, when `set conceallevel=1 nocursorline` was used, since then due to refactoring in 23c71d5 `w_last_cursorline` would never get updated anymore. Adds/uses `redrawdebug+=nodelta` for testing this. Fixes https://github.com/neovim/neovim/issues/11100. Closes https://github.com/neovim/neovim/pull/11101.
* tests: tui_spec: improve/merge OptionSet/deferredDaniel Hahler2019-10-04
| | | | Closes https://github.com/neovim/neovim/pull/11129.
* tui: fix handling of bg response after suspend (#11145)Daniel Hahler2019-10-03
| | | | | | | | | | | | | | | | `tui_terminal_after_startup` gets called right after resuming from suspending (via `Ctrl-z`) already (not delayed as with the startup itself), and would set `waiting_for_bg_response` to false then directly. This results in the terminal response not being processed then anymore, and leaking into Neovim itself. This changes it to try 5 times always, which means that it typically would stop after a few characters of input from the user typically, e.g. with tmux, which does not send a reply. While it might be better to have something based on the time (e.g. only wait for max 1s), this appears to be easier to do. Fixes regression in 8a4ae3d.
* Merge #11087 from janlazo/vim-8.1.0010Justin M. Keyes2019-10-02
|\ | | | | vim-patch:8.1.{10,230,315,330,514,517,518,1327,1347,1758,2072,2074,2091,2095,2103}
| * test: fix screen assertionsJan Edmund Lazo2019-10-01
| |