Make fake language servers have full capabilities

Max Brunsfeld created

Change summary

crates/language/src/language.rs |  2 +-
crates/lsp/src/lsp.rs           | 10 +++++++++-
2 files changed, 10 insertions(+), 2 deletions(-)

Detailed changes

crates/language/src/language.rs 🔗

@@ -574,7 +574,7 @@ impl LanguageServerConfig {
             Self {
                 fake_config: Some(FakeLanguageServerConfig {
                     servers_tx,
-                    capabilities: Default::default(),
+                    capabilities: lsp::LanguageServer::full_capabilities(),
                     initializer: None,
                 }),
                 disk_based_diagnostics_progress_token: Some("fakeServer/check".to_string()),

crates/lsp/src/lsp.rs 🔗

@@ -512,8 +512,16 @@ type FakeLanguageServerHandlers = Arc<
 
 #[cfg(any(test, feature = "test-support"))]
 impl LanguageServer {
+    pub fn full_capabilities() -> ServerCapabilities {
+        ServerCapabilities {
+            document_highlight_provider: Some(OneOf::Left(true)),
+            code_action_provider: Some(CodeActionProviderCapability::Simple(true)),
+            ..Default::default()
+        }
+    }
+
     pub fn fake(cx: &mut gpui::MutableAppContext) -> (Arc<Self>, FakeLanguageServer) {
-        Self::fake_with_capabilities(Default::default(), cx)
+        Self::fake_with_capabilities(Self::full_capabilities(), cx)
     }
 
     pub fn fake_with_capabilities(