Spaces:
Runtime error
Runtime error
| """Test in memory docstore.""" | |
| import pytest | |
| from langchain.docstore.document import Document | |
| from langchain.docstore.in_memory import InMemoryDocstore | |
| def test_document_found() -> None: | |
| """Test document found.""" | |
| _dict = {"foo": Document(page_content="bar")} | |
| docstore = InMemoryDocstore(_dict) | |
| output = docstore.search("foo") | |
| assert isinstance(output, Document) | |
| assert output.page_content == "bar" | |
| def test_document_not_found() -> None: | |
| """Test when document is not found.""" | |
| _dict = {"foo": Document(page_content="bar")} | |
| docstore = InMemoryDocstore(_dict) | |
| output = docstore.search("bar") | |
| assert output == "ID bar not found." | |
| def test_adding_document() -> None: | |
| """Test that documents are added correctly.""" | |
| _dict = {"foo": Document(page_content="bar")} | |
| docstore = InMemoryDocstore(_dict) | |
| new_dict = {"bar": Document(page_content="foo")} | |
| docstore.add(new_dict) | |
| # Test that you can find new document. | |
| foo_output = docstore.search("bar") | |
| assert isinstance(foo_output, Document) | |
| assert foo_output.page_content == "foo" | |
| # Test that old document is the same. | |
| bar_output = docstore.search("foo") | |
| assert isinstance(bar_output, Document) | |
| assert bar_output.page_content == "bar" | |
| def test_adding_document_already_exists() -> None: | |
| """Test that error is raised if document id already exists.""" | |
| _dict = {"foo": Document(page_content="bar")} | |
| docstore = InMemoryDocstore(_dict) | |
| new_dict = {"foo": Document(page_content="foo")} | |
| # Test that error is raised. | |
| with pytest.raises(ValueError): | |
| docstore.add(new_dict) | |
| # Test that old document is the same. | |
| bar_output = docstore.search("foo") | |
| assert isinstance(bar_output, Document) | |
| assert bar_output.page_content == "bar" | |