File size: 873 Bytes
732b14f
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
"""Phase-1 factory and config wiring stubs."""

from __future__ import annotations

from unittest.mock import MagicMock, patch

import pytest

from app.vectorstore import factory as vs_factory


def test_vectorstore_factory_defaults_to_faiss(monkeypatch: pytest.MonkeyPatch) -> None:
    vs_factory.reset_vectorstore()
    monkeypatch.setenv("VECTORSTORE_BACKEND", "faiss")
    from app.config import settings

    monkeypatch.setattr(settings, "vectorstore_backend", "faiss", raising=False)
    with patch("app.vectorstore.faiss_wrapper.FAISSVectorStore") as mock_cls:
        mock_cls.return_value = MagicMock()
        with patch("app.embeddings.factory.get_embedding_client", return_value=MagicMock()):
            vs = vs_factory.get_vectorstore()
    assert vs is not None
    assert vs_factory.VECTORSTORE_BACKEND_LABEL == "faiss"
    vs_factory.reset_vectorstore()