aboutsummaryrefslogtreecommitdiff
path: root/test/functional/ui/screen.lua
Commit message (Collapse)AuthorAge
* feat(api): win_viewport also sends line_count #15613Yatao Li2021-09-10
|
* floats: z-indexBjörn Linse2021-05-15
|
* ui: make 'mouse' handling in external UI more consistentBjörn Linse2021-01-01
| | | | | | | | | before the behaviour of 'mouse' was inconsistent in external UI, as some remapping logic would check has_mouse() and others don't (no difference in TUI or vim classic). With this change, the behaviour is consistently up to the UI decide (see ui.txt edit) Behaviour of tui.c is unaffected by this change.
* api: add API for themesBjörn Linse2020-11-01
| | | | | | | | | | co-author: hlpr98 <hlpr98@gmail.com> (dict2hlattrs function) orange is sus?? NOVEMBER DAWN erase the lie that is redraw_later()
* api/ui: win_viewport event for visible range and cursor position in windowBjörn Linse2020-04-01
|
* screen.lua: remove screen:_on_event #11488Justin M. Keyes2019-12-01
| | | Tests can redefine the handlers, so we don't need this extra hook.
* test/Screen:expect: replace "{IGNORE}" with "{MATCH:…}"Justin M. Keyes2019-11-09
| | | | ref #11004
* tests: Screen:expect: support "{MATCH:…}"Daniel Hahler2019-11-09
|
* 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
|
* 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/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: 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.
* syntax, TUI: support "strikethrough"Jaskaran Singh2019-09-13
| | | | | | fix #3436 Includes: vim-patch:8.0.1038: strike-through text not supported
* test: properly test missing clears after scrollBjörn Linse2019-09-06
| | | | | NB: happened to be irrelevant to the present failure, which only occured with the compositor and not exteral UI for some reason
* screen.lua: dump payload on handler failureJustin M. Keyes2019-09-01
| | | | | | | | | | | | For debugging failures like: test/functional/helpers.lua:240: test/functional/ui/screen.lua:898: bad argument #1 to 'unpack' (table expected, got number) test/functional/helpers.lua:240: test/functional/ui/screen.lua:708: attempt to index local 'item' (a number value) ref #10804
* test/ui: update tests for new msg_grid implementationBjörn Linse2019-09-01
|
* test/ui: make screen:expect() print full state when height does not matchBjörn Linse2019-09-01
|
* tests: screen: notification_cb: improve assertion messageDaniel Hahler2019-08-20
|
* ui: transmit "blend=" property of highlight attributesBjörn Linse2019-08-18
|
* test/ui: properly test win_hide by explicitly marking hidden gridsBjörn Linse2019-08-17
|
* ui: use Window type in win_pos consistently with win_float_posBjörn Linse2019-08-17
| | | | Also check invalid positional arguments to screen:expect()
* 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
* 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".
* highlight: expose builtin highlight groups using hl_group_set eventBjörn Linse2019-07-14
|
* 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
* highlight: show "hi Group" message correctly when not using the screenBjörn Linse2019-07-05
| | | | | | | ext_message doesn't set msg_col. Add a space and let client deal with wrapping. When using silent redirect show the unwrapped message form. Removed check is already part of msg_advance()
* cmdline: remove invalid cmdline_show event when aborting mappingBjörn Linse2019-06-26
|
* messages: use proper multiline error message for rpcrequest and API wrappersBjörn Linse2019-05-26
|
* test: remove use of require('test.helpers')Justin M. Keyes2019-05-18
| | | | | | The test.functional.helpers and test.unit.helpers modules now include all of the public functions from test.helpers, so there is no need to separately require('test.helpers').
* UI/ext_messages: learn more message kindsJustin M. Keyes2019-05-11
| | | | ref #6201
* doc [ci skip]Justin M. Keyes2019-03-26
| | | | closes #9719
* Allow using internal popupmenu or ext_popupmenu for wildmenuBjörn Linse2019-03-16
| | | | | Deprecate ext_wildmenu. ext_popupmenu already contains more state (anchor position), and will allow further expansion (info about items).
* floats: implement floating windowsBjörn Linse2019-03-02
| | | | Co-Author: Dongdong Zhou <dzhou121@gmail.com>
* ui: implement ext_messagesBjörn Linse2019-02-10
| | | | Co-Author: Dongdong Zhou <dzhou121@gmail.com>
* UI: implement 'pumblend' option for semi-transparent popupmenuBjörn Linse2019-02-07
| | | | | | | | | | | | | Why? - Because we can. - Because the TUI is just another GUI™ - Because it looks kinda nice, and provides useful context like 1 out of 100 times Complies with "don't pay for what you don't use". Some crashes for resizing were unfolded, add tests for those.
* multigrid: simplify testsBjörn Linse2018-12-31
|
* multigrid: add tests for multiline messages and tabsBjörn Linse2018-12-31
|
* multigrid: test refactorBjörn Linse2018-12-31
|
* multigrid: rename event to win_pos, make grid firstBjörn Linse2018-12-31
|
* multigrid: add msg_scroll_start and msg_scroll_reset eventsBjörn Linse2018-12-31
|
* multigrid: add multigrid screen testsUtkarsh Maheshwari2018-12-31
|
* multigrid: add multigrid support to test infrastructureBjörn Linse2018-12-31
| | | | make Screen explicitly tied to its session
* docJustin M. Keyes2018-11-28
| | | | | | | | | | - develop.txt is for design/guidelines; architecture/concepts should live elsewhere (currently src/nvim/README.md) - move dev-jargon to intro.txt - replace https://neovim.io/community (deprecated) with https://neovim.io/#chat - <Cmd> avoids CmdlineEnter/Leave https://github.com/vim/vim/issues/2889
* defaults: background=dark #2894 (#9205)Justin M. Keyes2018-11-20
| | | | | | | | | | | | | By historical accident, Nvim defaults to background=light. So on a dark background, `:colorscheme default` looks completely wrong. The "smart" logic that Vim uses is confusing for anyone who uses Vim on multiple platforms, so rather than mimic that, pick the (hopefully) most common default. - Since Neovim is dark-powered, we assume most users have dark backgrounds. - Most of the GUIs tend to have a dark background by default. ref #6289
* tests: improve robustness of immediate successes in screen testsBjörn Linse2018-10-15
|
* ui: reserve the right to split a screen redraw into multiple batches.Björn Linse2018-10-02
|
* ui: rename ext_newgrid to ext_linegridBjörn Linse2018-10-01
|