fix: make tests work with neo4j and fix get_graph_data in neo4j

This commit is contained in:
Boris Arzentar 2025-11-13 17:06:27 +01:00
parent 698d8323a9
commit 03934fdf11
No known key found for this signature in database
GPG key ID: D5CC274C784807B7
3 changed files with 22 additions and 3 deletions

View file

@ -955,7 +955,22 @@ class Neo4jAdapter(GraphDBInterface):
f"Retrieved {len(nodes)} nodes and {len(edges)} edges in {retrieval_time:.2f} seconds"
)
return (nodes, edges)
return (
[
(
node_id,
{
**node_data,
"id": node_id,
"metadata": json.loads(node_data["metadata"])
if "metadata" in node_data
else {},
},
)
for (node_id, node_data) in nodes
],
edges,
)
except Exception as e:
logger.error(f"Error during graph data retrieval: {str(e)}")

View file

@ -151,7 +151,9 @@ async def main(mock_create_structured_output: AsyncMock):
nodes, edges = await graph_engine.get_graph_data()
assert len(nodes) == 9 and len(edges) == 10, "Nodes and edges are not deleted."
assert not any(
node[1]["name"] == "john" or node[1]["name"] == "food for hungry" for node in nodes
node[1]["name"] == "john" or node[1]["name"] == "food for hungry"
for node in nodes
if "name" in node[1]
), "Nodes are not deleted."
after_first_delete_node_ids = set([node[0] for node in nodes])

View file

@ -73,7 +73,9 @@ async def main():
"Nodes and edges are not deleted."
)
assert not any(
node[1]["name"] == "john" or node[1]["name"] == "food for hungry" for node in nodes
node[1]["name"] == "john" or node[1]["name"] == "food for hungry"
for node in nodes
if "name" in node[1]
), "Nodes are not deleted."
after_first_delete_node_ids = set([node[0] for node in nodes])