use codegraph::{CodeGraph, EdgeType, NodeType, PropertyMap};
#[test]
fn test_memory_backend_in_memory_only() {
let mut graph = CodeGraph::in_memory().unwrap();
let node1 = graph
.add_node(NodeType::Function, PropertyMap::new().with("name", "func1"))
.unwrap();
let node2 = graph
.add_node(NodeType::Function, PropertyMap::new().with("name", "func2"))
.unwrap();
graph
.add_edge(node1, node2, EdgeType::Calls, PropertyMap::new())
.unwrap();
assert_eq!(graph.node_count(), 2);
assert_eq!(graph.edge_count(), 1);
graph.flush().unwrap();
}
#[test]
fn test_memory_backend_clear() {
let mut graph = CodeGraph::in_memory().unwrap();
let node1 = graph
.add_node(NodeType::Function, PropertyMap::new())
.unwrap();
let node2 = graph
.add_node(NodeType::Function, PropertyMap::new())
.unwrap();
graph
.add_edge(node1, node2, EdgeType::Calls, PropertyMap::new())
.unwrap();
assert_eq!(graph.node_count(), 2);
assert_eq!(graph.edge_count(), 1);
graph.clear().unwrap();
assert_eq!(graph.node_count(), 0);
assert_eq!(graph.edge_count(), 0);
}