John Szakmeister
b52ae0e8ba
build: add support for building for FreeBSD under Sourcehut [skip ci]
2019-09-25 19:55:49 -04:00
Justin M. Keyes
7e1c959861
test: Eliminate expect_err
...
Eliminate `expect_err` in favor of `pcall_err` + `eq` or `matches`.
2019-09-06 17:19:07 -07:00
Justin M. Keyes
af946046b9
test: Rename meth_pcall to pcall_err
...
- Rename `meth_pcall`.
- Make `pcall_err` raise an error if the function does not fail.
- Add `vim.pesc()` to treat a string as literal where a Lua pattern is
expected.
2019-09-06 17:19:07 -07:00
Justin M. Keyes
540360a775
test: is_os() #10933
...
- Move os_name() up to "global helpers".
- Rename it to is_os().
- Make it depend on uname() instead of a running Nvim instance.
2019-09-04 06:58:04 -07:00
Daniel Hahler
dcc8fcf0b9
tests: assert:set_parameter('TableFormatLevel', 100) #10925
...
luassert uses 3 by default, which is often not enough.
Instead of documenting how to increase it, let's use a more fitting
(sane) default of 100 levels.
2019-09-03 04:29:49 -07:00
Justin M. Keyes
ead39d6ce6
test/uname(): always lowercase
2019-09-01 22:49:33 -07:00
Daniel Hahler
4b8a16153e
tests: check_logs: improve error message ( #10887 )
...
Before:
[ ERROR ] test/functional/helpers.lua @ 812: after_each
test/helpers.lua:156: assertion failed!
stack traceback:
test/helpers.lua:156: in function 'check_logs'
test/functional/helpers.lua:816: in function <test/functional/helpers.lua:812>
2019-08-30 08:26:55 +02:00
Justin M. Keyes
9f81acc076
paste: break lines at CR, CRLF #10877
...
Some terminals helpfully translate \n to \r.
fix #10872
ref #10223
2019-08-29 23:45:02 +02:00
Daniel Hahler
47e27a4f5b
tests: support msg with global_helpers.ok ( #10820 )
...
Ref: https://github.com/neovim/neovim/pull/10768#discussion_r315904175
Co-Authored-By: Justin M. Keyes <justinkz@gmail.com>
2019-08-21 02:32:20 +02:00
Justin M. Keyes
94afc201bc
test: isCI(): add "name" parameter
2019-08-05 04:02:41 +02:00
Daniel Hahler
431cf56e2f
ci: RunTests: ensure that the logfile gets displayed ( #10597 )
...
This is meant to help with test failures where e.g. `busted` itself might
crash or get killed.
Ref: https://github.com/neovim/neovim/issues/10182#issuecomment-514450069
2019-07-24 18:12:55 +02:00
Daniel Hahler
66149ecffe
test/helpers: improve pattern with module functions ( #10421 )
...
Benefits:
- less lines, especially less results when grepping
- makes it clearer what is exported
2019-07-22 01:13:11 +02:00
Justin M. Keyes
e4c2d85c77
lua/shared: share deepcopy() with test/*
...
deepcopy() was duplicated in test/helpers.lua
2019-05-19 17:58:54 +02:00
Justin M. Keyes
9d7aaf7149
lua/shared: move table util funcs to vim.shared
...
Use `tbl_` prefix for all table-util functions. Specify in the function
docstring if it expects a list-like or map-like table.
2019-05-18 21:07:30 +02:00
Justin M. Keyes
bba75eb184
lua/stdlib: Introduce vim.shared
...
This is where "pure functions" can live, which can be shared by Nvim and
test logic which may not have a running Nvim instance available.
If in the future we use Nvim itself as the Lua engine for tests, then
these functions could be moved directly onto the `vim` Lua module.
closes #6580
2019-05-18 15:48:13 +02:00
Justin M. Keyes
2b87485c22
test: Extend {unit,functional}.helpers with global helpers
...
Automatically include all "global helper" util functions in the
unit.helpers and functional.helpers and modules. So tests don't need to
expicitly do:
local global_helpers = require('test.helpers')
2019-05-18 14:51:01 +02:00
Justin M. Keyes
7e1591e06a
API: emit nvim_error_event on failed async request
...
We already do this for _invalid_ async requests #9300 .
Now we also do it for failed invocation of valid requests.
2019-04-13 17:07:58 +02:00
Justin M. Keyes
a7a56293aa
CI/AppVeyor: per-compiler deps cache #9852
...
The deps cache does not work for MSVC builds because the MINGW builds
ovewrite it. Cache saves 10+ minutes on the build.
2019-04-07 03:54:22 +02:00
Björn Linse
9a1675b065
floats: implement floating windows
...
Co-Author: Dongdong Zhou <dzhou121@gmail.com>
2019-03-02 16:29:50 +01:00
Justin M. Keyes
403922b1b4
test: fix isCI() for Quickbuild
2019-03-01 01:48:46 +01:00
erw7
67535b5940
test/env: multibyte env var to child process
...
Note: the test fails on non-Windows CI (Travis linux, Quickbuild bsd):
even on master before the env.c changes in this patch-series.
Maybe the unix part of printenv-test.c needs to be revisited.
Signed-off-by: Justin M. Keyes <justinkz@gmail.com>
2019-02-28 22:40:11 +01:00
Matěj Cepl
a8a38f3465
test: Lua 5.2/5.3 compat
...
close #9515
ref #9280
2019-01-17 23:06:04 +01:00
Björn Linse
1f8afe15a4
multigrid: add multigrid support to test infrastructure
...
make Screen explicitly tied to its session
2018-12-31 12:44:22 +01:00
Justin M. Keyes
6e146d4132
test: check_cores(): Fix tmp dir exclusion ( #9061 )
...
tmpdir_get() may be an absolute path, but we invoke glob() with
a relative `initial_path`.
That can lead to this error:
[ ERROR ] test/functional/helpers.lua @ 752: after_each
test/helpers.lua:95: cannot open ./Xtest-tmpdir/nvim8jKCjR: No such file or directory
stack traceback:
test/helpers.lua:95: in function 'glob'
test/helpers.lua:273: in function 'check_cores'
test/functional/helpers.lua:757: in function <test/functional/helpers.lua:752>
2018-09-28 08:58:22 +02:00
Justin M. Keyes
990c147de3
test: Do not load entire log-file into memory
...
With DEBUG-level logging, after `make test`, log file could be 1+ GB.
2018-09-23 15:58:02 +02:00
Justin M. Keyes
acdede50ce
test: Dump $NVIM_LOG_FILE contents ( #8926 )
...
Do this at the test-framework level instead of CI (Travis) scripts.
Then it works for QuickBuild and AppVeyor.
ref eb6dd3e42d
2018-08-28 22:13:34 +02:00
Björn Linse
3d88287e30
tests: introduce screen:expect{...} form
2018-08-27 15:15:49 +02:00
Marcos Almeida
a2253744c9
system(): handle profiling and 'verbose' #8730
...
closes #8362
Vim's code calls `call_shell` directly from `get_system_output_as_rettv`
whereas in Nvim this function has been rewritten to not call `call_shell` but to call
`os_system` via `do_os_system`, losing the support for profiling and verbose.
Changing the code to call `call_shell` from `get_system_output_as_rettv`
seems to be too complicated to be worth it on the current version of the
code. So this commit duplicates the relevant code.
2018-07-29 03:49:11 +02:00
Jan Edmund Lazo
6ffcc2b800
fixup: exclude node_modules/ for crash detection
...
node.js client uses lodash which has core.js.
2018-06-05 07:33:26 -04:00
Justin M. Keyes
d6a1640260
test/util: move general functions into global helpers
2018-04-27 13:06:41 +02:00
b-r-o-c-k
ad999eaa77
Merge branch 'master' into s-dash-stdin
2018-04-14 14:17:51 -05:00
Justin M. Keyes
87f4d2592c
test/util: expect_err() ( #8257 )
...
other cleanup, ref #8245
2018-04-11 22:07:00 +02:00
Justin M. Keyes
b11b681289
test/util: matches()
2018-04-11 01:58:41 +02:00
ZyX
920c582320
test/helpers: Support booleans
2018-03-27 01:35:21 +03:00
Justin M. Keyes
7973847d02
test/util: remove eq_any()
...
It was added in the parent commit, but ended up not being used. And
I can't think of a case where it will be used: instead we would probably
want to generalize expect_msg_seq() if necessary.
2018-02-18 19:22:44 +01:00
Justin M. Keyes
e72ecdb7ca
test/util: expect_msg_seq()
...
job_spec.lua on AppVeyor (Windows) often fails like this:
FAILED ] C:/projects/neovim/test/functional\core\job_spec.lua @ 72: jobs changes to given `cwd` directory
C:/projects/neovim/test/functional\core\job_spec.lua:81: Expected objects to be the same.
Passed in:
(table) {
[1] = 'notification'
[2] = 'stdout'
*[3] = {
[1] = 0
*[2] = {
[1] = 'C:\projects\neovim\Xtest-tmpdir\nvimmSjq1S\0' } } }
Expected:
(table) {
[1] = 'notification'
[2] = 'stdout'
*[3] = {
[1] = 0
*[2] = {
[1] = 'C:\projects\neovim\Xtest-tmpdir\nvimmSjq1S\0'
*[2] = '' } } }
stack traceback:
Message chunking is non-deterministic, so we need to try different
variants.
2018-02-18 19:19:03 +01:00
James McCoy
de10ea55f3
lint
2018-02-03 22:19:08 -05:00
ZyX
2316a38dd1
tests: Make format_string('%q', ...) output more stable
...
It appears to be different on lua and luajit.
2018-02-02 07:28:56 -05:00
ZyX
fbdc3ac4ef
tests: Fix linter errors
2017-12-03 20:22:09 +03:00
ZyX
c49e22d396
Merge branch 'master' into s-dash-stdin
2017-12-03 16:49:30 +03:00
ZyX
b9c7813058
Merge branch 'master' into expression-parser
2017-11-26 15:54:03 +03:00
Björn Linse
753d0091e8
core dumps: don't use pipe, it does not work
2017-11-25 09:37:00 +01:00
ZyX
ebb33eddd9
tests: Stabilize float format and %e in format_luav and format_string
2017-11-19 22:00:59 +03:00
ZyX
f20f97c936
*: Fix linter errors
2017-11-19 21:13:27 +03:00
ZyX
342239a9c5
unittests,viml/parser/expressions: Start adding asgn parsing tests
2017-11-13 01:11:13 +03:00
ZyX
39c75d31be
unittests: Fix automatic test case generation
2017-11-13 01:11:13 +03:00
ZyX
4aebd00a9e
*: Fix linter errors
2017-11-06 20:28:37 +03:00
ZyX
42959d0e8f
unittests: Add tests for vim_str2nr
2017-11-06 20:15:05 +03:00
ZyX
7849070f99
tests: Add missing test cases
2017-11-06 01:17:39 +03:00
ZyX
7bc6de7526
api/vim,functests: Add tests for nvim_parse_expression, fix found bugs
2017-11-06 01:17:39 +03:00