| Commit message (Collapse) | Author | Age |
... | |
| |
|
|
|
|
| |
The test hit wait_return if x or .x.swp exists in the project root directory.
|
|
|
|
|
|
| |
It is otherwise impossible to determine which test failed sanitizer/valgrind
check. test/functional/helpers.lua module return was changed so that tests which
do not provide after_each function to get new check will automatically fail.
|
| |
|
| |
|
|
|
|
|
|
| |
The character class %s also matches a newline in lua, that's not really what we
want here. It works in the other cases in this function, so I left them, but
the final gsub should preserve newlines.
|
|
|
|
| |
For that, make luatest ignore the preload.lua files.
|
|
|
|
|
| |
The new version of the lua client uses libmpack as a backend, and some test
scripts had to be updated to reflect that.
|
| |
|
| |
|
|
|
|
| |
`goto` is another luajit extension not compatible with 5.1.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
On Windows the default file format is DOS i.e. newlines are \r\n
instead of \n.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
- Remove unused variables.
- Do not use helpers.nvim_feed in most cases.
- Do not use helpers.nvim and helpers.nvim_eval at all.
- Add helpers.funcs and helpers.\*meths special tables. Indexing such table
creates functions which call helpers.call or helpers.nvim (and similar) with
first argument equal to table index.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Some notes:
- Replaced msgpack_unpacker usage with regular xmalloc’ed buffer. Also since
msgpack_unpack_next (as well as msgpack_unpacker_next) is not ever going to
return MSGPACK_UNPACK_EXTRA_BYTES this condition was checked manually.
Function that does return this status is msgpack_unpack, but it is marked as
obsolete.
- Zero type is checked prior to main switch in shada_read_next_item because
otherwise check would be skipped.
- Zeroing entry at the start of shada_read_next_item makes it safer.
- dedent('') does not work.
- v:oldfiles list is only replaced with bang, if it is NULL or empty.
|
| |
|
|
|
|
|
|
|
| |
Setting `msg_didout` after `call_shell` is enough as it will cause
`hit_return_msg()` to print on next line.
Close #3269
|
| |
|
| |
|
|
|
|
| |
Helped-By: Justin M. Keyes <justinkz@gmail.com>
|
|
|
|
|
|
|
| |
Always run tests with encoding=utf-8, regardless of user locale
Don't set &encoding after startup in tests
Helped-By: Michael Reed <m.reed@mykolab.com>
|
| |
|
| |
|
|
|
|
| |
References #3156
|
|
|
|
|
|
|
|
|
| |
- lfs.rmdir() only removes empty directories
- os.remove() supercedes lfs.rmdir(); removes files and empty directories
- helpers.rmdir() first removes all files within a directory, then the
directory itself
|
| |
|
| |
|
|
|
|
| |
Re: https://github.com/neovim/neovim/issues/2676
|
|
|
|
|
| |
This function is needed until helpers.lua is refactored to support
multiple sessions.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Read TEST_TAG/TEST_FILTER env vars from cmake/RunTests.cmake. Setting these
environment variables will pass --tags/--filter to busted, which can used to
filter which tests are executed.
- Remove calls to nvim msgpack-rpc API outside tests. This removes the
requirement of having a static `clear` call in test/functional/helpers.lua
- Use the new busted command-line option "--lazy" to ensure the setup/teardown
hooks are only executed when a suite runs at least one test.
Now its possible to run/debug a single test like this:
```sh
TEST_FILTER='some test string' make test
```
Which will only run tests containing "some test string" in the title.
Another option is:
```sh
TEST_TAG=some-tag make test
```
After putting #some-tag into the test title. This also improves debugging
experience because there will be no unnecessary gdbserver instances whe GDB=1 is
passed.
|
|
|
|
|
|
| |
This is can be used for spawning nvim outside a test context. Also refactor
screen.lua to use this function when loading the color map(It is better because
the GDB/VALGRIND environment variables are ignored)
|
|\
| |
| | |
tests: don't hardcode the path to tty-test
|
| |
| |
| |
| |
| | |
This fixes the build for those who drive the build directly using
CMake.
|
|/
|
|
|
|
|
|
| |
This is necessary for newer versions of Busted, otherwise assert will be
nil and the tests will die.
Note: this does not mean the tests now work with the latest Busted.
There are still several issues preventing that from happening.
|
|
|
|
|
| |
The `wait` function will only return after all input has been processed by nvim.
It is useful to time assertions correctly.
|
| |
|
|
|
|
| |
Disable JIT to find cause for random `PANIC: unprotected error in call to Lua API` on Travis (OS X).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When a test that fails leaves nvim in a 'Press Enter...' state, the whole suite
will hang because the `qa!` command executed before the next test won't be
processed until '<enter>' is sent.
Now the lua client can send a signal with when `Session:exit()` is called, so
the `qa!` request is no longer necessary.
Also:
- Set noswapfile at startup to prevent tests from leaving .s* swap files(should
also improve test environment determinism)
- Use `assert(false, msg) instead of `error(msg)` to report screen assertion
failures.
|
|
|
|
|
| |
- shortmess+=I: Remove intro screen
- background=light: Disregard COLORFGBG environment variable
|
|
|
|
|
|
| |
- Add screen.lua which implements a remote screen to verify screen state by
tests under functional/ui
- Add some basic screen/highlight tests
|
| |
|
|
|
|
|
| |
The new version fixes defunct processes which causes random test failures on
some systems(#1519)
|
|
|
|
|
|
| |
The $GDB env var can be set to run tests under gdbserver. If $VALGRIND is also
set, it will add the --vgdb=yes command-line option to valgrind instead of
starting gdbserver.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The vim_input function accepts raw terminal input and so is better to emulate
real user, especially because it is not deferred as vim_feedkeys.
Using this function required a number of changes:
- expect() was refactored to use curbuf_contents()
- The vim_eval function in request() was moved to curbuf_contents(). For most
cases this is enough(we only care for synchronizing api calls with user input
when verifying buffer contents).
- <C-@>(NUL) is preprocessed before being passed to replace_termcodes.
- Legacy test 4 had a bug that only became visible when using vim_input, it is
fixed now.
- An extra blank line deletion was required for test 101
The last two items show that vim_feedkeys because it is not 100% equivalent to
receiving terminal input.
|
| |
|