示例#1
0
 public void SortTopologicallyAsString_returns_dependency_package_before_the_package_itself_regardless_of_addition_order_to_graph()
 {
     Graph graph = new Graph();
     PackageDefinition definitionB = new PackageDefinition("B");
     PackageDefinition definitionA = new PackageDefinition("A:B");
     graph.AddPackageDefinition(definitionB);
     graph.AddPackageDefinition(definitionA);
     string sortedList = graph.SortTopologicallyAsString();
     Assert.AreEqual("B, A", sortedList);
 }
示例#2
0
 public void SortTopologicallyAsString_returns_dependency_package_before_the_package_itself_when_multiple_dependencies_involved()
 {
     Graph graph = new Graph();
     PackageDefinition definitionA = new PackageDefinition("A:B,C,D");
     PackageDefinition definitionB = new PackageDefinition("B:C");
     PackageDefinition definitionC = new PackageDefinition("C");
     PackageDefinition definitionD = new PackageDefinition("D");
     graph.AddPackageDefinition(definitionA);
     graph.AddPackageDefinition(definitionC);
     graph.AddPackageDefinition(definitionB);
     graph.AddPackageDefinition(definitionD);
     string sortedList = graph.SortTopologicallyAsString();
     Assert.AreEqual("C, B, D, A", sortedList);
 }
示例#3
0
 public void SortTopologicallyAsString_returns_the_node_if_it_has_no_dependency_list()
 {
     Graph graph = new Graph();
     PackageDefinition definition = new PackageDefinition("A");
     graph.AddPackageDefinition(definition);
     string sortedList = graph.SortTopologicallyAsString();
     Assert.AreEqual("A", sortedList);
 }