Skip to main content
Glama
test_cypher.py2.29 kB
""" Test script to verify Cypher query execution """ import sys import os sys.path.insert(0, os.path.join(os.path.dirname(__file__), 'src')) from src.db_utils import get_neo4j_driver import json def test_cypher_query(query): """Test function that mimics run_cypher_query""" driver = get_neo4j_driver() try: with driver.session() as session: result = session.run(query) # Convert Neo4j records to standard dicts for JSON serialization records = [dict(record) for record in result] return records except Exception as e: return [{"error": f"Error executing Cypher: {str(e)}"}] finally: driver.close() print("=" * 60) print("Testing Cypher Query Execution") print("=" * 60) # Test 1: Get all Alpha Team members print("\n1. Testing: Get ALL Alpha Team members") query1 = "MATCH (e:Employee)-[:WORKS_IN]->(t:Team {name: 'Alpha Team'}) RETURN e.name AS name, e.email AS email" result1 = test_cypher_query(query1) print(f"Query: {query1}") print(f"Result type: {type(result1)}") print(f"Number of results: {len(result1)}") print(f"Results:") for i, record in enumerate(result1, 1): print(f" {i}. {record}") # Test 2: Get team lead print("\n2. Testing: Get Delta Force team lead") query2 = "MATCH (e:Employee)-[:LEADS]->(t:Team {name: 'Delta Force'}) RETURN e.name AS name, e.email AS email" result2 = test_cypher_query(query2) print(f"Query: {query2}") print(f"Number of results: {len(result2)}") print(f"Results: {result2}") # Test 3: Test with LIMIT (to verify the issue) print("\n3. Testing: Query with LIMIT 1 (should return only 1 result)") query3 = "MATCH (e:Employee)-[:WORKS_IN]->(t:Team {name: 'Alpha Team'}) RETURN e.name AS name, e.email AS email LIMIT 1" result3 = test_cypher_query(query3) print(f"Query: {query3}") print(f"Number of results: {len(result3)}") print(f"Results: {result3}") # Test 4: Get all teams print("\n4. Testing: Get ALL teams") query4 = "MATCH (t:Team) RETURN t.name AS team_name, t.team_size AS size" result4 = test_cypher_query(query4) print(f"Query: {query4}") print(f"Number of results: {len(result4)}") print(f"Results:") for i, record in enumerate(result4, 1): print(f" {i}. {record}") print("\n" + "=" * 60) print("Test completed!") print("=" * 60)

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/SUSHRUTH3002/MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server