summaryrefslogtreecommitdiffstatshomepage
path: root/test/functional/plugin/lsp/codelens_spec.lua
AgeCommit message (Collapse)AuthorFiles
2026-04-18fix(lsp): skip codelens refresh redraw for deleted buffer #39193Jaehwang Jung1
Problem: After on_refresh() sends a textDocument/codeLens request, the buffer may be deleted before the response arrives. The response callback then tries to redraw that deleted buffer and raises Invalid buffer id error. Solution: Check buffer validity before redrawing. AI-assisted: Codex Co-authored-by: Yi Ming <ofseed@foxmail.com>
2026-03-18fix(lsp): redraw codelens after request completed #38352Yi Ming1
Problem: When code lens is enabled, `on_attach` is executed, but it does not trigger a redraw. Another event, eg, moving the cursor, is required to trigger a redraw and execute the decoration provider's `on_win`. Solution: Trigger a `redraw` after each request is completed.
2026-03-10fix(lsp): do not clear the codelens on the last line #38226Yi Ming1
Problem The logic that clears codelenses beyond the buffer also removes the codelenses on the last line. Solution Do not clear the codelens on the last line.
2026-03-08fix(lsp): ensure the codelens on the first line is visibleYi Ming1
2026-03-08fix(lsp): adjust codelens position based on the server-provided rangeYi Ming1
2026-03-04fix(lsp): ignore stale codelens resolve responses (#38153)Lewis Russell1
2026-02-26test: remove remaining use of feed_command() in terminal/ (#38069)zeertzjq1
Also deduplicate screen lines in some other tests.
2026-02-08feat(lsp): display codelens as virtual lines, not virtual text #36469Mike J McGuirk1
Problem: Code lenses currently display as virtual text on the same line and after the relevant item. While the spec does not say how lenses should be rendered, above the line is most typical. For longer lines, lenses rendered as virtual text can run off the side of the screen. Solution: Display lenses as virtual lines above the text. Closes https://github.com/neovim/neovim/issues/33923 Co-authored-by: Yi Ming <ofseed@foxmail.com>
2026-02-03feat(lsp): support `workspace/codeLens/refresh`Yi Ming1
2026-02-03feat(lsp)!: reimplement `textDocument/codeLens` as decoration providerYi Ming1
2025-09-24test: don't call clear() in both before_each() and after_each() (#35901)zeertzjq1
2024-09-21test: support upvalues in exec_luaLewis Russell1
2024-04-23test: improve test conventionsdundargoc1
Specifically, functions that are run in the context of the test runner are put in module `test/testutil.lua` while the functions that are run in the context of the test session are put in `test/functional/testnvim.lua`. Closes https://github.com/neovim/neovim/issues/27004.
2024-04-10refactor(test): inject after_each differentlyLewis Russell1
2024-04-08test: improve test conventionsdundargoc1
Work on https://github.com/neovim/neovim/issues/27004.
2024-01-03refactor: format test/*Justin M. Keyes1
2022-12-31feat(lsp): add function to clear codelens (#21504)Mathias Fußenegger1
Currently once you retrieve the lenses you're pretty much stuck with them as saving new lenses is additive. Adding a dedicated method to reset lenses allows users to toggle lenses on/off which can be useful for language servers where they are noisy or expensive and you only want to see them temporary.
2021-11-01feat(lsp): add per-client commands (#16101)Michael Lingelbach1
2021-09-28feat(lsp): add client command support to codelens (#15820)Mathias Fußenegger1
Also adds a check against the server capabilities to fix https://github.com/neovim/neovim/issues/15183
2021-09-05feat(lsp)!: change handler signatureMichael Lingelbach1
Previously, the handler signature was: function(err, method, params, client_id, bufnr, config) In order to better support external plugins that wish to extend the protocol, there is other information which would be advantageous to forward to the client, such as the original params of the request that generated the callback. In order to do this, we would need to break symmetry of the handlers, to add an additional "params" as the 7th argument. Instead, this PR changes the signature of the handlers to: function(err, result, ctx, config) where ctx (the context) includes params, client_id, and bufnr. This also leaves flexibility for future use-cases. BREAKING_CHANGE: changes the signature of the built-in client handlers, requiring updating handler calls
2021-07-10test(lsp): file URIs do not allow relative pathsAlessandro Pezzoni1
2021-06-14feat(lsp): Add codelens supportMathias Fussenegger1