public void Construction() { var graph = new DelegateBidirectionalIncidenceGraph <int, Edge <int> >( GetEmptyGetter <int, Edge <int> >(), GetEmptyGetter <int, Edge <int> >()); AssertGraphProperties(graph); graph = new DelegateBidirectionalIncidenceGraph <int, Edge <int> >( GetEmptyGetter <int, Edge <int> >(), GetEmptyGetter <int, Edge <int> >(), false); AssertGraphProperties(graph, false); #region Local function void AssertGraphProperties <TVertex, TEdge>( DelegateBidirectionalIncidenceGraph <TVertex, TEdge> g, bool parallelEdges = true) where TEdge : IEdge <TVertex> { Assert.IsTrue(g.IsDirected); Assert.AreEqual(parallelEdges, g.AllowParallelEdges); } #endregion }
public void ContainsVertex_Throws() { var graph = new DelegateBidirectionalIncidenceGraph <TestVertex, Edge <TestVertex> >( GetEmptyGetter <TestVertex, Edge <TestVertex> >(), GetEmptyGetter <TestVertex, Edge <TestVertex> >()); ContainsVertex_Throws_Test(graph); }
public void Degree_Throws() { var graph = new DelegateBidirectionalIncidenceGraph <EquatableTestVertex, Edge <EquatableTestVertex> >( GetEmptyGetter <EquatableTestVertex, Edge <EquatableTestVertex> >(), GetEmptyGetter <EquatableTestVertex, Edge <EquatableTestVertex> >()); Degree_Throws_Test(graph); }
public void OutEdge() { var data = new GraphData <int, Edge <int> >(); var graph = new DelegateBidirectionalIncidenceGraph <int, Edge <int> >( data.TryGetEdges, GetEmptyGetter <int, Edge <int> >()); OutEdge_Test(data, graph); }
public void TryGetInEdges() { var data = new GraphData <int, Edge <int> >(); var graph = new DelegateBidirectionalIncidenceGraph <int, Edge <int> >( GetEmptyGetter <int, Edge <int> >(), data.TryGetEdges); TryGetInEdges_Test(data, graph); }
public void Degree() { var data1 = new GraphData <int, Edge <int> >(); var data2 = new GraphData <int, Edge <int> >(); var graph = new DelegateBidirectionalIncidenceGraph <int, Edge <int> >( data1.TryGetEdges, data2.TryGetEdges); Degree_Test(data1, data2, graph); }
public void OutEdge_Throws() { var graph1 = new DelegateBidirectionalIncidenceGraph <TestVertex, Edge <TestVertex> >( GetEmptyGetter <TestVertex, Edge <TestVertex> >(), GetEmptyGetter <TestVertex, Edge <TestVertex> >()); OutEdge_NullThrows_Test(graph1); var data = new GraphData <int, Edge <int> >(); var graph2 = new DelegateBidirectionalIncidenceGraph <int, Edge <int> >( data.TryGetEdges, GetEmptyGetter <int, Edge <int> >()); OutEdge_Throws_Test(data, graph2); }
public void InEdges_Throws() { var data = new GraphData <int, Edge <int> >(); var graph1 = new DelegateBidirectionalIncidenceGraph <int, Edge <int> >( GetEmptyGetter <int, Edge <int> >(), data.TryGetEdges); InEdges_Throws_Test(data, graph1); var graph2 = new DelegateBidirectionalIncidenceGraph <EquatableTestVertex, Edge <EquatableTestVertex> >( GetEmptyGetter <EquatableTestVertex, Edge <EquatableTestVertex> >(), GetEmptyGetter <EquatableTestVertex, Edge <EquatableTestVertex> >()); InEdges_NullThrows_Test(graph2); }