Rename package to searchbox

This commit renames the package from vector-search-mcp to searchbox. The
package imports and executable name are updated accordingly.
This commit is contained in:
2025-09-27 01:44:46 +00:00
parent e162b0613b
commit cda334a45d
18 changed files with 107 additions and 107 deletions

View File

@@ -3,8 +3,8 @@ from unittest.mock import AsyncMock, MagicMock, patch
import pytest
from qdrant_client import models
from vector_search_mcp.engine import get_engine
from vector_search_mcp.models import Match, MatchAny, MatchExclude, SearchRow
from searchbox.engine import get_engine
from searchbox.models import Match, MatchAny, MatchExclude, SearchRow
@pytest.fixture(autouse=True)

View File

@@ -2,8 +2,8 @@ from typing import Any
import pytest
from vector_search_mcp.engine.base_engine import BaseEngine
from vector_search_mcp.models import Condition, Match, MatchAny, SearchRow
from searchbox.engine.base_engine import BaseEngine
from searchbox.models import Condition, Match, MatchAny, SearchRow
class MockEngine(BaseEngine[dict[str, Any], str, dict]):
@@ -241,7 +241,7 @@ class IncompleteEngine(BaseEngine[str, int, str]):
async def test_upload_chunk_workflow(self):
"""Test the complete upload_chunk workflow"""
engine = MockEngine()
from vector_search_mcp.models import Chunk, ChunkData
from searchbox.models import Chunk, ChunkData
chunk = Chunk(
id="test-chunk-1",

View File

@@ -2,9 +2,9 @@ from unittest.mock import MagicMock, patch
import pytest
from vector_search_mcp.engine import Backend, get_engine, UnknownEngineError
from vector_search_mcp.engine.base_engine import BaseEngine
from vector_search_mcp.engine.qdrant_engine import QdrantEngine
from searchbox.engine import Backend, get_engine, UnknownEngineError
from searchbox.engine.base_engine import BaseEngine
from searchbox.engine.qdrant_engine import QdrantEngine
class TestEngineFactory:
@@ -19,10 +19,10 @@ class TestEngineFactory:
"""Test get_engine returns QdrantEngine for QDRANT type"""
with (
patch(
"vector_search_mcp.engine.qdrant_engine.Settings"
"searchbox.engine.qdrant_engine.Settings"
) as mock_settings_class,
patch(
"vector_search_mcp.engine.qdrant_engine.AsyncQdrantClient"
"searchbox.engine.qdrant_engine.AsyncQdrantClient"
) as mock_client_class,
):
# Setup mocks
@@ -59,8 +59,8 @@ class TestEngineFactory:
def test_get_engine_typing_literal_qdrant(self):
"""Test that get_engine with literal QDRANT returns correct type"""
with (
patch("vector_search_mcp.engine.qdrant_engine.Settings"),
patch("vector_search_mcp.engine.qdrant_engine.AsyncQdrantClient"),
patch("searchbox.engine.qdrant_engine.Settings"),
patch("searchbox.engine.qdrant_engine.AsyncQdrantClient"),
):
# When using literal Backend.QDRANT, mypy should know it's QdrantEngine
engine = get_engine(Backend.QDRANT)
@@ -73,8 +73,8 @@ class TestEngineFactory:
def test_get_engine_typing_variable(self):
"""Test that get_engine with variable returns BaseEngine type"""
with (
patch("vector_search_mcp.engine.qdrant_engine.Settings"),
patch("vector_search_mcp.engine.qdrant_engine.AsyncQdrantClient"),
patch("searchbox.engine.qdrant_engine.Settings"),
patch("searchbox.engine.qdrant_engine.AsyncQdrantClient"),
):
# When using a variable, mypy should see it as BaseEngine
engine_type: Backend = Backend.QDRANT
@@ -88,10 +88,10 @@ class TestEngineFactory:
"""Test that get_engine uses cache and returns same instances"""
with (
patch(
"vector_search_mcp.engine.qdrant_engine.Settings"
"searchbox.engine.qdrant_engine.Settings"
) as mock_settings_class,
patch(
"vector_search_mcp.engine.qdrant_engine.AsyncQdrantClient"
"searchbox.engine.qdrant_engine.AsyncQdrantClient"
) as mock_client_class,
):
# Setup mocks
@@ -135,10 +135,10 @@ class TestEngineFactory:
"""Test complete factory integration with engine functionality"""
with (
patch(
"vector_search_mcp.engine.qdrant_engine.Settings"
"searchbox.engine.qdrant_engine.Settings"
) as mock_settings_class,
patch(
"vector_search_mcp.engine.qdrant_engine.AsyncQdrantClient"
"searchbox.engine.qdrant_engine.AsyncQdrantClient"
) as mock_client_class,
):
# Setup mocks
@@ -262,8 +262,8 @@ class TestEngineFactoryErrorHandling:
def test_engine_initialization_failure(self):
"""Test handling of engine initialization failures"""
with (
patch("vector_search_mcp.engine.qdrant_engine.Settings") as mock_settings,
patch("vector_search_mcp.engine.qdrant_engine.AsyncQdrantClient"),
patch("searchbox.engine.qdrant_engine.Settings") as mock_settings,
patch("searchbox.engine.qdrant_engine.AsyncQdrantClient"),
):
# Make Settings initialization raise an exception
mock_settings.side_effect = Exception("Settings initialization failed")

View File

@@ -3,8 +3,8 @@ from unittest.mock import AsyncMock, MagicMock, patch
import pytest
from qdrant_client import models
from vector_search_mcp.engine import Backend, get_engine
from vector_search_mcp.models import Match, MatchAny, MatchExclude, SearchRow
from searchbox.engine import Backend, get_engine
from searchbox.models import Match, MatchAny, MatchExclude, SearchRow
class TestEngineIntegration:
@@ -15,10 +15,10 @@ class TestEngineIntegration:
"""Setup complete mocked engine environment"""
with (
patch(
"vector_search_mcp.engine.qdrant_engine.Settings"
"searchbox.engine.qdrant_engine.Settings"
) as mock_settings_class,
patch(
"vector_search_mcp.engine.qdrant_engine.AsyncQdrantClient"
"searchbox.engine.qdrant_engine.AsyncQdrantClient"
) as mock_client_class,
):
# Setup settings
@@ -347,8 +347,8 @@ class TestEngineIntegration:
def test_engine_type_consistency(self):
"""Test that engine types are consistent across multiple calls"""
with (
patch("vector_search_mcp.engine.qdrant_engine.Settings"),
patch("vector_search_mcp.engine.qdrant_engine.AsyncQdrantClient"),
patch("searchbox.engine.qdrant_engine.Settings"),
patch("searchbox.engine.qdrant_engine.AsyncQdrantClient"),
):
engines = [get_engine(Backend.QDRANT) for _ in range(5)]
@@ -356,6 +356,6 @@ class TestEngineIntegration:
assert all(engine is engines[0] for engine in engines)
# All should be QdrantEngine instances
from vector_search_mcp.engine.qdrant_engine import QdrantEngine
from searchbox.engine.qdrant_engine import QdrantEngine
assert all(isinstance(engine, QdrantEngine) for engine in engines)

View File

@@ -4,9 +4,9 @@ import pytest
from qdrant_client import models
from qdrant_client.models import ScoredPoint
from vector_search_mcp.engine.base_engine import BaseEngine
from vector_search_mcp.engine.qdrant_engine import QdrantEngine
from vector_search_mcp.models import Match, MatchAny, MatchExclude, SearchRow
from searchbox.engine.base_engine import BaseEngine
from searchbox.engine.qdrant_engine import QdrantEngine
from searchbox.models import Match, MatchAny, MatchExclude, SearchRow
class TestQdrantEngine:
@@ -30,10 +30,10 @@ class TestQdrantEngine:
"""Create a QdrantEngine instance with mocked dependencies"""
with (
patch(
"vector_search_mcp.engine.qdrant_engine.Settings"
"searchbox.engine.qdrant_engine.Settings"
) as mock_settings_class,
patch(
"vector_search_mcp.engine.qdrant_engine.AsyncQdrantClient"
"searchbox.engine.qdrant_engine.AsyncQdrantClient"
) as mock_client_class,
):
mock_settings_class.return_value = mock_settings
@@ -159,7 +159,7 @@ class TestQdrantEngine:
def test_transform_chunk(self, qdrant_engine):
"""Test transform_chunk method"""
from vector_search_mcp.models import Chunk, ChunkData
from searchbox.models import Chunk, ChunkData
chunk = Chunk(
id="test-chunk-1",
@@ -226,7 +226,7 @@ class TestQdrantEngine:
@pytest.mark.asyncio
async def test_upload_chunk_integration(self, qdrant_engine, mock_client):
"""Test the complete upload_chunk workflow"""
from vector_search_mcp.models import Chunk, ChunkData
from searchbox.models import Chunk, ChunkData
# Setup mock response
mock_response = MagicMock()
@@ -468,10 +468,10 @@ class TestQdrantEngine:
"""Test QdrantEngine initialization uses settings correctly"""
with (
patch(
"vector_search_mcp.engine.qdrant_engine.Settings"
"searchbox.engine.qdrant_engine.Settings"
) as mock_settings_class,
patch(
"vector_search_mcp.engine.qdrant_engine.AsyncQdrantClient"
"searchbox.engine.qdrant_engine.AsyncQdrantClient"
) as mock_client_class,
):
mock_settings_class.return_value = mock_settings