Fix clippy findings and related issues
This commit is contained in:
@@ -262,7 +262,8 @@ where
|
||||
G::Vertex: Debug,
|
||||
{
|
||||
let (mut graph, vertices, _, _) = G::standard();
|
||||
graph.delete_vertex(vertices[2]);
|
||||
let del = vertices[2];
|
||||
graph.delete_vertex(del);
|
||||
assert_eq!(
|
||||
graph.vertex_count(),
|
||||
9,
|
||||
@@ -274,17 +275,12 @@ where
|
||||
"unexpected vertex iterator count after delete"
|
||||
);
|
||||
for v in graph.vertices() {
|
||||
assert_ne!(
|
||||
v, vertices[2],
|
||||
"deleted vertex {:?} appeared in iterator",
|
||||
vertices[2]
|
||||
);
|
||||
assert_ne!(v, del, "deleted vertex {del:?} appeared in iterator");
|
||||
}
|
||||
for i in [0, 1, 3, 4, 5, 6, 7, 8, 9] {
|
||||
for &v in vertices.iter().filter(|&&u| u != del) {
|
||||
assert!(
|
||||
graph.vertices().any(|v| v == vertices[i]),
|
||||
"expected vertex {:?} missing from iterator after delete",
|
||||
vertices[i]
|
||||
graph.vertices().any(|u| u == v),
|
||||
"expected vertex {v:?} missing from iterator after delete"
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -295,9 +291,9 @@ where
|
||||
G::Edge: Debug,
|
||||
{
|
||||
let (mut graph, _, edges, _) = G::standard();
|
||||
let e = edges[2].0;
|
||||
graph.delete_edge(e);
|
||||
for &(f, v0, v1) in edges.iter().filter(|&&(f, _, _)| f != e) {
|
||||
let del = edges[2].0;
|
||||
graph.delete_edge(del);
|
||||
for &(f, v0, v1) in edges.iter().filter(|&&(f, _, _)| f != del) {
|
||||
let (u0, u1) = graph.incident_vertices(f);
|
||||
assert!(
|
||||
(u0 == v0 && u1 == v1) || (u0 == v1 && u1 == v0),
|
||||
@@ -340,13 +336,15 @@ where
|
||||
G::Edge: Debug,
|
||||
{
|
||||
let (mut graph, vertices, edges, incidences) = G::standard();
|
||||
graph.delete_edge(edges[2].0);
|
||||
for i in 0..10 {
|
||||
let mut expected: Vec<_> = incidences[i]
|
||||
let del = edges[2].0;
|
||||
graph.delete_edge(del);
|
||||
assert_eq!(vertices.len(), incidences.len());
|
||||
for (&v, incs) in vertices.iter().zip(&incidences) {
|
||||
let mut expected = incs
|
||||
.iter()
|
||||
.filter_map(|x| (x.edge != edges[2].0).then_some(x.edge))
|
||||
.filter_map(|x| (x.edge != del).then_some(x.edge))
|
||||
.collect();
|
||||
assert_incident_edges_after_delete(&graph, vertices[i], &mut expected);
|
||||
assert_incident_edges_after_delete(&graph, v, &mut expected);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -356,13 +354,14 @@ where
|
||||
G::Edge: Debug,
|
||||
{
|
||||
let (mut graph, vertices, _, incidences) = G::standard();
|
||||
graph.delete_vertex(vertices[2]);
|
||||
for i in [0, 1, 3, 4, 5, 6, 7, 8, 9] {
|
||||
let mut expected: Vec<_> = incidences[i]
|
||||
let del = vertices[2];
|
||||
graph.delete_vertex(del);
|
||||
for (&v, incs) in vertices.iter().zip(&incidences).filter(|&(&u, _)| u != del) {
|
||||
let mut expected = incs
|
||||
.iter()
|
||||
.filter_map(|x| (x.vertex != vertices[2]).then_some(x.edge))
|
||||
.filter_map(|x| (x.vertex != del).then_some(x.edge))
|
||||
.collect();
|
||||
assert_incident_edges_after_delete(&graph, vertices[i], &mut expected);
|
||||
assert_incident_edges_after_delete(&graph, v, &mut expected);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -372,14 +371,11 @@ where
|
||||
G::Edge: Debug,
|
||||
{
|
||||
let (mut graph, vertices, _, incidences) = G::standard();
|
||||
graph.delete_vertex(vertices[2]);
|
||||
for i in [0, 1, 3, 4, 5, 6, 7, 8, 9] {
|
||||
let remaining = incidences[i]
|
||||
.iter()
|
||||
.filter(|x| x.vertex != vertices[2])
|
||||
.cloned()
|
||||
.collect();
|
||||
assert_vertex_incidences(&graph, vertices[i], remaining);
|
||||
let del = vertices[2];
|
||||
graph.delete_vertex(del);
|
||||
for (&v, incs) in vertices.iter().zip(&incidences).filter(|&(&u, _)| u != del) {
|
||||
let remaining = incs.iter().filter(|x| x.vertex != del).cloned().collect();
|
||||
assert_vertex_incidences(&graph, v, remaining);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -389,14 +385,12 @@ where
|
||||
G::Edge: Debug,
|
||||
{
|
||||
let (mut graph, vertices, edges, incidences) = G::standard();
|
||||
graph.delete_edge(edges[2].0);
|
||||
for i in 0..10 {
|
||||
let remaining = incidences[i]
|
||||
.iter()
|
||||
.filter(|x| x.edge != edges[2].0)
|
||||
.cloned()
|
||||
.collect();
|
||||
assert_vertex_incidences(&graph, vertices[i], remaining);
|
||||
let del = edges[2].0;
|
||||
graph.delete_edge(del);
|
||||
assert_eq!(vertices.len(), incidences.len());
|
||||
for (&v, incs) in vertices.iter().zip(&incidences) {
|
||||
let remaining = incs.iter().filter(|x| x.edge != del).cloned().collect();
|
||||
assert_vertex_incidences(&graph, v, remaining);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -406,14 +400,11 @@ where
|
||||
G::Edge: Debug,
|
||||
{
|
||||
let (mut graph, vertices, _, incidences) = G::standard();
|
||||
graph.delete_vertex(vertices[2]);
|
||||
for i in [0, 1, 3, 4, 5, 6, 7, 8, 9] {
|
||||
let remaining = incidences[i]
|
||||
.iter()
|
||||
.filter(|x| x.vertex != vertices[2])
|
||||
.cloned()
|
||||
.collect();
|
||||
assert_vertex_incidence_cursor(&graph, vertices[i], remaining);
|
||||
let del = vertices[2];
|
||||
graph.delete_vertex(del);
|
||||
for (&v, incs) in vertices.iter().zip(&incidences).filter(|&(&u, _)| u != del) {
|
||||
let remaining = incs.iter().filter(|x| x.vertex != del).cloned().collect();
|
||||
assert_vertex_incidence_cursor(&graph, v, remaining);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -423,14 +414,12 @@ where
|
||||
G::Edge: Debug,
|
||||
{
|
||||
let (mut graph, vertices, edges, incidences) = G::standard();
|
||||
graph.delete_edge(edges[2].0);
|
||||
for i in 0..10 {
|
||||
let remaining = incidences[i]
|
||||
.iter()
|
||||
.filter(|x| x.edge != edges[2].0)
|
||||
.cloned()
|
||||
.collect();
|
||||
assert_vertex_incidence_cursor(&graph, vertices[i], remaining);
|
||||
let del = edges[2].0;
|
||||
graph.delete_edge(del);
|
||||
assert_eq!(vertices.len(), incidences.len());
|
||||
for (&v, incs) in vertices.iter().zip(&incidences) {
|
||||
let remaining = incs.iter().filter(|x| x.edge != del).cloned().collect();
|
||||
assert_vertex_incidence_cursor(&graph, v, remaining);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -445,26 +434,22 @@ fn assert_vertex_incidences<G: GraphTopology>(
|
||||
assert_eq!(
|
||||
graph.incidences(v).count(),
|
||||
expected.len(),
|
||||
"unexpected incidence count for vertex {:?} after delete",
|
||||
v
|
||||
"unexpected incidence count for vertex {v:?} after delete"
|
||||
);
|
||||
for incidence in graph.incidences(v) {
|
||||
let pos = expected
|
||||
.iter()
|
||||
.position(|x| *x == incidence)
|
||||
.position(|&x| x == incidence)
|
||||
.unwrap_or_else(|| {
|
||||
panic!(
|
||||
"unexpected incidence {incidence:?} of vertex {:?} from iterator after delete",
|
||||
v
|
||||
"unexpected incidence {incidence:?} of vertex {v:?} from iterator after delete"
|
||||
)
|
||||
});
|
||||
expected.swap_remove(pos);
|
||||
}
|
||||
assert!(
|
||||
expected.is_empty(),
|
||||
"expected incidences {:?} of vertex {:?} not matched by iterator after delete",
|
||||
expected,
|
||||
v
|
||||
"expected incidences {expected:?} of vertex {v:?} not matched by iterator after delete"
|
||||
);
|
||||
}
|
||||
|
||||
@@ -480,20 +465,17 @@ fn assert_vertex_incidence_cursor<G: GraphTopology>(
|
||||
while let Some(incidence) = cursor.next(graph) {
|
||||
let pos = expected
|
||||
.iter()
|
||||
.position(|x| *x == incidence)
|
||||
.position(|&x| x == incidence)
|
||||
.unwrap_or_else(|| {
|
||||
panic!(
|
||||
"unexpected incidence {incidence:?} of vertex {:?} from cursor after delete",
|
||||
v
|
||||
"unexpected incidence {incidence:?} of vertex {v:?} from cursor after delete"
|
||||
)
|
||||
});
|
||||
expected.swap_remove(pos);
|
||||
}
|
||||
assert!(
|
||||
expected.is_empty(),
|
||||
"expected incidences {:?} of vertex {:?} not matched by cursor after delete",
|
||||
expected,
|
||||
v
|
||||
"expected incidences {expected:?} of vertex {v:?} not matched by cursor after delete"
|
||||
);
|
||||
}
|
||||
|
||||
@@ -508,22 +490,16 @@ fn assert_incident_edges_after_delete<G: GraphTopology>(
|
||||
assert_eq!(
|
||||
graph.incident_edges(v).count(),
|
||||
expected.len(),
|
||||
"unexpected incident edge count for vertex {:?} after delete",
|
||||
v
|
||||
"unexpected incident edge count for vertex {v:?} after delete"
|
||||
);
|
||||
for e in graph.incident_edges(v) {
|
||||
let pos = expected.iter().position(|f| *f == e).unwrap_or_else(|| {
|
||||
panic!(
|
||||
"unexpected incident edge {e:?} of vertex {:?} after delete",
|
||||
v
|
||||
)
|
||||
let pos = expected.iter().position(|&f| f == e).unwrap_or_else(|| {
|
||||
panic!("unexpected incident edge {e:?} of vertex {v:?} after delete")
|
||||
});
|
||||
expected.swap_remove(pos);
|
||||
}
|
||||
assert!(
|
||||
expected.is_empty(),
|
||||
"expected incident edges {:?} of vertex {:?} not matched after delete",
|
||||
expected,
|
||||
v
|
||||
"expected incident edges {expected:?} of vertex {v:?} not matched after delete"
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user