diff --git a/common/sourceTest/java/ch/systemsx/cisd/common/collection/GroupingDAGTest.java b/common/sourceTest/java/ch/systemsx/cisd/common/collection/GroupingDAGTest.java index 434caa70937b45dada976c20b0dc1aa756b10c0a..a97b12192ec32ebca186b16ebdec90f05fe8158e 100644 --- a/common/sourceTest/java/ch/systemsx/cisd/common/collection/GroupingDAGTest.java +++ b/common/sourceTest/java/ch/systemsx/cisd/common/collection/GroupingDAGTest.java @@ -29,7 +29,6 @@ import java.util.Map; import org.testng.AssertJUnit; import org.testng.annotations.Test; -import ch.systemsx.cisd.common.collection.GroupingDAG; import ch.systemsx.cisd.common.exceptions.UserFailureException; /** @@ -62,7 +61,6 @@ public class GroupingDAGTest extends AssertJUnit adjacencyMap.put(childCode, Arrays.asList("CHAIN_" + (i - 1))); } - List<List<String>> groups = sortTopologically(adjacencyMap); assertAllEntitiesPresent(adjacencyMap.keySet(), groups); @@ -81,6 +79,24 @@ public class GroupingDAGTest extends AssertJUnit } } + @Test + public void testIndependentWithOneExtraPair() + { + HashMap<String, Collection<String>> adjacencyMap = + new HashMap<String, Collection<String>>(); + + adjacencyMap.put("A", new ArrayList<String>()); + adjacencyMap.put("B", Arrays.asList("A")); + adjacencyMap.put("C", Arrays.asList("A", "B")); + adjacencyMap.put("D", Arrays.asList("C", "B", "A")); + adjacencyMap.put("E", Arrays.asList("C", "D")); + adjacencyMap.put("X", Arrays.asList("Z")); + + List<List<String>> groups = sortTopologically(adjacencyMap); + + assertEquals("[[E, X], [D, Z], [C], [B], [A]]", groups.toString()); + } + @Test public void testIndependent() {