Add tests for GraphTopology::vertex_map and edge_map
This commit is contained in:
@@ -128,6 +128,19 @@ macro_rules! graph_topology_tests {
|
||||
assert_eq!(graph.vertex_count(), 10, "unexpected vertex count");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn vertex_map() {
|
||||
use $crate::traits::GraphTopology;
|
||||
let mut graph = <$T>::new();
|
||||
let v1 = graph.add_vertex();
|
||||
let mut map = graph.vertex_map(27);
|
||||
assert_eq!(map[v1], 27, "unexpected value from default map read");
|
||||
map[v1] = 9;
|
||||
assert_eq!(map[v1], 9, "unexpected value from map after write");
|
||||
let v2 = graph.add_vertex();
|
||||
assert_eq!(map[v2], 27, "unexpected value from default map read for new vertex");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn add_edge() {
|
||||
use $crate::traits::GraphTopology;
|
||||
@@ -152,6 +165,21 @@ macro_rules! graph_topology_tests {
|
||||
assert_eq!(graph.edge_count(), 18, "unexpected edge count");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn edge_map() {
|
||||
use $crate::traits::GraphTopology;
|
||||
let mut graph = <$T>::new();
|
||||
let v1 = graph.add_vertex();
|
||||
let v2 = graph.add_vertex();
|
||||
let e1 = graph.add_edge(v1, v2);
|
||||
let mut map = graph.edge_map(27);
|
||||
assert_eq!(map[e1], 27, "unexpected value from default map read");
|
||||
map[e1] = 9;
|
||||
assert_eq!(map[e1], 9, "unexpected value from map after write");
|
||||
let e2 = graph.add_edge(v1, v2);
|
||||
assert_eq!(map[e2], 27, "unexpected value from default map read for new vertex");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn degree_zero() {
|
||||
use $crate::traits::GraphTopology;
|
||||
|
||||
Reference in New Issue
Block a user