update test_oceanbase.py

pull/20945/head
Bowen Liang 11 months ago
parent 4c16566945
commit c8379b5d2f

@ -1,12 +1,9 @@
from unittest.mock import MagicMock, patch
import pytest import pytest
from core.rag.datasource.vdb.oceanbase.oceanbase_vector import ( from core.rag.datasource.vdb.oceanbase.oceanbase_vector import (
OceanBaseVector, OceanBaseVector,
OceanBaseVectorConfig, OceanBaseVectorConfig,
) )
from tests.integration_tests.vdb.__mock.tcvectordb import setup_tcvectordb_mock
from tests.integration_tests.vdb.test_vector_store import ( from tests.integration_tests.vdb.test_vector_store import (
AbstractVectorTest, AbstractVectorTest,
get_example_text, get_example_text,
@ -20,10 +17,10 @@ def oceanbase_vector():
"dify_test_collection", "dify_test_collection",
config=OceanBaseVectorConfig( config=OceanBaseVectorConfig(
host="127.0.0.1", host="127.0.0.1",
port="2881", port=2881,
user="root@test", user="root",
database="test", database="test",
password="test", password="difyai123456",
), ),
) )
@ -33,39 +30,21 @@ class OceanBaseVectorTest(AbstractVectorTest):
super().__init__() super().__init__()
self.vector = vector self.vector = vector
def search_by_vector(self): # def search_by_vector(self):
hits_by_vector = self.vector.search_by_vector(query_vector=self.example_embedding) # hits_by_vector = self.vector.search_by_vector(query_vector=self.example_embedding)
assert len(hits_by_vector) == 0 # assert len(hits_by_vector) == 1
def search_by_full_text(self): def search_by_full_text(self):
hits_by_full_text = self.vector.search_by_full_text(query=get_example_text()) hits_by_full_text = self.vector.search_by_full_text(query=get_example_text())
assert len(hits_by_full_text) == 0 assert len(hits_by_full_text) == 0
def text_exists(self):
exist = self.vector.text_exists(self.example_doc_id)
assert exist == True
def get_ids_by_metadata_field(self): def get_ids_by_metadata_field(self):
ids = self.vector.get_ids_by_metadata_field(key="document_id", value=self.example_doc_id) ids = self.vector.get_ids_by_metadata_field(key="document_id", value=self.example_doc_id)
assert len(ids) == 0 assert len(ids) == 1
@pytest.fixture
def setup_mock_oceanbase_client():
with patch("core.rag.datasource.vdb.oceanbase.oceanbase_vector.ObVecClient", new_callable=MagicMock) as mock_client:
yield mock_client
@pytest.fixture
def setup_mock_oceanbase_vector(oceanbase_vector):
with patch.object(oceanbase_vector, "_client"):
yield oceanbase_vector
def test_oceanbase_vector( def test_oceanbase_vector(
setup_mock_redis, setup_mock_redis,
setup_mock_oceanbase_client,
setup_mock_oceanbase_vector,
oceanbase_vector, oceanbase_vector,
): ):
OceanBaseVectorTest(oceanbase_vector).run_all_tests() OceanBaseVectorTest(oceanbase_vector).run_all_tests()

Loading…
Cancel
Save