aboutsummaryrefslogtreecommitdiff
path: root/test
Commit message (Collapse)AuthorAge
* 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: g:loaded_xx_provider=2 means "enabled and working"Justin M. Keyes2019-08-04
| | | | | Value of 1 cannot be used, because users might set that in their vimrc to _disable_ a provider, which would confuse :checkhealth and has().
* 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.
* process_stop: uv: do not close stdin first/explicitly #10584Daniel Hahler2019-08-01
| | | | | | | | | | - process_stop: do not close stdin explicitly. The "close stdin" step was from aa9cb48, before we fixed/reworked the SIGTERM timing logic. So it's probably outdated / no longer needed. - win: jobstop: exit_code 15 GetExitCodeProcess appears to return the used signal. https://docs.microsoft.com/en-us/windows/win32/api/processthreadsapi/nf-processthreadsapi-getexitcodeprocess ref #10573
* vim-patch:8.1.0572: stopping a job does not work properly on OpenBSDDaniel Hahler2019-07-30
| | | | | | | | | | | | Problem: Stopping a job does not work properly on OpenBSD. Solution: Do not use getpgid() to check the process group of the job processs ID, always pass the negative process ID to kill(). (George Koehler, closes vim/vim#3656) https://github.com/vim/vim/commit/76ab4fd61901090e6af3451ca6c5ca0fc370571f Ref: https://github.com/neovim/neovim/issues/9704 Ref: https://github.com/neovim/neovim/issues/10182#issuecomment-514450069 Closes https://github.com/neovim/neovim/pull/10660
* vim-patch:8.1.1049: when user tries to exit with CTRL-C message is confusingJan Edmund Lazo2019-07-28
| | | | | | | | | | | | | | | | | | Problem: When user tries to exit with CTRL-C message is confusing. Solution: Only mention ":qa!" when there is a changed buffer. (closes vim/vim#4163) https://github.com/vim/vim/commit/a84a3dd6635fcd2e07f510cba6a999585dcc381a vim-patch:8.1.1052: test for CTRL-C message sometimes fails Problem: test for CTRL-C message sometimes fails Solution: Make sure there are no changed buffers. https://github.com/vim/vim/commit/553e5a5c568e7d175b65b0472cd6d9843b25f4c8 vim-patch:8.1.1053: warning for missing return statement Problem: Warning for missing return statement. (Dominique Pelle) Solution: Add return statement. https://github.com/vim/vim/commit/d6c3f1fa2b5e1dd7dc87cf608d72b84ad696b58f
* TextYankPost: spurious/too-early dispatch during delete #10392Jit2019-07-29
| | | | | | Problem: delete-with-register dispatches TextYankPost before updating yank registers Solution: Add flag to op_yank(). Fixes #10225
* Merge #10628 from notomo/vim-8.1.1759Justin M. Keyes2019-07-28
|\
| * vim-patch:8.1.1759: no mode char for terminal mapping from maparg()notomo2019-07-28
| | | | | | | | | | | | Problem: No mode char for terminal mapping from maparg(). Solution: Check for TERMINAL mode. (closes vim/vim#4735) https://github.com/vim/vim/commit/14371ed69778107654e39268d0d90982e53ad6e0
* | build/tests: remove pre/uv.h #10531Daniel Hahler2019-07-28
|/ | | | | | Initially done in 28e59cb22, but does not appear to be necessary anymore. Uses UV_EEXIST directly, just like UV_ENOENT.
* API: Context: save/restoreAbdelhakeem2019-07-27
|
* eval: context: add ctx-family functionsAbdelhakeem2019-07-27
|
* API: ContextAbdelhakeem2019-07-27
|
* tests: win: fix "cat" with PowerShellerw72019-07-26
| | | | Ref: https://github.com/neovim/neovim/pull/10580#issuecomment-514884092
* tests: use "cat" also on WindowsDaniel Hahler2019-07-26
| | | | | | | Fixes https://github.com/neovim/neovim/issues/10574. Keeps 'can be called recursively' pending for now, see https://github.com/neovim/neovim/pull/10580#issuecomment-515295571.
* os/fs: introduce os_fopen()Justin M. Keyes2019-07-25
| | | | | | | Windows: Using fopen() directly may need UTF-16 filepath conversion. To achieve that, os_fopen() goes through os_open(). fix #10586
* Merge #10596 'vim-patch:8.1.{899,903,905,907,908,910,913,1746}'Justin M. Keyes2019-07-25
|\ | | | | | | | | close #9930 close #10051
| * Checks for overflow when parsing string to intGabriel2019-07-24
|/
* ci: RunTests: ensure that the logfile gets displayed (#10597)Daniel Hahler2019-07-24
| | | | | | 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
* tests: AppVeyor: fix test/functional/ex_cmds/arg_spec.lua (#10598)Daniel Hahler2019-07-24
| | | | | | | | | | | | | | | | | | | | For unknown reasons it does not have the trailing space in `:args` output there anymore: [ FAILED ] test/functional\ex_cmds\arg_spec.lua @ 11: :argument does not restart :terminal buffer test/functional\ex_cmds\arg_spec.lua:25: Expected objects to be the same. Passed in: (string) ' [term://.//4552:C:\Windows\system32\cmd.exe]' Expected: (string) ' [term://.//4552:C:\Windows\system32\cmd.exe] ' stack traceback: test/functional\ex_cmds\arg_spec.lua:25: in function <test/functional\ex_cmds\arg_spec.lua:11> The test is not about that though, and this can be made less strict by using `trim()`. The new test in `test_arglist.vim` for no trailing newline is OK, and contains trailing spaces. So this is likely due to the length of it exceeding the column width already.
* vim-patch:8.0.1738: ":args" output is hard to readDaniel Hahler2019-07-24
| | | | | | | | | | | | | | | Problem: ":args" output is hard to read. Solution: Make columns with the names if the output is more than one line. https://github.com/vim/vim/commit/5d69da462f584a3aefb3427b127334bf9af3a4b0 vim-patch:8.0.1740: warning for signed-unsigned incompatibility Problem: Warning for signed-unsigned incompatibility. Solution: Change type from "char *" to "char_u *". (John Marriott) https://github.com/vim/vim/commit/405dadb63ea2b7aa4c8c659807506a35a8a9504c Removes ported legacy test that was re-added later. Ref: https://github.com/neovim/neovim/pull/10147#issuecomment-512609513
* tests: fix/improve Screen:expect_unchanged (#10577)Daniel Hahler2019-07-24
| | | | | | Do not sleep before collecting initial state. Ref: https://github.com/neovim/neovim/pull/10550#issuecomment-513670205
* tests: re-enable "tab drag in tabline to the left moves tab left" (#10588)Daniel Hahler2019-07-24
| | | Ref: https://github.com/neovim/neovim/pull/4874
* shell-test: fix REP for count larger than uint8_t (#10581)Daniel Hahler2019-07-22
|
* tests: make TERM=interix test pending (#10576)Daniel Hahler2019-07-22
| | | | Ref: https://github.com/neovim/neovim/issues/10179 Ref: https://github.com/neovim/neovim/pull/9494
* test/helpers: improve pattern with module functions (#10421)Daniel Hahler2019-07-22
| | | | | | Benefits: - less lines, especially less results when grepping - makes it clearer what is exported
* win: jobstart(), system(): $PATHEXT-resolve exeJustin M. Keyes2019-07-21
| | | | | | | | | | | | Windows: In order for jobstart(['foo']), system(['foo']) to find "foo.cmd", we must replace "foo" with "foo.cmd" before sending `argv` to process_spawn(). Rationale: jobstart([…]), system([…]) "executable" semantics should be consistent with the VimL executable() function. fix #9569 related: #10554
* test: shell-test.c: "REP" command: flush, wait 1ms #10552Justin M. Keyes2019-07-20
| | | | | | Typically most shell output is the result of non-trivial work, so it would not blast stdout instantaneously. To more closely simulate that typical scenario, change `shell-test REP` to wait 1 millisecond between iterations.
* screen.lua: always print keyword-args snapshotJustin M. Keyes2019-07-20
|
* screen.lua: expect_unchanged(), get_snapshot()Justin M. Keyes2019-07-20
| | | | | | | | | | | | | | Factor `get_snapshot()` out of `print_snapshot()`, so that callers can get a table (for use with `expect()`) instead of the string form. Try to use this to fix indeterminism in `searchhl_spec.lua`. - Since the screen state is collected by `screen:expect_unchanged()`, we don't need a deterministic initial state (which would then be hardcoded into the test). This allows us to check "did anything change in the last N ms?" rather than "did anything change compared to a hardcoded screen-state?" - This may end up fruitless, because `expect_unchanged()` depends on timing to wait for an initial "current state".
* test: shell-test.c: flush stdout for REP #10548Justin M. Keyes2019-07-20
| | | fix #10534
* reltimefloat(): allow negative result #10544Justin M. Keyes2019-07-20
| | | | | | | | | For "backwards" duration, reltimefloat() should return negative value like its counterpart reltimestr(). ref bab24a88ab48 ref 06af88cd72ea ref #10521 fix #10452
* doc [ci skip] #10383Justin M. Keyes2019-07-19
| | | | - test/README.md: document luassert `TableFormatLevel` - CONTRIBUTING.md: absorb parts of the old "Development tips" wiki page
* tests: fix "system() … prints verbose information" (#10532)Daniel Hahler2019-07-17
| | | | | | | | It would previously fail with `set shell=sh` (no slash). For the test itself we can just use a non-existing (fake) shell, because it is only about the verbose output. Ref: https://github.com/neovim/neovim/issues/9330
* tests: move "busted" dir to "test" (#10518)Daniel Hahler2019-07-16
| | | | | | | | | | | * tests: move "busted" dir to "test" It is used for outputHandlers only, and clearly belongs to the tests. Use the full module name with the `-o` option to `busted` then for clarity. * luacheck * test/busted/outputHandlers/TAP.lua: use/extend upstream
* tests: shell-test: use count for REP (#10514)Daniel Hahler2019-07-16
| | | | | | | Also fix V576: use width specification > Incorrect format. Consider checking the third actual argument of the > 'sscanf' function. It's dangerous to use string specifier without width > specification. Buffer overflow is possible.
* viml/profile: revert proftime_T to unsigned type #10521Justin M. Keyes2019-07-16
| | | | | | | | | | | | | | - reltimestr(): Produce negative value by comparing the unsigned proftime_T value to INT64_MAX. https://github.com/neovim/neovim/issues/10452#issuecomment-511155132 1. The interfaces of nearly all platforms return uint64_t. INT64_MAX is only half of that. 2. Low-level interfaces like this typically define that there is no fixed starting point. The only guarantees are that it's (a) monotonically increasing at a rate that (b) matches real time. ref 06af88cd72ea fix #10452
* Merge pull request #10504 from bfredl/hl_defBjörn Linse2019-07-16
|\ | | | | highlight: expose builtin highlight groups using hl_group_set event
| * highlight: expose builtin highlight groups using hl_group_set eventBjörn Linse2019-07-14
| |
* | Fix missing CursorHoldI events (#3758)Daniel Hahler2019-07-16
| | | | | | Fixes https://github.com/neovim/neovim/issues/3757.
* | Fix is_executable_in_path() on Windows (#10468)erw72019-07-15
| | | | | | | | | | | | | | | | * Fix problem that 1byte extra memory was allocated in is_executable_in_path * Revert "Revert "tests: executable_spec: enable pending test #10443" (#10454)" This reverts commit 13fbeda0e56db36aeeb865bb5b33d13f69b2fdbc.
* | Merge pull request #10497 from bfredl/synlistBjörn Linse2019-07-14
|\ \ | |/ |/| messages: fix missing newlines in execute("syn list").
| * syntax: fix missing newlines in execute("syn list"). fixes #10467Björn Linse2019-07-14
| |
* | floats: fix 'winblend' on top of doublewidth chars.Björn Linse2019-07-13
|/ | | | | | | | | The interaction between 'winblend' and doublewidth chars in the background does not look very good. But check no chars get incorrectly placed at least. Also check that hidden EndOfBuffer region (from style="minimal") blends correctly.
* tests: use vim.inspect (#10485)Daniel Hahler2019-07-13
| | | | | | | The inspect modules is vendored as `vim.inspect`, and therefore it makes sense to use this in tests also. Ref: https://github.com/neovim/neovim/issues/6580 Ref: https://github.com/neovim/neovim/commit/bb3aa824b
* Merge pull request #9575 from bfredl/redrawdebugBjörn Linse2019-07-09
|\ | | | | ui: implement better redrawdebug for the compositor
| * ui: add 'redrawdebug' option for flexible debugging of redrawingBjörn Linse2019-07-09
| |
* | Merge pull request #10457 from bfredl/dwfloatBjörn Linse2019-07-09
|\ \ | | | | | | compositor: handle float overlapping left half of doublewidth char