Refactor ElementMap, removing its copy-on-write feature
This commit is contained in:
@@ -72,12 +72,22 @@ pub fn vertex_count<G: MakeTestGraph>() {
|
||||
assert_eq!(graph.vertex_count(), 10, "unexpected vertex count");
|
||||
}
|
||||
|
||||
pub fn vertex_map<G: MakeTestGraph>() {
|
||||
let (graph, v) = G::single_vertex();
|
||||
let mut map = graph.vertex_map(27);
|
||||
assert_eq!(map[v], 27, "unexpected value from default map read");
|
||||
map[v] = 9;
|
||||
assert_eq!(map[v], 9, "unexpected value from map after write");
|
||||
pub fn vertex_map<G: MakeTestGraph>()
|
||||
where
|
||||
G::Vertex: Debug,
|
||||
{
|
||||
let (graph, vertices, _, _) = G::standard();
|
||||
let mut map = graph.vertex_map(88);
|
||||
for (i, &v) in vertices.iter().enumerate() {
|
||||
assert_eq!(
|
||||
map[v], 88,
|
||||
"unexpected value from default map read for vertex {v:?}"
|
||||
);
|
||||
map[v] = i;
|
||||
}
|
||||
for (i, &v) in vertices.iter().enumerate() {
|
||||
assert_eq!(map[v], i, "unexpected value after write for vertex {v:?}");
|
||||
}
|
||||
}
|
||||
|
||||
pub fn edge_count_empty<G: MakeTestGraph>() {
|
||||
@@ -90,12 +100,22 @@ pub fn edge_count<G: MakeTestGraph>() {
|
||||
assert_eq!(graph.edge_count(), 18, "unexpected edge count");
|
||||
}
|
||||
|
||||
pub fn edge_map<G: MakeTestGraph>() {
|
||||
let (graph, _, e) = G::single_edge();
|
||||
let mut map = graph.edge_map(28);
|
||||
assert_eq!(map[e], 28, "unexpected value from default map read");
|
||||
map[e] = 8;
|
||||
assert_eq!(map[e], 8, "unexpected value from map after write");
|
||||
pub fn edge_map<G: MakeTestGraph>()
|
||||
where
|
||||
G::Edge: Debug,
|
||||
{
|
||||
let (graph, _, edges, _) = G::standard();
|
||||
let mut map = graph.edge_map(99);
|
||||
for (i, &(e, _, _)) in edges.iter().enumerate() {
|
||||
assert_eq!(
|
||||
map[e], 99,
|
||||
"unexpected value from default map read for edge {e:?}"
|
||||
);
|
||||
map[e] = i;
|
||||
}
|
||||
for (i, &(e, _, _)) in edges.iter().enumerate() {
|
||||
assert_eq!(map[e], i, "unexpected value after write for edge {e:?}");
|
||||
}
|
||||
}
|
||||
|
||||
pub fn degree_zero<G: MakeTestGraph>() {
|
||||
|
||||
Reference in New Issue
Block a user