public void EdgeData() { var a = new NumEdgeData { testNum = 3 }; var b = new NumEdgeData { testNum = 4 }; var c = new NumEdgeData { testNum = 5 }; var myGraph = new DirectedWeightedMultiGraph <int, NumEdgeData>(); myGraph.AddNodes(1, 2, 3); myGraph.AddEdges( (1, 2, 4, a), (1, 2, 3, b), (2, 3, 5, c) ); myGraph.EdgeIDs(1, 2).Select(id => myGraph.EdgeData(id)).Should().Contain(a); myGraph.EdgeIDs(1, 2).Select(id => myGraph.EdgeData(id)).Should().Contain(b); myGraph.EdgeIDs(2, 3).Select(id => myGraph.EdgeData(id)).Should().Contain(c); myGraph.Invoking(x => x.EdgeData(new System.Guid())).Should().Throw <System.ArgumentException>(); }
public void AddEdges() { var a = new NumEdgeData { testNum = 1 }; var b = new NumEdgeData { testNum = 2 }; var c = new NumEdgeData { testNum = 3 }; var d = new NumEdgeData { testNum = 4 }; var myGraph = new DirectedWeightedGraph <int, NumEdgeData>(); myGraph.AddNodes(1, 2, 3, 4); myGraph.AddEdges( (1, 2, 5, a), (2, 3, 6, b), (2, 4, 7, c), (3, 4, 8, d) ); myGraph.Neighbors(1).Should().Contain(2); myGraph.Neighbors(2).Should().Contain(3); myGraph.Neighbors(2).Should().Contain(4); myGraph.Neighbors(3).Should().Contain(4); myGraph.Neighbors(1).Should().NotContain(4); myGraph.Weight(1, 2).Should().Be(5); myGraph.Weight(2, 3).Should().Be(6); myGraph.Weight(2, 4).Should().Be(7); myGraph.Weight(3, 4).Should().Be(8); myGraph.EdgeData(1, 2).Should().Be(a); myGraph.EdgeData(2, 3).Should().Be(b); myGraph.EdgeData(2, 4).Should().Be(c); myGraph.EdgeData(3, 4).Should().Be(d); myGraph.Invoking(x => x.AddEdge(2, 4, 9, d)).Should().Throw <ArgumentException>(); }
public void EdgeData() { var a = new NumEdgeData { testNum = 3 }; var b = new NumEdgeData { testNum = 5 }; var myGraph = new DirectedWeightedGraph <int, NumEdgeData>(); myGraph.AddNodes(1, 2, 3); myGraph.AddEdges( (1, 2, 4, a), (2, 3, 5, b) ); myGraph.EdgeData(1, 2).Should().Be(a); myGraph.EdgeData(2, 3).Should().Be(b); myGraph.Invoking(x => x.EdgeData(2, 4)).Should().Throw <ArgumentException>(); }