diff --git a/src/models/append_graph.rs b/src/models/append_graph.rs index 9526f95..4468980 100644 --- a/src/models/append_graph.rs +++ b/src/models/append_graph.rs @@ -241,6 +241,7 @@ mod tests { crate::graph_topology_test_fixtures!(AppendGraph); crate::graph_topology_tests!(AppendGraph); + crate::graph_topology_addition_tests!(AppendGraph); #[test] fn incident_vertices_paired_index() { diff --git a/src/models/graph.rs b/src/models/graph.rs index 702d244..4ccef26 100644 --- a/src/models/graph.rs +++ b/src/models/graph.rs @@ -383,6 +383,7 @@ mod tests { crate::graph_topology_test_fixtures!(Graph); crate::graph_topology_tests!(Graph); + crate::graph_topology_addition_tests!(Graph); crate::graph_topology_deletion_tests!(Graph); #[test] diff --git a/src/testing/graph_topology_testing.rs b/src/testing/graph_topology_testing.rs index 47d6569..07e9793 100644 --- a/src/testing/graph_topology_testing.rs +++ b/src/testing/graph_topology_testing.rs @@ -110,14 +110,6 @@ macro_rules! graph_topology_test_fixtures { #[macro_export] macro_rules! graph_topology_tests { ($T:ty) => { - #[test] - fn add_vertex() { - use $crate::traits::GraphTopologyAddition; - let mut graph = <$T>::new(); - let v = graph.add_vertex(); - assert_ne!(graph.add_vertex(), v, "unexpected duplicate vertex"); - } - #[test] fn vertex_count_empty() { use $crate::traits::GraphTopology; @@ -145,16 +137,6 @@ macro_rules! graph_topology_tests { assert_eq!(map[v2], 27, "unexpected value from default map read for new vertex"); } - #[test] - fn add_edge() { - use $crate::traits::GraphTopologyAddition; - let mut graph = <$T>::new(); - let v1 = graph.add_vertex(); - let v2 = graph.add_vertex(); - let e = graph.add_edge(v1, v2); - assert_ne!(graph.add_edge(v1, v2), e, "unexpected duplicate edge"); - } - #[test] fn edge_count_empty() { use $crate::traits::GraphTopology; @@ -908,7 +890,13 @@ macro_rules! graph_topology_tests { ); } } + }; +} +#[doc(hidden)] +#[macro_export] +macro_rules! graph_topology_addition_tests { + ($T:ty) => { #[test] fn reserve_vertices_increases_capacity() { use $crate::traits::GraphTopologyAddition; @@ -992,6 +980,24 @@ macro_rules! graph_topology_tests { "reserve_edges must not change vertex capacity" ); } + + #[test] + fn add_vertex() { + use $crate::traits::GraphTopologyAddition; + let mut graph = <$T>::new(); + let v = graph.add_vertex(); + assert_ne!(graph.add_vertex(), v, "unexpected duplicate vertex"); + } + + #[test] + fn add_edge() { + use $crate::traits::GraphTopologyAddition; + let mut graph = <$T>::new(); + let v1 = graph.add_vertex(); + let v2 = graph.add_vertex(); + let e = graph.add_edge(v1, v2); + assert_ne!(graph.add_edge(v1, v2), e, "unexpected duplicate edge"); + } }; }