Add test for GraphTopology::vertices() after delete

This commit is contained in:
2026-05-05 22:52:07 +02:00
parent 18245b9955
commit c589095737
+30
View File
@@ -553,5 +553,35 @@ macro_rules! graph_topology_deletion_tests {
let result = std::panic::catch_unwind(move || graph.delete_edge(e)); let result = std::panic::catch_unwind(move || graph.delete_edge(e));
assert!(result.is_err(), "second deletion should panic"); assert!(result.is_err(), "second deletion should panic");
} }
#[test]
fn vertices_after_delete() {
let (mut graph, vertices) = make_test_graph();
graph.delete_vertex(vertices[2]);
assert_eq!(
graph.vertex_count(),
9,
"unexpected vertex count after delete"
);
assert_eq!(
graph.vertices().count(),
9,
"unexpected vertex iterator count after delete"
);
for v in graph.vertices() {
assert_ne!(
v, vertices[2],
"deleted vertex {:?} appeared in iterator",
vertices[2]
);
}
for i in [0, 1, 3, 4, 5, 6, 7, 8, 9] {
assert!(
graph.vertices().any(|v| v == vertices[i]),
"expected vertex {:?} missing from iterator after delete",
vertices[i]
);
}
}
}; };
} }