This PR significantly improves the test coverage of the language server, providing at least a single basic test for every request that is used by the client. It also implements infrastructure for testing all of these requests, e.g. the ability to run interactive tests in a project context and refactors the interactive test runner to be more maintainable. Finally, it also fixes a small bug with the recently implemented unknown identifier code actions for auto-implicits (#10442) that was discovered in testing, where the "import all unambiguous unknown identifiers" code action didn't work correctly on auto-implicit identifiers.
12 lines
364 B
Text
12 lines
364 B
Text
-- Regression test for a bug where the dangling dot was not accounted for in some
|
|
-- atomic completions, which lead to invalid completions after a dangling dot
|
|
|
|
def foo : Unit :=
|
|
x. -- No completions expected
|
|
--^ completion
|
|
|
|
def bar : Array Nat := Id.run do
|
|
let mut x := sorry
|
|
let foo := x. -- No completions expected
|
|
--^ completion
|
|
sorry
|