Refactor tests: use MakeTestGraph in model-specific tests, deconstruct vertex arrays where useful, adjust local variable names

This commit is contained in:
2026-09-04 09:28:00 +02:00
parent 016d127bd1
commit 4c6a8a43e4
11 changed files with 153 additions and 195 deletions
+18 -26
View File
@@ -136,7 +136,7 @@ where
}
pub fn delete_edge<G: GraphTopologyDeletion + GraphTopologyAddition>() {
let (mut graph, vertices, e) = G::single_edge();
let (mut graph, [v0, v1], e) = G::single_edge();
assert_eq!(
graph.vertex_count(),
2,
@@ -144,16 +144,16 @@ pub fn delete_edge<G: GraphTopologyDeletion + GraphTopologyAddition>() {
);
assert_eq!(graph.edge_count(), 1, "unexpected edge count before delete");
assert!(
graph.are_adjacent(vertices[0], vertices[1]),
graph.are_adjacent(v0, v1),
"expected vertices to be adjacent before delete"
);
assert_eq!(
graph.degree(vertices[0]),
graph.degree(v0),
1,
"unexpected vertex degree before delete"
);
assert_eq!(
graph.degree(vertices[1]),
graph.degree(v1),
1,
"unexpected vertex degree before delete"
);
@@ -165,19 +165,11 @@ pub fn delete_edge<G: GraphTopologyDeletion + GraphTopologyAddition>() {
);
assert_eq!(graph.edge_count(), 0, "unexpected edge count after delete");
assert!(
!graph.are_adjacent(vertices[0], vertices[1]),
!graph.are_adjacent(v0, v1),
"unexpected adjacency after delete"
);
assert_eq!(
graph.degree(vertices[0]),
0,
"unexpected vertex degree after delete"
);
assert_eq!(
graph.degree(vertices[1]),
0,
"unexpected vertex degree after delete"
);
assert_eq!(graph.degree(v0), 0, "unexpected vertex degree after delete");
assert_eq!(graph.degree(v1), 0, "unexpected vertex degree after delete");
}
pub fn delete_edge_loop<G: GraphTopologyDeletion + GraphTopologyAddition>() {
@@ -209,7 +201,7 @@ pub fn delete_edge_loop<G: GraphTopologyDeletion + GraphTopologyAddition>() {
pub fn delete_edge_multiple<G: GraphTopologyDeletion + GraphTopologyAddition>() {
const K: usize = 2;
let (mut graph, vertices, edges) = G::multiple_edges::<K>();
let (mut graph, [v0, v1], edges) = G::multiple_edges::<K>();
assert_eq!(
graph.vertex_count(),
2,
@@ -217,16 +209,16 @@ pub fn delete_edge_multiple<G: GraphTopologyDeletion + GraphTopologyAddition>()
);
assert_eq!(graph.edge_count(), K, "unexpected edge count before delete");
assert!(
graph.are_adjacent(vertices[0], vertices[1]),
graph.are_adjacent(v0, v1),
"expected vertices to be adjacent before delete"
);
assert_eq!(
graph.degree(vertices[0]),
graph.degree(v0),
K,
"unexpected vertex degree before delete"
);
assert_eq!(
graph.degree(vertices[1]),
graph.degree(v1),
K,
"unexpected vertex degree before delete"
);
@@ -242,16 +234,16 @@ pub fn delete_edge_multiple<G: GraphTopologyDeletion + GraphTopologyAddition>()
"unexpected edge count after delete"
);
assert!(
graph.are_adjacent(vertices[0], vertices[1]),
graph.are_adjacent(v0, v1),
"expected vertices to be adjacent after delete"
);
assert_eq!(
graph.degree(vertices[0]),
graph.degree(v0),
K - 1,
"unexpected vertex degree after delete"
);
assert_eq!(
graph.degree(vertices[1]),
graph.degree(v1),
K - 1,
"unexpected vertex degree after delete"
);
@@ -305,11 +297,11 @@ where
let (mut graph, _, edges, _) = G::standard();
let e = edges[2].0;
graph.delete_edge(e);
for &(f, v1, v2) in edges.iter().filter(|&&(f, _, _)| f != e) {
let (u1, u2) = graph.incident_vertices(f);
for &(f, v0, v1) in edges.iter().filter(|&&(f, _, _)| f != e) {
let (u0, u1) = graph.incident_vertices(f);
assert!(
(u1 == v1 && u2 == v2) || (u1 == v2 && u2 == v1),
"unexpected incident vertices {u1:?} and {u2:?} for edge {f:?} after delete"
(u0 == v0 && u1 == v1) || (u0 == v1 && u1 == v0),
"unexpected incident vertices {u0:?} and {u1:?} for edge {f:?} after delete"
);
}
}