mirror of
https://github.com/tiennm99/serena.git
synced 2026-08-16 00:24:26 +00:00
Fix C# language server startup and test configuration
- Add required --stdio flag for Microsoft.CodeAnalysis.LanguageServer - Add required --extensionLogDirectory parameter to avoid startup failure - Fix test fixture to properly start/stop language server - Remove skip markers from C# tests to enable testing - Return cache_dir from setup_runtime_dependencies for log directory creation The language server now starts successfully and the first test passes. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude
parent
aa0fb79208
commit
723b7cb175
@@ -16,7 +16,12 @@ from test.conftest import create_ls
|
||||
def csharp_ls() -> SolidLanguageServer:
|
||||
"""Create a C# language server instance for testing."""
|
||||
repo_path = Path(__file__).parent.parent.parent / "resources" / "repos" / "csharp" / "test_repo"
|
||||
return create_ls(Language.CSHARP, str(repo_path))
|
||||
server = create_ls(Language.CSHARP, str(repo_path))
|
||||
server.start()
|
||||
try:
|
||||
yield server
|
||||
finally:
|
||||
server.stop()
|
||||
|
||||
|
||||
class TestCSharpBasic:
|
||||
@@ -27,7 +32,6 @@ class TestCSharpBasic:
|
||||
assert csharp_ls is not None
|
||||
assert csharp_ls.language == Language.CSHARP
|
||||
|
||||
@pytest.mark.skip(reason="Requires running language server")
|
||||
def test_get_document_symbols(self, csharp_ls: SolidLanguageServer):
|
||||
"""Test getting document symbols from a C# file."""
|
||||
file_path = os.path.join("Program.cs")
|
||||
@@ -45,7 +49,6 @@ class TestCSharpBasic:
|
||||
assert "Program" in class_names
|
||||
assert "Calculator" in class_names
|
||||
|
||||
@pytest.mark.skip(reason="Requires running language server")
|
||||
def test_find_definition(self, csharp_ls: SolidLanguageServer):
|
||||
"""Test finding definition of a symbol."""
|
||||
file_path = os.path.join("Program.cs")
|
||||
@@ -59,7 +62,6 @@ class TestCSharpBasic:
|
||||
assert len(definitions) > 0
|
||||
assert any("Calculator" in str(d) for d in definitions)
|
||||
|
||||
@pytest.mark.skip(reason="Requires running language server")
|
||||
def test_find_references(self, csharp_ls: SolidLanguageServer):
|
||||
"""Test finding references to a symbol."""
|
||||
file_path = os.path.join("Program.cs")
|
||||
@@ -72,7 +74,6 @@ class TestCSharpBasic:
|
||||
# Should find at least the definition and one usage
|
||||
assert len(references) >= 2
|
||||
|
||||
@pytest.mark.skip(reason="Requires running language server")
|
||||
def test_nested_namespace_symbols(self, csharp_ls: SolidLanguageServer):
|
||||
"""Test getting symbols from nested namespace."""
|
||||
file_path = os.path.join("Models", "Person.cs")
|
||||
|
||||
Reference in New Issue
Block a user