From 8cd786fefb80bc9968c8498c80330e196d5f72d8 Mon Sep 17 00:00:00 2001
From: jakubs <jakubs>
Date: Tue, 16 Feb 2016 13:48:52 +0000
Subject: [PATCH] SSDM-3201 add test for NPE

SVN: 35690
---
 .../common/collection/GroupingDAGTest.java    | 20 +++++++++++++++++--
 1 file changed, 18 insertions(+), 2 deletions(-)

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 434caa70937..a97b12192ec 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()
     {
-- 
GitLab