public void EqualsTest() { var graph1 = new UndirectedGraph(); var n1_0 = new Node(0, 0.ToString()); var n1_1 = new Node(1, 1.ToString()); graph1.TryAddNode(n1_0); graph1.TryAddNode(n1_1); var graph2 = new UndirectedGraph(); var n2_0 = new Node(0, 0.ToString()); var n2_1 = new Node(1, 1.ToString()); graph2.TryAddNode(n2_0); graph2.TryAddNode(n2_1); Assert.AreEqual(true, graph1.Equals(graph2)); Assert.AreEqual(true, graph2.Equals(graph1)); graph1.TryAddEdge(n1_0, n1_1); Assert.AreEqual(false, graph1.Equals(graph2)); Assert.AreEqual(false, graph2.Equals(graph1)); graph2.TryAddEdge(n2_0, n2_1); Assert.AreEqual(true, graph1.Equals(graph2)); Assert.AreEqual(true, graph2.Equals(graph1)); var graph3 = new UndirectedGraph(); var n3_0 = new Node(0, 0.ToString()); var n3_1 = new Node(1, 1.ToString()); graph3.TryAddNode(n3_0); }
public void EqualsTest2() { var adjMat1 = new AdjacencyMatrix(new[, ] { { false, true, false, false }, { true, false, true, true }, { false, true, false, false }, { false, true, false, false } }); var graph1 = new UndirectedGraph(adjMat1); var adjMat2 = new AdjacencyMatrix(new[, ] { { false, true, false, true }, { true, false, true, true }, { false, true, false, false }, { true, true, false, false } }); var graph2 = new UndirectedGraph(adjMat2); Assert.AreEqual(false, graph1.Equals(graph2)); var adjMat3 = new AdjacencyMatrix(new[, ] { { false, false, false, true }, { false, false, true, true }, { false, true, false, false }, { true, true, false, false } }); var graph3 = new UndirectedGraph(adjMat3); Assert.AreEqual(false, graph1.Equals(graph3)); var graph4 = new UndirectedGraph(); var graph5 = new UndirectedGraph(); var n0 = new Node(0, 0.ToString()); var n1 = new Node(1, 1.ToString()); var n2 = new Node(2, 2.ToString()); var n3 = new Node(3, 3.ToString()); graph4.TryAddNode(n2); graph4.TryAddNode(n1); graph4.TryAddNode(n0); graph4.TryAddNode(n3); graph5.TryAddNode(n0); graph5.TryAddNode(n1); graph5.TryAddNode(n2); graph5.TryAddNode(n3); Assert.AreEqual(true, graph4.Equals(graph5)); graph4.TryAddEdge(n1, n2); graph4.TryAddEdge(n3, n1); graph4.TryAddEdge(n1, n0); Assert.AreEqual(true, graph1.Equals(graph4)); graph5.TryAddEdge(n0, n1); graph5.TryAddEdge(n2, n1); graph5.TryAddEdge(n1, n3); Assert.AreEqual(true, graph4.Equals(graph5)); }