aboutsummaryrefslogtreecommitdiff
path: root/test/functional/provider
Commit message (Collapse)AuthorAge
* refactor(tests): use assert_alive() #15546Justin M. Keyes2021-09-01
|
* fix(eval): cherry-pick emsg changes from v8.1.0736Sean Dewar2021-08-12
| | | | | | | | | | | v8.1.0736 made some changes for making some emsgs more specific. Includes the change for Test_lambda_fails() in test_lambda.vim. Adjust relevant functionaltests to expect the new emsgs. This patch has been fully ported in my Blob port PR, but it hasn't been merged yet, so just use what we need from it for now. Required for v8.1.1821.
* Tests(clipboard): Add test for block pasteshadmansaleh2021-07-01
|
* test, provider/define_spec.lua: fix few tests failerw72021-01-01
| | | | | fbd6a86 changes the behavior of :command-range and no longer allows arbitrary numbers. Adjust tests to reflect this behavior.
* vim-patch:8.1.2212: cannot see the selection type in :reg outputJan Edmund Lazo2020-12-25
| | | | | | | | Problem: Cannot see the selection type in :reg output. (Ayberk Aydın) Solution: Add c/l/b. (Christian Brabandt, closes vim/vim#5110, closes vim/vim#4546) https://github.com/vim/vim/commit/3691f1ee72b68a47e6dcc75927bfa46565cf3614 Patch v8.1.0999 is not ported so ":registers" does not omit register 1.
* vim-patch:8.1.1056: no eval function for RubyAlex Genco2020-10-21
| | | | | | Problem: No eval function for Ruby. Solution: Add rubyeval(). (Ozaki Kiichi, closes vim/vim#4152) https://github.com/vim/vim/commit/e99be0e6d28fad96efd2b2be23fa38e7559e80e1
* Support for :perl, :perlfile, :perldo and perleval() (#12809)Justin M. Keyes2020-09-05
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * support for :perl, :perlfile, :perldo and perleval() * document that the perl provider doesn't currently work on Windows * document that the perl legacy interface is now also supported * added perleval() documentation * import legacy perl interface tests * only perl 5.22+ is supported * healtcheck: use g:perl_host_prog if its set instead using just 'perl' isn't correct as it may not be the version requested. ditto for 'cpanm', rather go through 'App::cpanminus' to find the latest perl version
| * support for :perl, :perlfile, :perldo and perleval()Jacques Germishuys2020-08-30
| |
* | g:clipboard: allow command given as a list #12775DDoSolitary2020-09-01
|/ | | fixes #12768
* test: rewrite to multiple argumentskuuote2020-06-01
|
* runtime: fix remote plugin command fails at some casekuuote2020-05-31
| | | | fixes #12410
* provider/perl: test older versionsJan Edmund Lazo2020-01-20
|
* provider/perl: skip tests on WindowsJan Edmund Lazo2020-01-20
| | | | | | It worked for MINGW builds at one point but it keeps failing now because of perl dependencies or nvim session issues for tests (named pipes as sockets on Windows?).
* provider/perl: add basic testsJan Edmund Lazo2020-01-20
|
* system(), jobstart(): raise error on non-executable #11234Daniel Hahler2019-12-24
| | | | | | | | | | * tv_to_argv: error when cmd is not executable Callers always assume that emsg was emitted: - https://github.com/neovim/neovim/blob/57fbf288/src/nvim/eval.c#L12509 - https://github.com/neovim/neovim/blob/57fbf288/src/nvim/eval.c#L17923 - https://github.com/neovim/neovim/blob/57fbf288/src/nvim/eval.c#L18202 * test/functional/provider: display reason from missing_provider * provider#node#Detect: skip / handle non-existing node executable
* 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.
* provider: has("python3_dynamic") et al. #10980Justin M. Keyes2019-09-09
| | | | | | | | | | | Vim added more flags for testing yet more dimensions of its Python situation. Handle those in eval_has_provider(). vim-patch:8.0.1436: not enough information about what Python version may work Problem: Not enough information about what Python version may work. Solution: Add "python_compiled", "python3_compiled", "python_dynamic" and "python3_dynamic" values for has(). ref: https://github.com/neovim/neovim/pull/10942#issuecomment-529479500
* test: Eliminate expect_errJustin M. Keyes2019-09-06
| | | | Eliminate `expect_err` in favor of `pcall_err` + `eq` or `matches`.
* tests: use runtime from build for doc/tags with :help (#10479)Daniel Hahler2019-08-28
| | | | | | | | | | | | This is better practice in general, and allows to remove the "helptags ALL" hacks. Ref: https://github.com/neovim/neovim/issues/8824 Ref: https://github.com/neovim/neovim/commit/f1b67c3453c * Makefile: fix dependencies with regard to helptags - use the file as the main target to avoid unnecessary triggering - use "make oldtest" on Travis to ensure it gets built
* pyxversion: fix logic error #10759Björn Linse2019-08-14
| | | | Do not incorrectly prefer python2 if python3 is working. fixes #10758
* provider: check #Call() if g:loaded_xx_provider=2Justin M. Keyes2019-08-04
|
* provider: skip non-provider has() feature-namesJustin M. Keyes2019-08-04
| | | | | We don't want to retry autoload sourcing (slow) for every random has() query that finds it way to eval_call_provider().
* provider: decide status by g:loaded_xx_providerJustin M. Keyes2019-08-04
|
* provider: let providers decide their statusRui Abreu Ferreira2019-08-04
| | | | | | | | | | | | | | | | | | | | | | | | | | Instead of deciding provider status in eval_has_provider, move the decision to the provider Vim scripts. Previously, provider loading worked as follows: 1. eval_has_provider() verified provider availability by searching for the provider#providername#Call function and cached this verificaion as a static variable for some providers 2. providers short-circuited on loading to prevent the definition of the Call function (with the exception of the node provider that did not) This commit changes the expected interface between nvim and its providers to facilitate provider reloading, by splitting the verification of the provider from the availability of the Call function. eval_has_provider() now checks for a provider#providername#enabled variable. It is up to the provider script to set this to 0 or 1 accordingly. eval_call_provider() remains unchanged. All providers hosting a Call function were updated to respect this. The clipboard provider now has a Reload function to reload the provider.
* messages: use proper multiline error message for rpcrequest and API wrappersBjörn Linse2019-05-26
|
* test: cleanupJustin M. Keyes2019-05-05
| | | | | Avoid hyper-granularity. Don't need subdirectories for every little thing.
* provider: improve error message if provider is missing (#9487)Marco Hinz2019-01-12
| | | | | | | | | Move `has_eval_provider()` check to `eval_call_provider()` to make sure that every code path calls it first. Previously we would, when pynvim was missing, get a nice error message for `:python3 1`, but not for `:py3file blah`. Fixes https://github.com/neovim/neovim/issues/9485
* test: :ruby reports E319 if provider is missingMarco Hinz2018-12-12
|
* provider: repurpose E319Justin M. Keyes2018-12-12
| | | | | | | | | | | | | | In Vim (and some vestigial parts of Nvim) E319 was a placeholder for ex_ni commands, i.e. commands that are only available in certain builds of Vim. That is obviously counter to Nvim's goals: all Nvim commands are available on all platforms and build types (the remaining ex_ni commands are actually just missing providers). We need an error id for "missing provider", so it makes sense to use E319 for that purpose. ref #9344 ref #3577
* test: give more time for nodejsJan Edmund Lazo2018-06-04
| | | | | | Link neovim package to project root directory. Increase delay to 3 seconds. Reduce the total lines in temporary node scripts.
* test: nodejs_spec: fix test after upstream API changeJustin M. Keyes2018-05-15
| | | | closes https://github.com/neovim/node-client/issues/72
* test: nodejs_spec: allow more time for nodejs initJustin M. Keyes2018-04-18
|
* provider/RPC: apply_autocmds_group(): fix double-freeJustin M. Keyes2018-03-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | During provider dispatch, eval_call_provider() saves global state--including pointers, such as `autocmd_fname`--into `provider_caller_scope` which is later restored by f_rpcrequest(). But `autocmd_fname` is special-cased in eval_vars(), for performance (see Vim patch 7.2.021; this is also the singular purpose of the `autocmd_fname_full` global. Yay!) If eval_vars() frees `autocmd_fname` then its provider-RPC-scoped alias becomes a problem. Solution: Don't free autocmd_fname in eval_vars(), just copy into it. closes #5245 closes #5617 Reference ------------------------------------------------------------------------ Vim patch 7.2.021 https://github.com/vim/vim/commit/f6dad43c98f47da1ff9d8c99b320fc3674f83c63 Problem: When executing autocommands getting the full file name may be slow. (David Kotchan) Solution: Postpone calling FullName_save() until autocmd_fname is used. vim_dev discussion (2008): "Problem with CursorMoved AutoCommand when Editing Files on a Remote WIndows Share" https://groups.google.com/d/msg/vim_dev/kj95weZa_eE/GTgj4aq5sIgJ
* test/python: less-noisy Python skip-messageJustin M. Keyes2018-02-12
| | | | | Developer can use :checkhealth to get more details, don't need to blast the details in the skip-message every time.
* provider/nodejs: check version in Detect()Justin M. Keyes2017-12-17
|
* test: remove inspect test; set NODE_PATH in nodejs_spec.luaJan Edmund Lazo2017-12-17
| | | | | | | | | | | provider#node#can_inspect will fail on some systems because it is common to have old node versions in OS (any Linux OS that has LTS releases) and CI (Travis, Appveyor). NODE_PATH can be trivially set with VimL. Build scripts don't have to set it for the nodejs tests to work. NODE_PATH is optional to begin with and is used only as a workaround for the neovim node.js host.
* ci: nodejs client acceptance-test #7706Jan Edmund Lazo2017-12-17
| | | | | | | | | | | | | | | | | | | | | | | | ci: install nodejs 8 in Appveyor, Travis provider: check node version for debug support Resolve https://github.com/neovim/neovim/pull/7577#issuecomment-350590592 for Unix. provider: test if nodejs in ci supports --inspect-brk nodejs host for neovim requires nodejs 6+ to work properly. nodejs 6.12+ or 7.6+ is required for debug support via `node --inspect-brk`. provider: run cli.js of nodejs host directly npm shims are useless because the user cannot set node to debug mode via --inspect-brk. This is problematic on Windows which use batchfiles and shell scripts to compensate for not supporting shebang. The patch uses `npm root -g` to get the absolute path of the global npm modules. If that fails, then the user did not install neovim npm package globally. Use that absolute path to find `neovim/bin/cli.js`, which is what the npm shim actually runs with node. glob() is for a simple file check in case bin/ is removed because the npm shims are ignored now.
* doc: replace ":CheckHealth" with ":checkhealth"Justin M. Keyes2017-10-17
|
* functests: Replace check_provider -> missing_provider with err reportZyX2017-05-13
|
* functests: Test invalid behaviourZyX2017-05-13
| | | | Test correctly fail for oneline ruby, python and python3.
* api: Do not truncate errors <1 MB. #6237Sander Bosma2017-04-23
| | | | Closes #5984
* rplugin: Call s:LoadRemotePlugins() on startup.Justin M. Keyes2017-03-11
| | | | | | | | | | Dispense with the FuncUndefined/CmdUndefined quasi-optimization. If there are no rplugins, plugin/rplugin.vim takes less than 1ms. Closes #5821 Closes #6250 Helped-by: Qiming zhao <chemzqm@gmail.com>
* Merge #4980 'Support legacy `:ruby` commands'.Justin M. Keyes2016-07-10
|\
| * Add :ruby, :rubyfile, and :rubydo ex commandsAlex Genco2016-07-02
|/
* functests: Check logs in lua codeZyX2016-06-10
| | | | | | 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.
* eval: Stop executing *eval() function at errorZyX2016-05-27
| | | | | Fixes #4822 Closes #4823
* test: remote/define.vim: Add some spice.Justin M. Keyes2016-04-18
|
* test: formatCase Nelson2016-04-18
|
* test: remote/define.vim: rangeCase Nelson2016-04-18
|
* test/functional: clean up according to luacheck (part 1)Marco Hinz2015-11-23
|