mirror of
https://github.com/tiennm99/serena.git
synced 2026-07-15 12:21:19 +00:00
39 lines
1.0 KiB
Python
39 lines
1.0 KiB
Python
from pathlib import Path
|
|
|
|
import pytest
|
|
|
|
from multilspy.language_server import SyncLanguageServer
|
|
from multilspy.multilspy_config import Language, MultilspyConfig
|
|
from multilspy.multilspy_logger import MultilspyLogger
|
|
|
|
|
|
@pytest.fixture(scope="session")
|
|
def resources_dir() -> Path:
|
|
"""Path to the test resources directory."""
|
|
current_dir = Path(__file__).parent
|
|
return current_dir / "resources"
|
|
|
|
|
|
@pytest.fixture(scope="session")
|
|
def repo_path() -> Path:
|
|
return Path(__file__).parent / "resources" / "test_repo"
|
|
|
|
|
|
@pytest.fixture(scope="session")
|
|
def language_server(repo_path: Path):
|
|
"""Create a SyncLanguageServer instance configured to use the test repository."""
|
|
config = MultilspyConfig(code_language=Language.PYTHON)
|
|
logger = MultilspyLogger()
|
|
|
|
# Create a language server instance
|
|
server = SyncLanguageServer.create(config, logger, str(repo_path))
|
|
|
|
# Start the server
|
|
server.start()
|
|
|
|
try:
|
|
yield server
|
|
finally:
|
|
# Ensure server is shut down
|
|
server.stop()
|