[bug]: Memory.reset() deletes collection and table without re-creating it (#1952)

This commit is contained in:
Mayank
2024-10-15 16:46:50 +05:30
committed by GitHub
parent 9341d9f597
commit 3f2d5bee34
3 changed files with 16 additions and 5 deletions

View File

@@ -5,6 +5,7 @@ import pytest
from mem0.configs.base import MemoryConfig
from mem0.memory.main import Memory
from mem0.utils.factory import VectorStoreFactory
@pytest.fixture(autouse=True)
@@ -171,13 +172,19 @@ def test_delete_all(memory_instance, version, enable_graph):
def test_reset(memory_instance):
memory_instance.vector_store.delete_col = Mock()
# persisting vector store to make sure previous collection is deleted
initial_vector_store = memory_instance.vector_store
memory_instance.db.reset = Mock()
memory_instance.reset()
memory_instance.vector_store.delete_col.assert_called_once()
memory_instance.db.reset.assert_called_once()
with patch.object(VectorStoreFactory, "create", return_value=Mock()) as mock_create:
memory_instance.reset()
initial_vector_store.delete_col.assert_called_once()
memory_instance.db.reset.assert_called_once()
mock_create.assert_called_once_with(
memory_instance.config.vector_store.provider, memory_instance.config.vector_store.config
)
@pytest.mark.parametrize(
"version, enable_graph, expected_result",