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.
232 lines
5.7 KiB
Text
232 lines
5.7 KiB
Text
{"textDocument": {"uri": "file:///1659.lean"},
|
|
"position": {"line": 9, "character": 23}}
|
|
{"items":
|
|
[{"label": "Lean.Elab.Term.elabTermEnsuringType",
|
|
"kind": 21,
|
|
"data":
|
|
["«external:file:///1659.lean»",
|
|
9,
|
|
23,
|
|
0,
|
|
"cLean.Elab.Term.elabTermEnsuringType"]},
|
|
{"label": "Lean.Elab.Tactic.elabTermEnsuringType",
|
|
"kind": 21,
|
|
"data":
|
|
["«external:file:///1659.lean»",
|
|
9,
|
|
23,
|
|
0,
|
|
"cLean.Elab.Tactic.elabTermEnsuringType"]}],
|
|
"isIncomplete": false}
|
|
Resolution of Lean.Elab.Term.elabTermEnsuringType:
|
|
{"label": "Lean.Elab.Term.elabTermEnsuringType",
|
|
"kind": 21,
|
|
"detail": "Type",
|
|
"data":
|
|
["«external:file:///1659.lean»",
|
|
9,
|
|
23,
|
|
0,
|
|
"cLean.Elab.Term.elabTermEnsuringType"]}
|
|
Resolution of Lean.Elab.Tactic.elabTermEnsuringType:
|
|
{"label": "Lean.Elab.Tactic.elabTermEnsuringType",
|
|
"kind": 21,
|
|
"detail": "Type",
|
|
"data":
|
|
["«external:file:///1659.lean»",
|
|
9,
|
|
23,
|
|
0,
|
|
"cLean.Elab.Tactic.elabTermEnsuringType"]}
|
|
{"textDocument": {"uri": "file:///1659.lean"},
|
|
"position": {"line": 15, "character": 23}}
|
|
{"items":
|
|
[{"label": "Term.elabTermEnsuringType",
|
|
"kind": 21,
|
|
"data":
|
|
["«external:file:///1659.lean»",
|
|
15,
|
|
23,
|
|
0,
|
|
"cLean.Elab.Term.elabTermEnsuringType"]},
|
|
{"label": "Tactic.elabTermEnsuringType",
|
|
"kind": 21,
|
|
"data":
|
|
["«external:file:///1659.lean»",
|
|
15,
|
|
23,
|
|
0,
|
|
"cLean.Elab.Tactic.elabTermEnsuringType"]}],
|
|
"isIncomplete": false}
|
|
Resolution of Term.elabTermEnsuringType:
|
|
{"label": "Term.elabTermEnsuringType",
|
|
"kind": 21,
|
|
"detail": "Type",
|
|
"data":
|
|
["«external:file:///1659.lean»",
|
|
15,
|
|
23,
|
|
0,
|
|
"cLean.Elab.Term.elabTermEnsuringType"]}
|
|
Resolution of Tactic.elabTermEnsuringType:
|
|
{"label": "Tactic.elabTermEnsuringType",
|
|
"kind": 21,
|
|
"detail": "Type",
|
|
"data":
|
|
["«external:file:///1659.lean»",
|
|
15,
|
|
23,
|
|
0,
|
|
"cLean.Elab.Tactic.elabTermEnsuringType"]}
|
|
{"textDocument": {"uri": "file:///1659.lean"},
|
|
"position": {"line": 21, "character": 23}}
|
|
{"items":
|
|
[{"label": "elabTermEnsuringType",
|
|
"kind": 21,
|
|
"data":
|
|
["«external:file:///1659.lean»",
|
|
21,
|
|
23,
|
|
0,
|
|
"cLean.Elab.Term.elabTermEnsuringType"]},
|
|
{"label": "Lean.Elab.Tactic.elabTermEnsuringType",
|
|
"kind": 21,
|
|
"data":
|
|
["«external:file:///1659.lean»",
|
|
21,
|
|
23,
|
|
0,
|
|
"cLean.Elab.Tactic.elabTermEnsuringType"]}],
|
|
"isIncomplete": false}
|
|
Resolution of elabTermEnsuringType:
|
|
{"label": "elabTermEnsuringType",
|
|
"kind": 21,
|
|
"detail": "Type",
|
|
"data":
|
|
["«external:file:///1659.lean»",
|
|
21,
|
|
23,
|
|
0,
|
|
"cLean.Elab.Term.elabTermEnsuringType"]}
|
|
Resolution of Lean.Elab.Tactic.elabTermEnsuringType:
|
|
{"label": "Lean.Elab.Tactic.elabTermEnsuringType",
|
|
"kind": 21,
|
|
"detail": "Type",
|
|
"data":
|
|
["«external:file:///1659.lean»",
|
|
21,
|
|
23,
|
|
0,
|
|
"cLean.Elab.Tactic.elabTermEnsuringType"]}
|
|
{"textDocument": {"uri": "file:///1659.lean"},
|
|
"position": {"line": 27, "character": 23}}
|
|
{"items":
|
|
[{"label": "Lean.Elab.Term.elabTermEnsuringType",
|
|
"kind": 21,
|
|
"data":
|
|
["«external:file:///1659.lean»",
|
|
27,
|
|
23,
|
|
0,
|
|
"cLean.Elab.Term.elabTermEnsuringType"]},
|
|
{"label": "elabTermEnsuringType",
|
|
"kind": 21,
|
|
"data":
|
|
["«external:file:///1659.lean»", 27, 23, 0, "celabTermEnsuringType"]},
|
|
{"label": "Lean.Elab.Tactic.elabTermEnsuringType",
|
|
"kind": 21,
|
|
"data":
|
|
["«external:file:///1659.lean»",
|
|
27,
|
|
23,
|
|
0,
|
|
"cLean.Elab.Tactic.elabTermEnsuringType"]}],
|
|
"isIncomplete": false}
|
|
Resolution of Lean.Elab.Term.elabTermEnsuringType:
|
|
{"label": "Lean.Elab.Term.elabTermEnsuringType",
|
|
"kind": 21,
|
|
"detail": "Type",
|
|
"data":
|
|
["«external:file:///1659.lean»",
|
|
27,
|
|
23,
|
|
0,
|
|
"cLean.Elab.Term.elabTermEnsuringType"]}
|
|
Resolution of elabTermEnsuringType:
|
|
{"label": "elabTermEnsuringType",
|
|
"kind": 21,
|
|
"detail": "Type",
|
|
"data": ["«external:file:///1659.lean»", 27, 23, 0, "celabTermEnsuringType"]}
|
|
Resolution of Lean.Elab.Tactic.elabTermEnsuringType:
|
|
{"label": "Lean.Elab.Tactic.elabTermEnsuringType",
|
|
"kind": 21,
|
|
"detail": "Type",
|
|
"data":
|
|
["«external:file:///1659.lean»",
|
|
27,
|
|
23,
|
|
0,
|
|
"cLean.Elab.Tactic.elabTermEnsuringType"]}
|
|
{"textDocument": {"uri": "file:///1659.lean"},
|
|
"position": {"line": 33, "character": 23}}
|
|
{"items":
|
|
[{"label": "Lean.Elab.Term.elabTermEnsuringType",
|
|
"kind": 21,
|
|
"data":
|
|
["«external:file:///1659.lean»",
|
|
33,
|
|
23,
|
|
0,
|
|
"cLean.Elab.Term.elabTermEnsuringType"]},
|
|
{"label": "Lean.Elab.elabTermEnsuringType",
|
|
"kind": 21,
|
|
"data":
|
|
["«external:file:///1659.lean»",
|
|
33,
|
|
23,
|
|
0,
|
|
"cLean.Elab.elabTermEnsuringType"]},
|
|
{"label": "elabTermEnsuringType",
|
|
"kind": 21,
|
|
"data":
|
|
["«external:file:///1659.lean»", 33, 23, 0, "celabTermEnsuringType"]},
|
|
{"label": "Lean.Elab.Tactic.elabTermEnsuringType",
|
|
"kind": 21,
|
|
"data":
|
|
["«external:file:///1659.lean»",
|
|
33,
|
|
23,
|
|
0,
|
|
"cLean.Elab.Tactic.elabTermEnsuringType"]}],
|
|
"isIncomplete": false}
|
|
Resolution of Lean.Elab.Term.elabTermEnsuringType:
|
|
{"label": "Lean.Elab.Term.elabTermEnsuringType",
|
|
"kind": 21,
|
|
"detail": "Type",
|
|
"data":
|
|
["«external:file:///1659.lean»",
|
|
33,
|
|
23,
|
|
0,
|
|
"cLean.Elab.Term.elabTermEnsuringType"]}
|
|
Resolution of Lean.Elab.elabTermEnsuringType:
|
|
{"label": "Lean.Elab.elabTermEnsuringType",
|
|
"kind": 21,
|
|
"detail": "Type",
|
|
"data":
|
|
["«external:file:///1659.lean»", 33, 23, 0, "cLean.Elab.elabTermEnsuringType"]}
|
|
Resolution of elabTermEnsuringType:
|
|
{"label": "elabTermEnsuringType",
|
|
"kind": 21,
|
|
"detail": "Type",
|
|
"data": ["«external:file:///1659.lean»", 33, 23, 0, "celabTermEnsuringType"]}
|
|
Resolution of Lean.Elab.Tactic.elabTermEnsuringType:
|
|
{"label": "Lean.Elab.Tactic.elabTermEnsuringType",
|
|
"kind": 21,
|
|
"detail": "Type",
|
|
"data":
|
|
["«external:file:///1659.lean»",
|
|
33,
|
|
23,
|
|
0,
|
|
"cLean.Elab.Tactic.elabTermEnsuringType"]}
|