summaryrefslogtreecommitdiffstatshomepage
path: root/test/unit/viml
AgeCommit message (Collapse)AuthorFiles
2026-01-17fix(api): parse_expression crash with unopened ] and nodeSean Dewar1
Problem: nvim_parse_expression null pointer dereference with unmatched ] followed by a node. Solution: if ast_stack was empty, set new_top_node_p to top of the stack after pushing the list literal node; similar to what's done for curlies. This bug was originally found by a Matrix user, but I couldn't remember how to trigger it... Ran into the other crash while finding a repro. :P
2024-04-10refactor(test): inject after_each differentlyLewis Russell3
2024-04-08test: improve test conventionsdundargoc3
Work on https://github.com/neovim/neovim/issues/27004.
2024-01-17test: move format_{string,luav} to a separate moduleLewis Russell2
2023-12-04build: enable lintlua for test/unit/ dir #26396Justin M. Keyes4
Problem: Not all Lua code is checked by stylua. Automating code-style is an important mechanism for reducing time spent on accidental (non-essential) complexity. Solution: - Enable lintlua for `test/unit/` directory. - TODO: only `test/functional/` remains unchecked. previous: 45fe4d11add933df76a2ea4bf52ce8904f4a778b previous: 517f0cc634b985057da5b95cf4ad659ee456a77e
2022-03-18feat: add support for global statuslineFamiu Haque1
Ref: #9342 Adds the option to have a single global statusline for the current window at the bottom of the screen instead of a statusline at the bottom of every window. Enabled by setting `laststatus = 3`. Due to the fact that statuslines at the bottom of windows are removed when global statusline is enabled, horizontal separators are used instead to separate horizontal splits. The horizontal separator character is configurable through the`horiz` item in `'fillchars'`. Separator connector characters are also used to connect the horizontal and vertical separators together, which are also configurable through the `horizup`, `horizdown`, `vertleft`, `vertright` and `verthoriz` items in `fillchars`. The window separators are highlighted using the `WinSeparator` highlight group, which supersedes `VertSplit` and is linked to `VertSplit` by default in order to maintain backwards compatibility.
2021-07-27fix(highlight): remove syncolor.vimGregory Anders1
Remove syncolor.vim in favor of defining the default highlight groups directly in `init_highlight`. This approach provides a number of advantages: 1. The highlights are always defined, regardless of whether or not the syntax regex engine is enabled. 2. Redundant sourcing of syntax files is eliminated (syncolor.vim was often sourced multiple times based on how the user's colorscheme file was written). 3. The syntax highlighting regex engine and the highlight groups themselves are more fully decoupled. 4. Removal of the confusing `:syntax on` / `:syntax enable` dichotomy (they now both do the same thing). This approach also correctly solves a number of bugs related to highlighting (#15176, #12573, #15205).
2019-09-03tests: assert:set_parameter('TableFormatLevel', 100) #10925Daniel Hahler1
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-05-18test: remove use of require('test.helpers')Justin M. Keyes2
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').
2018-02-02tests: Make format_string('%q', ...) output more stableZyX1
It appears to be different on lua and luajit.
2017-11-30*: Replace all occurrences of NVim with NvimZyX1
2017-11-26viml/parser/expressions: Make sure that listed nodes may be presentZyX1
With the new test leaving `assert(false);` for any of the cases makes tests crash.
2017-11-26functests: Add some more testsZyX1
2017-11-19tests: Stabilize float format and %e in format_luav and format_stringZyX1
2017-11-19*: Fix linter errorsZyX1
2017-11-19tests: Use single test file for unit and functional parser testsZyX2
2017-11-19viml/parser/expressions,unittests: Do better testing, fix found issuesZyX1
2017-11-13unittests,viml/parser/expressions: Start adding asgn parsing testsZyX1
2017-11-13unittests: Fix automatic test case generationZyX1
2017-11-13unittests,syntax: Check for sanity of highlight_init_cmdlineZyX1
Also fixes some errors found.
2017-11-12unittests: Add some more edge test casesZyX1
2017-11-12viml/parser/expressions: Add support for parsing assignmentsZyX3
2017-11-11unittests: Add a way to show some custom messages only when crashedZyX1
2017-11-06*: Fix linter errorsZyX1
2017-11-06tests: Add missing test casesZyX1
2017-11-06api/vim,functests: Add tests for nvim_parse_expression, fix found bugsZyX3
2017-11-06tests: Fix testlint errorsZyX3
2017-10-29syntax,viml/parser/expressions: Add missing highlight groupsZyX1
Also adjusts some names.
2017-10-29syntax,viml/expressions/parser: Create defaults for expr highlightingZyX1
2017-10-29unittests: Avoid alloc log checking errors when printing testsZyX1
2017-10-29viml/parser/expressions: Fix last error found by KLEEZyX1
2017-10-19viml/parser/expressions: Fix some errors spotted by KLEEZyX1
Not all of them are fixed yet though.
2017-10-16unittests: Free everything and check for memory leaksZyX1
Also improves error reporting.
2017-10-16viml/parser/expressions: Highlight prefix separately from numberZyX1
Should make accidental octals more visible.
2017-10-16charset: Avoid overflow in vim_str2nrZyX2
2017-10-15viml/parser/expressions,klee: Fix some problems found by KLEE runZyX1
2017-10-15viml/parser/expressions,tests: Add AST freeing, with sanity checksZyX1
2017-10-15unittests: Test some edge casesZyX1
2017-10-15viml/parser/expressions: Create tests for latest additionsZyX1
2017-10-15viml/parser/expressions: Finish parserZyX3
Note: formatc.lua was unable to swallow some newer additions to ExprASTNodeType (specifically `kExprNodeOr = '|'` and probably something else), so all `= …` were dropped: in any case they only were there in order to not bother updating viml_pexpr_debug_print_ast_node and since it is now known all nodes which will be present it is not much of an issue.
2017-10-15viml/parser/expressions: Add support for string parsingZyX1
2017-10-15viml/parser/expressions: Add support for subscript and list literalsZyX1
2017-10-15viml/parser/expressions: Error out on multiple colons in a rowZyX1
2017-10-15viml/parser/expressions: Add support for the dot operator and numbersZyX1
2017-10-15viml/parser/expressions: Make lexer parse numbers, support non-decimalZyX1
2017-10-15viml/parser/expressions: Forbid dot or alpha characters after a floatZyX1
This is basically what Vim already does, in addition to forbidding floats should there be a concat immediately before it.
2017-10-15viml/parser/expressions: Add support for comparison operatorsZyX3
2017-10-15viml/parser/expressions: Make sure that arrows outside lambda throwZyX1
2017-10-15viml/parser/expressions: Add support for ternary operatorZyX1
2017-10-15viml/parser/expressions: Fix determining invalid commas/colonsZyX1