diff --git a/tests/test_graph.py b/tests/test_graph.py index 8d442ce76..1a24e0e4b 100644 --- a/tests/test_graph.py +++ b/tests/test_graph.py @@ -419,6 +419,22 @@ def test_process_flow_vector_store_grouped(vector_store_grouped_json_flow): assert isinstance(processed_flow, dict) assert "nodes" in processed_flow assert "edges" in processed_flow + edges = processed_flow["edges"] + # Expected keywords in source and target fields + expected_keywords = [ + {"source": "VectorStoreInfo", "target": "VectorStoreAgent"}, + {"source": "ChatOpenAI", "target": "VectorStoreAgent"}, + {"source": "OpenAIEmbeddings", "target": "Chroma"}, + {"source": "Chroma", "target": "VectorStoreInfo"}, + {"source": "WebBaseLoader", "target": "RecursiveCharacterTextSplitter"}, + {"source": "RecursiveCharacterTextSplitter", "target": "Chroma"}, + ] + + for idx, expected_keyword in enumerate(expected_keywords): + for key, value in expected_keyword.items(): + assert ( + value in edges[idx][key].split("-")[0] + ), f"Edge {idx}, key {key} expected to contain {value} but got {edges[idx][key]}" def test_update_template(sample_template, sample_nodes):