public void Should_ReturnOneRoot_When_TestFile09AndDivideToConquerIndex200() { var edges = GetDataFromFile(@"TestFile\Test09.txt"); var treeGraphPropagation = new FastestTreeGraphPropagation <Node>(edges, 200); var result = treeGraphPropagation.GetFastOptimisedRoot(); Assert.AreEqual(result[0].RootNode.NodeId, 41078); Assert.AreEqual(result[0].Propagation, 15); }
public void Should_ReturnOneRoot_When_TestFile10() { var edges = GetDataFromFile(@"TestFile\Test10.txt"); var treeGraphPropagation = new FastestTreeGraphPropagation <Node>(edges); var result = treeGraphPropagation.GetFastOptimisedRoot(); Assert.AreEqual(result[0].RootNode.NodeId, 1); Assert.AreEqual(result[0].Propagation, 5); }
public void Should_ReturnTWORoot_When_TreeHasElements() { var edgeList = new List <Tuple <Node, Node> >(); edgeList.Add(new Tuple <Node, Node>(new Node { NodeId = 1 }, new Node { NodeId = 2 })); edgeList.Add(new Tuple <Node, Node>(new Node { NodeId = 4 }, new Node { NodeId = 2 })); edgeList.Add(new Tuple <Node, Node>(new Node { NodeId = 3 }, new Node { NodeId = 2 })); edgeList.Add(new Tuple <Node, Node>(new Node { NodeId = 4 }, new Node { NodeId = 5 })); edgeList.Add(new Tuple <Node, Node>(new Node { NodeId = 4 }, new Node { NodeId = 6 })); edgeList.Add(new Tuple <Node, Node>(new Node { NodeId = 3 }, new Node { NodeId = 8 })); edgeList.Add(new Tuple <Node, Node>(new Node { NodeId = 3 }, new Node { NodeId = 7 })); edgeList.Add(new Tuple <Node, Node>(new Node { NodeId = 9 }, new Node { NodeId = 7 })); var treeGraphPropagation = new FastestTreeGraphPropagation <Node>(edgeList); var result = treeGraphPropagation.GetFastOptimisedRoot(); Assert.AreEqual(result[0].RootNode.NodeId, 3); Assert.AreEqual(result[0].Propagation, 3); Assert.AreEqual(result[1].RootNode.NodeId, 2); Assert.AreEqual(result[1].Propagation, 3); }
public void Should_ReturnEmptyRoot_When_TreeIsEmpty() { var treeGraphPropagation = new FastestTreeGraphPropagation <Node>(null); Assert.IsNull(treeGraphPropagation.GetFastOptimisedRoot()); }