public void GetEdgeCount_With_Ignore_Direction_Param_Throws_When_Invalid_Type_Passed_In_For_Dest_Node() { var net = new BasicAdjList(Guid.NewGuid()); INode nodeA = net.CreateNode(); INode nodeB = new DummyBasicNode(); var ex = Assert.Throws<ArgumentException>(() => net.GetEdgeCount(nodeA, nodeB, true)); }
public void GetEdgeCount_With_Ignore_Direction_Param_Throws_When_NullPassed_In_For_Source_Node() { var net = new BasicAdjList(Guid.NewGuid()); INode nodeA = null; INode nodeB = net.CreateNode(); var ex = Assert.Throws<ArgumentNullException>(() => net.GetEdgeCount(nodeA, nodeB, true)); }
public void GetEdgeCount_For_NodeB_to_NodeB(int AtoBEdges, int BtoAEdges, int AtoAEdges, int BtoBEdges, bool ignoreDirection, int expectedCount) { //Arrange var net = new BasicAdjList(Guid.NewGuid()); INode nodeA = net.CreateNode(); INode nodeB = net.CreateNode(); for (int i = 0; i < AtoBEdges; i++) { net.CreateEdge(nodeA, nodeB); } for (int i = 0; i < BtoAEdges; i++) { net.CreateEdge(nodeB, nodeA); } for (int i = 0; i < AtoAEdges; i++) { net.CreateEdge(nodeA, nodeA); } for (int i = 0; i < BtoBEdges; i++) { net.CreateEdge(nodeB, nodeB); } int result = net.GetEdgeCount(nodeB, nodeB, ignoreDirection); Assert.Equal(expectedCount, result); }