# tests/test_services.py
"""Tests for service layers."""
import pytest

from app.services.embeddings_service import EmbeddingsService
from app.services.query_service import QueryService


def test_embeddings_service_loads_model() -> None:
    """Test that embeddings service can load model."""
    service = EmbeddingsService(model_name="all-MiniLM-L6-v2")
    embeddings = service.get()
    assert embeddings is not None
    # Test embedding a single text
    result = embeddings.embed_query("test query")
    assert isinstance(result, list)
    assert len(result) > 0


def test_query_service_requires_vectorstore() -> None:
    """Test that query service requires vectorstore."""
    service = QueryService(vectorstore=None)
    with pytest.raises(ValueError, match="Vector store not initialized"):
        service.search("test query")
