mirror of
https://github.com/hwchase17/langchain.git
synced 2025-09-08 14:31:55 +00:00
community[patch]: Add neo4j timeout and value sanitization option (#16138)
The timeout function comes in handy when you want to kill longrunning queries. The value sanitization removes all lists that are larger than 128 elements. The idea here is to remove embedding properties from results.
This commit is contained in:
32
libs/community/tests/unit_tests/graphs/test_neo4j_graph.py
Normal file
32
libs/community/tests/unit_tests/graphs/test_neo4j_graph.py
Normal file
@@ -0,0 +1,32 @@
|
||||
from langchain_community.graphs.neo4j_graph import value_sanitize
|
||||
|
||||
|
||||
def test_value_sanitize_with_small_list():
|
||||
small_list = list(range(15)) # list size > LIST_LIMIT
|
||||
input_dict = {"key1": "value1", "small_list": small_list}
|
||||
expected_output = {"key1": "value1", "small_list": small_list}
|
||||
assert value_sanitize(input_dict) == expected_output
|
||||
|
||||
|
||||
def test_value_sanitize_with_oversized_list():
|
||||
oversized_list = list(range(150)) # list size > LIST_LIMIT
|
||||
input_dict = {"key1": "value1", "oversized_list": oversized_list}
|
||||
expected_output = {
|
||||
"key1": "value1"
|
||||
# oversized_list should not be included
|
||||
}
|
||||
assert value_sanitize(input_dict) == expected_output
|
||||
|
||||
|
||||
def test_value_sanitize_with_nested_oversized_list():
|
||||
oversized_list = list(range(150)) # list size > LIST_LIMIT
|
||||
input_dict = {"key1": "value1", "oversized_list": {"key": oversized_list}}
|
||||
expected_output = {"key1": "value1", "oversized_list": {}}
|
||||
assert value_sanitize(input_dict) == expected_output
|
||||
|
||||
|
||||
def test_value_sanitize_with_dict_in_list():
|
||||
oversized_list = list(range(150)) # list size > LIST_LIMIT
|
||||
input_dict = {"key1": "value1", "oversized_list": [1, 2, {"key": oversized_list}]}
|
||||
expected_output = {"key1": "value1", "oversized_list": [1, 2, {}]}
|
||||
assert value_sanitize(input_dict) == expected_output
|
Reference in New Issue
Block a user