Rewrite tests while keeping 97% cov

This commit is contained in:
2025-09-27 16:26:03 +00:00
parent cf7e3d8244
commit 51606fc959
23 changed files with 180 additions and 2968 deletions

View File

@@ -0,0 +1,55 @@
from uuid import uuid4
import pytest
from searchbox.client import Client
from searchbox.engine.qdrant_engine import QdrantEngine
from searchbox.models import Chunk
@pytest.fixture(scope="module")
def qdrant_client():
client = Client("qdrant", "test_index", url=":memory:")
return client
def test_create_qdrant_client(qdrant_client: Client):
assert isinstance(qdrant_client, Client)
assert isinstance(qdrant_client.engine, QdrantEngine)
async def test_create_qdrant_index(qdrant_client: Client):
result = await qdrant_client.create_index(3)
assert result is True
async def test_upload_chunk(qdrant_client: Client):
chunk = Chunk.model_validate(
{
"id": uuid4(),
"vector": [0.0, 0.1, 0.3],
"payload": {
"page_content": "This is a test page content.",
"filename": "test.txt",
"page": 1,
},
}
)
result = await qdrant_client.upload_chunk(chunk)
assert result is True
async def test_semantic_search(qdrant_client: Client):
result = await qdrant_client.semantic_search([0.0, 0.1, 0.3])
assert len(result) == 1
first_result = result[0]
assert first_result.chunk_id is not None
assert first_result.score > 0.9
assert first_result.payload == {
"page_content": "This is a test page content.",
"filename": "test.txt",
"page": 1,
}